diff --git a/r8.jar b/r8.jar
index d425ac6..20eb769 100644
--- a/r8.jar
+++ b/r8.jar
Binary files differ
diff --git a/r8.jar.map b/r8.jar.map
index 858319e..d2cfc00 100644
--- a/r8.jar.map
+++ b/r8.jar.map
@@ -1,10 +1,10 @@
 # compiler: R8
-# compiler_version: 3.3.19-dev
+# compiler_version: 3.3.20-dev
 # compiler_hash: engineering
 # common_typos_disable
 # {"id":"com.android.tools.r8.mapping","version":"2.0"}
-# pg_map_id: 3.3.19-dev
-# pg_map_hash: SHA-256 67e75c9430c123b7b85a3301d035722956ac9df5baf0a138d847c1355c176616
+# pg_map_id: 3.3.20-dev
+# pg_map_hash: SHA-256 9c42396756a810932dfec4d127b4774cf195810b51b46deddf114fd6b40ec1f1
 com.android.tools.r8.ApiLevelException -> com.android.tools.r8.internal.i2:
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():10:10 -> <clinit>
@@ -92,7 +92,7 @@
     119:119:void readArchive(com.android.tools.r8.ArchiveProgramResourceProvider$ArchiveEntryConsumer):101 -> a
     120:120:void readArchive(com.android.tools.r8.ArchiveProgramResourceProvider$ArchiveEntryConsumer):101:101 -> a
     124:126:void lambda$getProgramResources$1(java.util.List,java.util.List,com.android.tools.r8.origin.ArchiveEntryOrigin,java.io.InputStream):112:114 -> a
-    127:128:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):188:189 -> a
+    127:128:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):214:215 -> a
     127:128:void lambda$getProgramResources$1(java.util.List,java.util.List,com.android.tools.r8.origin.ArchiveEntryOrigin,java.io.InputStream):114 -> a
     129:131:void lambda$getProgramResources$1(java.util.List,java.util.List,com.android.tools.r8.origin.ArchiveEntryOrigin,java.io.InputStream):115:117 -> a
     132:132:void lambda$getProgramResources$1(java.util.List,java.util.List,com.android.tools.r8.origin.ArchiveEntryOrigin,java.io.InputStream):116:116 -> a
@@ -109,10 +109,10 @@
     25:32:java.util.Collection getProgramResources():130:137 -> getProgramResources
     1:1:boolean includeClassFileEntries(java.lang.String):43:43 -> includeClassFileEntries
     1:1:boolean includeClassFileOrDexEntries(java.lang.String):51:51 -> includeClassFileOrDexEntries
-    2:3:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):188:189 -> includeClassFileOrDexEntries
+    2:3:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):214:215 -> includeClassFileOrDexEntries
     2:3:boolean includeClassFileOrDexEntries(java.lang.String):51 -> includeClassFileOrDexEntries
     1:1:boolean includeDexEntries(java.lang.String):47:47 -> includeDexEntries
-    2:3:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):188:189 -> includeDexEntries
+    2:3:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):214:215 -> includeDexEntries
     2:3:boolean includeDexEntries(java.lang.String):47 -> includeDexEntries
 com.android.tools.r8.ArchiveProgramResourceProvider$ArchiveEntryConsumer -> com.android.tools.r8.ArchiveProgramResourceProvider$a:
     void accept(com.android.tools.r8.origin.ArchiveEntryOrigin,java.io.InputStream) -> a
@@ -820,74 +820,76 @@
     12:17:void run(java.lang.String[]):136:141 -> a
     12:17:void lambda$main$2(java.lang.String[]):153 -> a
     21:22:void runForTesting(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions):158:159 -> a
-    23:28:com.android.tools.r8.graph.AppView readApp(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):173:178 -> a
-    29:29:java.lang.Boolean lambda$run$4(com.android.tools.r8.utils.InternalOptions):195:195 -> a
-    30:32:void lambda$run$5(com.android.tools.r8.graph.analysis.ClassInitializerAssertionEnablingAnalysis,com.android.tools.r8.graph.DexProgramClass):212:214 -> a
-    33:33:void lambda$run$6(java.lang.String):244:244 -> a
-    34:54:com.android.tools.r8.graph.DexApplication rewriteNonDexInputs(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.naming.NamingLens):355:375 -> a
-    55:60:com.android.tools.r8.graph.DexApplication rewriteNonDexInputs(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.naming.NamingLens):372:377 -> a
-    61:61:void com.android.tools.r8.naming.signature.GenericSignatureRewriter.<init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):31:31 -> a
-    61:61:com.android.tools.r8.graph.DexApplication rewriteNonDexInputs(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.naming.NamingLens):377 -> a
-    62:81:com.android.tools.r8.graph.DexApplication rewriteNonDexInputs(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.naming.NamingLens):378:397 -> a
-    82:82:com.android.tools.r8.graph.DexApplication com.android.tools.r8.graph.LazyLoadedDexApplication$Builder.build():270:270 -> a
-    82:82:com.android.tools.r8.graph.DexApplication rewriteNonDexInputs(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.naming.NamingLens):397 -> a
-    83:85:void optimize(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.utils.Timing,java.util.concurrent.ExecutorService):403:405 -> a
+    23:35:com.android.tools.r8.graph.AppView readApp(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):173:185 -> a
+    36:36:com.android.tools.r8.graph.AppInfo lambda$readApp$4(com.android.tools.r8.graph.LazyLoadedDexApplication,com.android.tools.r8.dex.ApplicationReader):184:184 -> a
+    37:37:com.android.tools.r8.graph.AppView lambda$readApp$5(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.ir.desugar.TypeRewriter,com.android.tools.r8.utils.Timing):185:185 -> a
+    38:38:java.lang.Boolean lambda$run$6(com.android.tools.r8.utils.InternalOptions):202:202 -> a
+    39:41:void lambda$run$7(com.android.tools.r8.graph.analysis.ClassInitializerAssertionEnablingAnalysis,com.android.tools.r8.graph.DexProgramClass):225:227 -> a
+    42:42:void lambda$run$8(java.lang.String):257:257 -> a
+    43:63:com.android.tools.r8.graph.DexApplication rewriteNonDexInputs(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.naming.NamingLens):368:388 -> a
+    64:69:com.android.tools.r8.graph.DexApplication rewriteNonDexInputs(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.naming.NamingLens):385:390 -> a
+    70:70:void com.android.tools.r8.naming.signature.GenericSignatureRewriter.<init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):31:31 -> a
+    70:70:com.android.tools.r8.graph.DexApplication rewriteNonDexInputs(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.naming.NamingLens):390 -> a
+    71:90:com.android.tools.r8.graph.DexApplication rewriteNonDexInputs(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.naming.NamingLens):391:410 -> a
+    91:91:com.android.tools.r8.graph.DexApplication com.android.tools.r8.graph.LazyLoadedDexApplication$Builder.build():270:270 -> a
+    91:91:com.android.tools.r8.graph.DexApplication rewriteNonDexInputs(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.naming.NamingLens):410 -> a
+    92:94:void optimize(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.utils.Timing,java.util.concurrent.ExecutorService):416:418 -> a
     1:1:void lambda$run$1(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):125:125 -> b
     1:3:void lambda$runForTesting$3(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):163:165 -> c
-    1:6:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):183:188 -> d
+    1:6:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):190:195 -> d
     7:7:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):0:0 -> d
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":784,"2":785,"3":786}}
-    784:784:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):188:188 -> d
-    785:785:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):188:188 -> d
-    786:786:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):188:188 -> d
-    195:196:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):188:189 -> d
-    197:197:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):0:0 -> d
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":787,"2":788,"3":789}}
-    787:787:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):189:189 -> d
-    788:788:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):189:189 -> d
-    789:789:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):189:189 -> d
-    386:387:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):189:190 -> d
-    388:388:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):0:0 -> d
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":790,"2":791,"3":792}}
-    790:790:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):190:190 -> d
-    791:791:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):190:190 -> d
-    792:792:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):190:190 -> d
-    578:583:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):190:195 -> d
-    584:584:boolean com.android.tools.r8.utils.AssertionUtils.forTesting(com.android.tools.r8.utils.InternalOptions,java.util.function.Supplier):17:17 -> d
-    584:584:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):195 -> d
-    585:587:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):195:197 -> d
-    588:591:void com.android.tools.r8.ir.desugar.desugaredlibrary.DesugaredLibraryAmender.run(com.android.tools.r8.graph.AppView):30:33 -> d
-    588:591:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):198 -> d
-    592:592:void com.android.tools.r8.ir.desugar.desugaredlibrary.DesugaredLibraryAmender.run(com.android.tools.r8.graph.AppView):29:29 -> d
-    592:592:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):198 -> d
-    593:604:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):199:210 -> d
-    605:661:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):209:265 -> d
-    662:665:com.android.tools.r8.naming.NamingLens com.android.tools.r8.naming.PrefixRewritingNamingLens.createPrefixRewritingNamingLens(com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):29:32 -> d
-    662:665:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):265 -> d
-    666:666:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):266:266 -> d
-    667:672:com.android.tools.r8.naming.NamingLens com.android.tools.r8.naming.RecordRewritingNamingLens.createRecordRewritingNamingLens(com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):25:30 -> d
-    667:672:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):266 -> d
-    673:673:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> d
-    673:673:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):268 -> d
-    674:674:void finalizeApplication(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):341:341 -> d
-    674:674:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):269 -> d
-    675:675:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):270:270 -> d
-    676:676:com.android.tools.r8.ClassFileConsumer com.android.tools.r8.utils.InternalOptions.getClassFileConsumer():498:498 -> d
-    676:676:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):271 -> d
-    677:698:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):271:292 -> d
-    699:711:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):286:298 -> d
-    712:716:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):295:299 -> d
-    717:718:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):275:276 -> d
-    719:719:void com.android.tools.r8.naming.signature.GenericSignatureRewriter.<init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):31:31 -> d
-    719:719:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):276 -> d
-    720:752:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):277:309 -> d
-    753:755:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):308:310 -> d
-    756:756:void finalizeApplication(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):341:341 -> d
-    756:756:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):313 -> d
-    757:776:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):315:334 -> d
-    777:777:java.lang.RuntimeException com.android.tools.r8.utils.ExceptionUtils.unwrapExecutionException(java.util.concurrent.ExecutionException):221:221 -> d
-    777:777:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):329 -> d
-    778:783:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):329:334 -> d
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":811,"2":812,"3":813}}
+    811:811:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):195:195 -> d
+    812:812:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):195:195 -> d
+    813:813:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):195:195 -> d
+    202:203:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):195:196 -> d
+    204:204:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):0:0 -> d
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":814,"2":815,"3":816}}
+    814:814:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):196:196 -> d
+    815:815:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):196:196 -> d
+    816:816:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):196:196 -> d
+    400:401:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):196:197 -> d
+    402:402:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):0:0 -> d
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":817,"2":818,"3":819}}
+    817:817:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):197:197 -> d
+    818:818:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):197:197 -> d
+    819:819:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):197:197 -> d
+    599:604:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):197:202 -> d
+    605:605:boolean com.android.tools.r8.utils.AssertionUtils.forTesting(com.android.tools.r8.utils.InternalOptions,java.util.function.Supplier):17:17 -> d
+    605:605:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):202 -> d
+    606:611:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):202:207 -> d
+    612:615:void com.android.tools.r8.ir.desugar.desugaredlibrary.DesugaredLibraryAmender.run(com.android.tools.r8.graph.AppView):30:33 -> d
+    612:615:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):208 -> d
+    616:616:void com.android.tools.r8.ir.desugar.desugaredlibrary.DesugaredLibraryAmender.run(com.android.tools.r8.graph.AppView):29:29 -> d
+    616:616:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):208 -> d
+    617:631:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):209:223 -> d
+    632:688:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):222:278 -> d
+    689:692:com.android.tools.r8.naming.NamingLens com.android.tools.r8.naming.PrefixRewritingNamingLens.createPrefixRewritingNamingLens(com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):29:32 -> d
+    689:692:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):278 -> d
+    693:693:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):279:279 -> d
+    694:699:com.android.tools.r8.naming.NamingLens com.android.tools.r8.naming.RecordRewritingNamingLens.createRecordRewritingNamingLens(com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):25:30 -> d
+    694:699:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):279 -> d
+    700:700:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> d
+    700:700:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):281 -> d
+    701:701:void finalizeApplication(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):354:354 -> d
+    701:701:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):282 -> d
+    702:702:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):283:283 -> d
+    703:703:com.android.tools.r8.ClassFileConsumer com.android.tools.r8.utils.InternalOptions.getClassFileConsumer():498:498 -> d
+    703:703:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):284 -> d
+    704:725:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):284:305 -> d
+    726:738:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):299:311 -> d
+    739:743:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):308:312 -> d
+    744:745:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):288:289 -> d
+    746:746:void com.android.tools.r8.naming.signature.GenericSignatureRewriter.<init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):31:31 -> d
+    746:746:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):289 -> d
+    747:779:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):290:322 -> d
+    780:782:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):321:323 -> d
+    783:783:void finalizeApplication(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):354:354 -> d
+    783:783:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):326 -> d
+    784:803:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):328:347 -> d
+    804:804:java.lang.RuntimeException com.android.tools.r8.utils.ExceptionUtils.unwrapExecutionException(java.util.concurrent.ExecutionException):221:221 -> d
+    804:804:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):342 -> d
+    805:810:void run(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions,java.util.concurrent.ExecutorService):342:347 -> d
     1:4:void main(java.lang.String[]):150:153 -> main
     5:5:void main(java.lang.String[]):151:151 -> main
     1:5:void run(com.android.tools.r8.D8Command):98:102 -> run
@@ -896,11 +898,11 @@
     11:11:void run(com.android.tools.r8.D8Command,java.util.concurrent.ExecutorService):122:122 -> run
 com.android.tools.r8.D8$ConvertedCfFiles -> com.android.tools.r8.k:
     java.util.List resources -> a
-    1:3:void <init>():420:422 -> <init>
-    1:3:void accept(int,com.android.tools.r8.ByteDataView,java.util.Set,com.android.tools.r8.DiagnosticsHandler):428:430 -> accept
-    4:4:void accept(int,com.android.tools.r8.ByteDataView,java.util.Set,com.android.tools.r8.DiagnosticsHandler):429:429 -> accept
-    5:5:void accept(int,com.android.tools.r8.ByteDataView,java.util.Set,com.android.tools.r8.DiagnosticsHandler):428:428 -> accept
-    1:1:java.util.Collection getProgramResources():435:435 -> getProgramResources
+    1:3:void <init>():433:435 -> <init>
+    1:3:void accept(int,com.android.tools.r8.ByteDataView,java.util.Set,com.android.tools.r8.DiagnosticsHandler):441:443 -> accept
+    4:4:void accept(int,com.android.tools.r8.ByteDataView,java.util.Set,com.android.tools.r8.DiagnosticsHandler):442:442 -> accept
+    5:5:void accept(int,com.android.tools.r8.ByteDataView,java.util.Set,com.android.tools.r8.DiagnosticsHandler):441:441 -> accept
+    1:1:java.util.Collection getProgramResources():448:448 -> getProgramResources
 com.android.tools.r8.D8Command -> com.android.tools.r8.D8Command:
     com.android.tools.r8.graph.DexItemFactory factory -> C
     boolean skipDump -> y
@@ -3188,13 +3190,13 @@
     1:3:void <init>(com.android.tools.r8.origin.Origin,java.io.Writer,com.android.tools.r8.StringConsumer):192:194 -> <init>
     1:5:void accept(java.lang.String,com.android.tools.r8.DiagnosticsHandler):199:203 -> accept
     1:5:void finished(com.android.tools.r8.DiagnosticsHandler):209:213 -> finished
-com.android.tools.r8.StringResource -> com.android.tools.r8.internal.dX:
+com.android.tools.r8.StringResource -> com.android.tools.r8.internal.eX:
     java.lang.String getString() -> a
     1:1:com.android.tools.r8.StringResource fromString(java.lang.String,com.android.tools.r8.origin.Origin):26:26 -> a
     2:2:com.android.tools.r8.StringResource fromFile(java.nio.file.Path):37:37 -> a
     3:3:com.android.tools.r8.StringResource com.android.tools.r8.StringResource.fromFile(java.nio.file.Path,java.nio.charset.Charset):49:49 -> a
     3:3:com.android.tools.r8.StringResource fromFile(java.nio.file.Path):37 -> a
-com.android.tools.r8.StringResource$FileResource -> com.android.tools.r8.internal.bX:
+com.android.tools.r8.StringResource$FileResource -> com.android.tools.r8.internal.cX:
     java.nio.charset.Charset charset -> b
     com.android.tools.r8.origin.Origin origin -> c
     java.nio.file.Path file -> a
@@ -3204,7 +3206,7 @@
     2:7:void <init>(java.nio.file.Path,java.nio.charset.Charset):87:92 -> <init>
     1:3:java.lang.String getString():103:105 -> a
     1:1:com.android.tools.r8.origin.Origin getOrigin():97:97 -> getOrigin
-com.android.tools.r8.StringResource$StringContentResource -> com.android.tools.r8.internal.cX:
+com.android.tools.r8.StringResource$StringContentResource -> com.android.tools.r8.internal.dX:
     com.android.tools.r8.origin.Origin origin -> a
     java.lang.String content -> b
     boolean $assertionsDisabled -> c
@@ -3230,7 +3232,7 @@
     25:25:java.lang.String getVersionString():21:21 -> getVersionString
     22:22:java.lang.String getVersionString():21:21 -> getVersionString
     1:1:boolean isDevelopmentVersion():106:106 -> isDevelopmentVersion
-com.android.tools.r8.algorithms.scc.SCC -> com.android.tools.r8.internal.hU:
+com.android.tools.r8.algorithms.scc.SCC -> com.android.tools.r8.internal.iU:
     java.util.Deque unassignedStack -> d
     java.util.Set unassignedSet -> c
     java.util.List components -> f
@@ -3260,19 +3262,16 @@
     3:3:com.android.tools.r8.androidapi.ComputedApiLevel$KnownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.platform():26:26 -> a
     3:3:com.android.tools.r8.androidapi.ComputedApiLevel$KnownApiLevel of(com.android.tools.r8.utils.AndroidApiLevel):31 -> a
     4:4:com.android.tools.r8.androidapi.ComputedApiLevel$KnownApiLevel of(com.android.tools.r8.utils.AndroidApiLevel):33:33 -> a
-    5:6:com.android.tools.r8.androidapi.AndroidApiLevelCompute create(com.android.tools.r8.graph.AppView):48:49 -> a
-    7:7:com.android.tools.r8.androidapi.AndroidApiLevelCompute com.android.tools.r8.androidapi.AndroidApiLevelCompute.noAndroidApiLevelCompute():54:54 -> a
-    7:7:com.android.tools.r8.androidapi.AndroidApiLevelCompute create(com.android.tools.r8.graph.AppView):50 -> a
-    8:9:com.android.tools.r8.androidapi.ComputedApiLevel computeInitialMinApiLevel(com.android.tools.r8.utils.InternalOptions):58:59 -> a
-    10:10:com.android.tools.r8.androidapi.ComputedApiLevel$KnownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.platform():26:26 -> a
-    10:10:com.android.tools.r8.androidapi.ComputedApiLevel computeInitialMinApiLevel(com.android.tools.r8.utils.InternalOptions):59 -> a
-    11:11:com.android.tools.r8.androidapi.ComputedApiLevel computeInitialMinApiLevel(com.android.tools.r8.utils.InternalOptions):60:60 -> a
-    1:2:com.android.tools.r8.androidapi.ComputedApiLevel getPlatformApiLevelOrUnknown(com.android.tools.r8.graph.AppView):64:65 -> b
-    3:3:com.android.tools.r8.androidapi.ComputedApiLevel$KnownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.platform():26:26 -> b
-    3:3:com.android.tools.r8.androidapi.ComputedApiLevel getPlatformApiLevelOrUnknown(com.android.tools.r8.graph.AppView):65 -> b
-    4:4:com.android.tools.r8.androidapi.ComputedApiLevel getPlatformApiLevelOrUnknown(com.android.tools.r8.graph.AppView):67:67 -> b
-    5:5:com.android.tools.r8.androidapi.ComputedApiLevel$UnknownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.unknown():22:22 -> b
-    5:5:com.android.tools.r8.androidapi.ComputedApiLevel getPlatformApiLevelOrUnknown(com.android.tools.r8.graph.AppView):67 -> b
+    5:6:com.android.tools.r8.androidapi.ComputedApiLevel computeInitialMinApiLevel(com.android.tools.r8.utils.InternalOptions):58:59 -> a
+    7:7:com.android.tools.r8.androidapi.ComputedApiLevel$KnownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.platform():26:26 -> a
+    7:7:com.android.tools.r8.androidapi.ComputedApiLevel computeInitialMinApiLevel(com.android.tools.r8.utils.InternalOptions):59 -> a
+    8:8:com.android.tools.r8.androidapi.ComputedApiLevel computeInitialMinApiLevel(com.android.tools.r8.utils.InternalOptions):60:60 -> a
+    9:10:com.android.tools.r8.androidapi.ComputedApiLevel getPlatformApiLevelOrUnknown(com.android.tools.r8.graph.AppView):64:65 -> a
+    11:11:com.android.tools.r8.androidapi.ComputedApiLevel$KnownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.platform():26:26 -> a
+    11:11:com.android.tools.r8.androidapi.ComputedApiLevel getPlatformApiLevelOrUnknown(com.android.tools.r8.graph.AppView):65 -> a
+    12:12:com.android.tools.r8.androidapi.ComputedApiLevel getPlatformApiLevelOrUnknown(com.android.tools.r8.graph.AppView):67:67 -> a
+    13:13:com.android.tools.r8.androidapi.ComputedApiLevel$UnknownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.unknown():22:22 -> a
+    13:13:com.android.tools.r8.androidapi.ComputedApiLevel getPlatformApiLevelOrUnknown(com.android.tools.r8.graph.AppView):67 -> a
 com.android.tools.r8.androidapi.AndroidApiLevelCompute$DefaultAndroidApiLevelCompute -> com.android.tools.r8.internal.S1:
     com.android.tools.r8.androidapi.AndroidApiReferenceLevelCache cache -> b
     com.android.tools.r8.androidapi.ComputedApiLevel minApiLevel -> c
@@ -3407,6 +3406,7 @@
     1:1:void <clinit>():37:37 -> <clinit>
     1:1:void <init>(com.android.tools.r8.graph.AppView):115:115 -> <init>
     2:9:void <init>(com.android.tools.r8.graph.AppView):110:117 -> <init>
+    void lambda$mockMissingLibraryClass$5(com.android.tools.r8.graph.DexProgramClass) -> a
     1:1:com.android.tools.r8.graph.AppView access$000(com.android.tools.r8.androidapi.ApiReferenceStubber):37:37 -> a
     2:2:void access$100(com.android.tools.r8.androidapi.ApiReferenceStubber,com.android.tools.r8.graph.DexType):37:37 -> a
     3:3:void access$200(com.android.tools.r8.androidapi.ApiReferenceStubber,com.android.tools.r8.graph.DexMethod):37:37 -> a
@@ -3417,76 +3417,76 @@
     6:6:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
     6:6:void run(java.util.concurrent.ExecutorService):121 -> a
     7:23:void run(java.util.concurrent.ExecutorService):121:137 -> a
-    24:24:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    24:24:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     24:24:void run(java.util.concurrent.ExecutorService):137 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    25:25:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    25:25:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     25:25:void run(java.util.concurrent.ExecutorService):137 -> a
     26:28:void run(java.util.concurrent.ExecutorService):138:140 -> a
     29:31:void run(java.util.concurrent.ExecutorService):139:141 -> a
-    32:32:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():650:650 -> a
+    32:32:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():670:670 -> a
     32:32:void run(java.util.concurrent.ExecutorService):141 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    33:33:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():650:650 -> a
+    33:33:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():670:670 -> a
     33:33:void run(java.util.concurrent.ExecutorService):141 -> a
     34:37:void run(java.util.concurrent.ExecutorService):142:145 -> a
     38:46:void run(java.util.concurrent.ExecutorService):144:152 -> a
     47:47:void run(java.util.concurrent.ExecutorService):149:149 -> a
     48:52:void lambda$run$0(com.android.tools.r8.graph.DexLibraryClass,java.util.Set):131:131 -> a
-    53:59:void processClass(com.android.tools.r8.graph.DexProgramClass):157:163 -> a
-    60:60:void lambda$processClass$1(com.android.tools.r8.graph.ProgramMethod):165:165 -> a
-    61:65:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):169:173 -> a
-    66:66:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":259,"2":260,"3":261}}
-    259:259:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):173:173 -> a
-    260:260:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.GraphLens.lookupType(com.android.tools.r8.graph.DexType):398:398 -> a
-    260:260:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):173 -> a
-    261:261:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.GraphLens.lookupType(com.android.tools.r8.graph.DexType):398:398 -> a
-    261:261:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):173 -> a
-    240:240:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):174:174 -> a
-    241:241:boolean com.android.tools.r8.graph.DexClass.isLibraryClass():0:0 -> a
-    241:241:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):175 -> a
-    242:243:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):178:179 -> a
-    244:244:com.android.tools.r8.androidapi.ComputedApiLevel$UnknownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.unknown():22:22 -> a
-    244:244:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):179 -> a
-    245:247:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):179:181 -> a
-    248:248:com.android.tools.r8.androidapi.ComputedApiLevel$UnknownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.unknown():22:22 -> a
-    248:248:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):183 -> a
-    249:258:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):182:191 -> a
-    262:267:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):197:202 -> a
-    268:268:boolean com.android.tools.r8.graph.DexClass.isLibraryClass():0:0 -> a
-    268:268:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):206 -> a
-    269:271:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):207:209 -> a
-    272:272:com.android.tools.r8.androidapi.ComputedApiLevel$UnknownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.unknown():22:22 -> a
-    272:272:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):209 -> a
-    273:278:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):208:213 -> a
-    279:283:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):212:216 -> a
-    284:284:java.util.Set lambda$findReferencedLibraryClasses$3(com.android.tools.r8.graph.DexLibraryClass):213:213 -> a
-    285:302:void mockMissingLibraryClass(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode):224:241 -> a
-    303:303:void mockMissingLibraryClass(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode):237:237 -> a
-    304:308:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):244:248 -> a
-    309:309:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):247:247 -> a
-    310:315:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):246:251 -> a
-    316:316:boolean com.android.tools.r8.graph.DexClass.isFinal():673:673 -> a
-    316:316:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):253 -> a
-    317:324:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):254:261 -> a
-    325:325:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):260:260 -> a
-    326:333:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):259:266 -> a
-    334:334:com.android.tools.r8.graph.DexMethod com.android.tools.r8.graph.DexItemFactory.createClassInitializer(com.android.tools.r8.graph.DexType):2397:2397 -> a
-    334:334:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):266 -> a
+    53:53:void lambda$processClass$1(com.android.tools.r8.graph.ProgramMethod):165:165 -> a
+    54:58:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):169:173 -> a
+    59:59:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":252,"2":253,"3":254}}
+    252:252:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):173:173 -> a
+    253:253:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.GraphLens.lookupType(com.android.tools.r8.graph.DexType):398:398 -> a
+    253:253:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):173 -> a
+    254:254:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.GraphLens.lookupType(com.android.tools.r8.graph.DexType):398:398 -> a
+    254:254:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):173 -> a
+    233:233:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):174:174 -> a
+    234:234:boolean com.android.tools.r8.graph.DexClass.isLibraryClass():0:0 -> a
+    234:234:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):175 -> a
+    235:236:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):178:179 -> a
+    237:237:com.android.tools.r8.androidapi.ComputedApiLevel$UnknownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.unknown():22:22 -> a
+    237:237:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):179 -> a
+    238:240:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):179:181 -> a
+    241:241:com.android.tools.r8.androidapi.ComputedApiLevel$UnknownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.unknown():22:22 -> a
+    241:241:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):183 -> a
+    242:251:void findReferencedLibraryMethod(com.android.tools.r8.graph.DexMethod):182:191 -> a
+    255:260:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):197:202 -> a
+    261:261:boolean com.android.tools.r8.graph.DexClass.isLibraryClass():0:0 -> a
+    261:261:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):206 -> a
+    262:264:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):207:209 -> a
+    265:265:com.android.tools.r8.androidapi.ComputedApiLevel$UnknownApiLevel com.android.tools.r8.androidapi.ComputedApiLevel.unknown():22:22 -> a
+    265:265:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):209 -> a
+    266:271:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):208:213 -> a
+    272:276:void findReferencedLibraryClasses(com.android.tools.r8.graph.DexType):212:216 -> a
+    277:277:java.util.Set lambda$findReferencedLibraryClasses$3(com.android.tools.r8.graph.DexLibraryClass):213:213 -> a
+    278:293:void mockMissingLibraryClass(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode):224:239 -> a
+    294:294:void mockMissingLibraryClass(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode):237:237 -> a
+    295:299:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):243:247 -> a
+    300:300:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):246:246 -> a
+    301:306:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):245:250 -> a
+    307:307:boolean com.android.tools.r8.graph.DexClass.isFinal():673:673 -> a
+    307:307:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):252 -> a
+    308:315:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):253:260 -> a
+    316:316:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):259:259 -> a
+    317:324:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):258:265 -> a
+    325:325:com.android.tools.r8.graph.DexMethod com.android.tools.r8.graph.DexItemFactory.createClassInitializer(com.android.tools.r8.graph.DexType):2397:2397 -> a
+    325:325:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):265 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    335:335:com.android.tools.r8.graph.DexMethod com.android.tools.r8.graph.DexItemFactory.createClassInitializer(com.android.tools.r8.graph.DexType):2397:2397 -> a
-    335:335:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):266 -> a
-    336:336:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):265:265 -> a
-    337:337:com.android.tools.r8.graph.MethodAccessFlags com.android.tools.r8.graph.MethodAccessFlags.createForClassInitializer():79:79 -> a
-    337:337:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):267 -> a
-    338:340:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):267:269 -> a
-    341:348:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):263:270 -> a
-    349:350:java.util.List buildLibraryMethodsForProgram(com.android.tools.r8.graph.DexLibraryClass,java.lang.Iterable,java.util.Set):276:277 -> a
-    351:354:void lambda$buildLibraryMethodsForProgram$5(java.util.Set,com.android.tools.r8.graph.DexLibraryClass,java.util.List,com.android.tools.r8.graph.DexEncodedMethod):279:282 -> a
-    355:358:com.android.tools.r8.graph.DexEncodedMethod buildLibraryMethodForProgram(com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.graph.DexEncodedMethod):291:291 -> a
-    361:376:com.android.tools.r8.graph.DexEncodedMethod buildLibraryMethodForProgram(com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.graph.DexEncodedMethod):294:309 -> a
-    1:1:java.util.Set lambda$findReferencedLibraryMethod$2(com.android.tools.r8.graph.DexLibraryClass):190:190 -> b
+    326:326:com.android.tools.r8.graph.DexMethod com.android.tools.r8.graph.DexItemFactory.createClassInitializer(com.android.tools.r8.graph.DexType):2397:2397 -> a
+    326:326:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):265 -> a
+    327:327:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):264:264 -> a
+    328:328:com.android.tools.r8.graph.MethodAccessFlags com.android.tools.r8.graph.MethodAccessFlags.createForClassInitializer():79:79 -> a
+    328:328:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):266 -> a
+    329:331:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):266:268 -> a
+    332:339:void lambda$mockMissingLibraryClass$4(com.android.tools.r8.graph.DexLibraryClass,java.util.Set,com.android.tools.r8.graph.ThrowExceptionCode,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):262:269 -> a
+    340:341:java.util.List buildLibraryMethodsForProgram(com.android.tools.r8.graph.DexLibraryClass,java.lang.Iterable,java.util.Set):276:277 -> a
+    342:345:void lambda$buildLibraryMethodsForProgram$6(java.util.Set,com.android.tools.r8.graph.DexLibraryClass,java.util.List,com.android.tools.r8.graph.DexEncodedMethod):279:282 -> a
+    346:349:com.android.tools.r8.graph.DexEncodedMethod buildLibraryMethodForProgram(com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.graph.DexEncodedMethod):291:291 -> a
+    352:367:com.android.tools.r8.graph.DexEncodedMethod buildLibraryMethodForProgram(com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.graph.DexEncodedMethod):294:309 -> a
+    1:7:void processClass(com.android.tools.r8.graph.DexProgramClass):157:163 -> b
+    8:8:java.util.Set lambda$findReferencedLibraryMethod$2(com.android.tools.r8.graph.DexLibraryClass):190:190 -> b
 com.android.tools.r8.androidapi.ApiReferenceStubber$ReferencesToApiLevelUseRegistry -> com.android.tools.r8.internal.l2:
     com.android.tools.r8.androidapi.ApiReferenceStubber this$0 -> e
     1:2:void <init>(com.android.tools.r8.androidapi.ApiReferenceStubber,com.android.tools.r8.graph.ProgramMethod):41:42 -> <init>
@@ -5546,7 +5546,7 @@
     48:48:java.lang.String toString():45:45 -> toString
     49:49:java.lang.String toString():45:45 -> toString
     46:46:java.lang.String toString():45:45 -> toString
-com.android.tools.r8.cf.LoadStoreHelper -> com.android.tools.r8.internal.DC:
+com.android.tools.r8.cf.LoadStoreHelper -> com.android.tools.r8.internal.EC:
     com.android.tools.r8.graph.AppView appView -> a
     java.util.Map clonableConstants -> d
     boolean $assertionsDisabled -> f
@@ -5704,10 +5704,10 @@
     99:101:void com.android.tools.r8.cf.LoadStoreHelper.add(com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.code.Position,com.android.tools.r8.ir.code.InstructionListIterator):287:289 -> b
     99:101:void storeOutValue(com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.InstructionListIterator):205 -> b
     102:104:void storeOutValue(com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.InstructionListIterator):206:208 -> b
-com.android.tools.r8.cf.LoadStoreHelper$1 -> com.android.tools.r8.internal.BC:
+com.android.tools.r8.cf.LoadStoreHelper$1 -> com.android.tools.r8.internal.CC:
     int[] $SwitchMap$com$android$tools$r8$ir$code$ValueType -> a
     1:1:void <clinit>():64:64 -> <clinit>
-com.android.tools.r8.cf.LoadStoreHelper$PhiMove -> com.android.tools.r8.internal.CC:
+com.android.tools.r8.cf.LoadStoreHelper$PhiMove -> com.android.tools.r8.internal.DC:
     com.android.tools.r8.ir.code.Phi phi -> a
     com.android.tools.r8.ir.code.Value operand -> b
     1:3:void <init>(com.android.tools.r8.ir.code.Phi,com.android.tools.r8.ir.code.Value):235:237 -> <init>
@@ -12921,26 +12921,26 @@
     1:1:int hashCode():228:228 -> hashCode
     1:1:java.lang.String toString():237:237 -> toString
 com.android.tools.r8.com.google.common.base.Function -> com.android.tools.r8.internal.Rl:
-com.android.tools.r8.com.google.common.base.Java8Usage -> com.android.tools.r8.internal.Dv:
+com.android.tools.r8.com.google.common.base.Java8Usage -> com.android.tools.r8.internal.Ev:
     void lambda$performCheck$0() -> a
     1:2:java.lang.String performCheck():39:40 -> b
-com.android.tools.r8.com.google.common.base.JdkPattern -> com.android.tools.r8.internal.Lv:
+com.android.tools.r8.com.google.common.base.JdkPattern -> com.android.tools.r8.internal.Mv:
     java.util.regex.Pattern pattern -> b
     1:2:void <init>(java.util.regex.Pattern):27:28 -> <init>
     1:1:com.android.tools.r8.com.google.common.base.CommonMatcher matcher(java.lang.CharSequence):33:33 -> a
     1:1:java.lang.String toString():48:48 -> toString
-com.android.tools.r8.com.google.common.base.JdkPattern$JdkMatcher -> com.android.tools.r8.internal.Kv:
+com.android.tools.r8.com.google.common.base.JdkPattern$JdkMatcher -> com.android.tools.r8.internal.Lv:
     java.util.regex.Matcher matcher -> a
     1:1:void com.android.tools.r8.com.google.common.base.CommonMatcher.<init>():25:25 -> <init>
     1:1:void <init>(java.util.regex.Matcher):54 -> <init>
     2:2:void <init>(java.util.regex.Matcher):55:55 -> <init>
-com.android.tools.r8.com.google.common.base.Objects -> com.android.tools.r8.internal.BK:
+com.android.tools.r8.com.google.common.base.Objects -> com.android.tools.r8.internal.CK:
     1:1:boolean equal(java.lang.Object,java.lang.Object):52:52 -> a
-com.android.tools.r8.com.google.common.base.Optional -> com.android.tools.r8.internal.UK:
+com.android.tools.r8.com.google.common.base.Optional -> com.android.tools.r8.internal.VK:
     1:1:void <init>():161:161 -> <init>
     java.lang.Object or(java.lang.Object) -> a
     1:1:com.android.tools.r8.com.google.common.base.Optional absent():93:93 -> a
-com.android.tools.r8.com.google.common.base.Platform -> com.android.tools.r8.internal.eM:
+com.android.tools.r8.com.google.common.base.Platform -> com.android.tools.r8.internal.fM:
     com.android.tools.r8.com.google.common.base.PatternCompiler patternCompiler -> a
     1:1:void <clinit>():33:33 -> <clinit>
     2:2:com.android.tools.r8.com.google.common.base.PatternCompiler com.android.tools.r8.com.google.common.base.Platform.loadPatternCompiler():91:91 -> <clinit>
@@ -12949,10 +12949,10 @@
     1:2:com.android.tools.r8.com.google.common.base.CommonPattern compilePattern(java.lang.String):82:83 -> a
     3:3:com.android.tools.r8.com.google.common.base.CommonPattern com.android.tools.r8.com.google.common.base.Platform$JdkPatternCompiler.compile(java.lang.String):101:101 -> a
     3:3:com.android.tools.r8.com.google.common.base.CommonPattern compilePattern(java.lang.String):83 -> a
-com.android.tools.r8.com.google.common.base.Platform$JdkPatternCompiler -> com.android.tools.r8.internal.cM:
+com.android.tools.r8.com.google.common.base.Platform$JdkPatternCompiler -> com.android.tools.r8.internal.dM:
     1:1:void <init>():98:98 -> <init>
     2:2:void <init>(com.android.tools.r8.com.google.common.base.Platform$1):98:98 -> <init>
-com.android.tools.r8.com.google.common.base.Preconditions -> com.android.tools.r8.internal.rM:
+com.android.tools.r8.com.google.common.base.Preconditions -> com.android.tools.r8.internal.sM:
     int $r8$clinit -> a
     1:9:void <clinit>():1439:1447 -> <clinit>
     1:1:void checkArgument(boolean):130:130 -> a
@@ -12988,9 +12988,9 @@
     2:2:int checkPositionIndex(int,int):1374:1374 -> b
     3:3:int com.android.tools.r8.com.google.common.base.Preconditions.checkPositionIndex(int,int,java.lang.String):1392:1392 -> b
     3:3:int checkPositionIndex(int,int):1374 -> b
-com.android.tools.r8.com.google.common.base.Predicate -> com.android.tools.r8.internal.sM:
+com.android.tools.r8.com.google.common.base.Predicate -> com.android.tools.r8.internal.tM:
     1:1:boolean test(java.lang.Object):79:79 -> test
-com.android.tools.r8.com.google.common.base.Predicates -> com.android.tools.r8.internal.CM:
+com.android.tools.r8.com.google.common.base.Predicates -> com.android.tools.r8.internal.DM:
     1:1:com.android.tools.r8.com.google.common.base.Predicate alwaysFalse():57:57 -> a
     2:2:com.android.tools.r8.com.google.common.base.Predicate not(com.android.tools.r8.com.google.common.base.Predicate):83:83 -> a
     3:3:com.android.tools.r8.com.google.common.base.Predicate or(com.android.tools.r8.com.google.common.base.Predicate,com.android.tools.r8.com.google.common.base.Predicate):147:147 -> a
@@ -13000,14 +13000,14 @@
     5:5:com.android.tools.r8.com.google.common.base.Predicate or(com.android.tools.r8.com.google.common.base.Predicate,com.android.tools.r8.com.google.common.base.Predicate):147 -> a
     6:6:com.android.tools.r8.com.google.common.base.Predicate or(com.android.tools.r8.com.google.common.base.Predicate,com.android.tools.r8.com.google.common.base.Predicate):147:147 -> a
     1:1:com.android.tools.r8.com.google.common.base.Predicate alwaysTrue():51:51 -> b
-com.android.tools.r8.com.google.common.base.Predicates$NotPredicate -> com.android.tools.r8.internal.vM:
+com.android.tools.r8.com.google.common.base.Predicates$NotPredicate -> com.android.tools.r8.internal.wM:
     com.android.tools.r8.com.google.common.base.Predicate predicate -> b
     1:2:void <init>(com.android.tools.r8.com.google.common.base.Predicate):310:311 -> <init>
     1:1:boolean apply(java.lang.Object):316:316 -> apply
     1:3:boolean equals(java.lang.Object):326:328 -> equals
     1:1:int hashCode():321:321 -> hashCode
     1:1:java.lang.String toString():335:335 -> toString
-com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate -> com.android.tools.r8.internal.AM:
+com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate -> com.android.tools.r8.internal.BM:
     com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate IS_NULL -> d
     com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate NOT_NULL -> e
     com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate ALWAYS_TRUE -> b
@@ -13015,19 +13015,19 @@
     1:37:void <clinit>():252:288 -> <clinit>
     1:1:void <init>(java.lang.String,int):250:250 -> <init>
     2:2:void <init>(java.lang.String,int,com.android.tools.r8.com.google.common.base.Predicates$1):250:250 -> <init>
-com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate$1 -> com.android.tools.r8.internal.wM:
+com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate$1 -> com.android.tools.r8.internal.xM:
     1:1:void <init>(java.lang.String,int):252:252 -> <init>
     1:1:java.lang.String toString():260:260 -> toString
-com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate$2 -> com.android.tools.r8.internal.xM:
+com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate$2 -> com.android.tools.r8.internal.yM:
     1:1:void <init>(java.lang.String,int):264:264 -> <init>
     1:1:java.lang.String toString():272:272 -> toString
-com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate$3 -> com.android.tools.r8.internal.yM:
+com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate$3 -> com.android.tools.r8.internal.zM:
     1:1:void <init>(java.lang.String,int):276:276 -> <init>
     1:1:java.lang.String toString():284:284 -> toString
-com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate$4 -> com.android.tools.r8.internal.zM:
+com.android.tools.r8.com.google.common.base.Predicates$ObjectPredicate$4 -> com.android.tools.r8.internal.AM:
     1:1:void <init>(java.lang.String,int):288:288 -> <init>
     1:1:java.lang.String toString():296:296 -> toString
-com.android.tools.r8.com.google.common.base.Predicates$OrPredicate -> com.android.tools.r8.internal.BM:
+com.android.tools.r8.com.google.common.base.Predicates$OrPredicate -> com.android.tools.r8.internal.CM:
     java.util.List components -> b
     1:1:void <init>(java.util.List,com.android.tools.r8.com.google.common.base.Predicates$1):384:384 -> <init>
     2:3:void <init>(java.util.List):387:388 -> <init>
@@ -13038,7 +13038,7 @@
     2:11:java.lang.String com.android.tools.r8.com.google.common.base.Predicates.toStringHelper(java.lang.String,java.lang.Iterable):426:435 -> toString
     2:11:java.lang.String com.android.tools.r8.com.google.common.base.Predicates.access$800(java.lang.String,java.lang.Iterable):42 -> toString
     2:11:java.lang.String toString():419 -> toString
-com.android.tools.r8.com.google.common.base.Splitter -> com.android.tools.r8.internal.OV:
+com.android.tools.r8.com.google.common.base.Splitter -> com.android.tools.r8.internal.PV:
     1:1:com.android.tools.r8.com.google.common.base.Splitter onPattern(java.lang.String):260:260 -> a
     2:2:com.android.tools.r8.com.google.common.base.Splitter com.android.tools.r8.com.google.common.base.Splitter.on(com.android.tools.r8.com.google.common.base.CommonPattern):222:222 -> a
     2:2:com.android.tools.r8.com.google.common.base.Splitter onPattern(java.lang.String):260 -> a
@@ -13051,7 +13051,7 @@
     5:5:void com.android.tools.r8.com.google.common.base.Splitter.<init>(com.android.tools.r8.com.google.common.base.Splitter$Strategy):109 -> a
     5:5:com.android.tools.r8.com.google.common.base.Splitter com.android.tools.r8.com.google.common.base.Splitter.on(com.android.tools.r8.com.google.common.base.CommonPattern):226 -> a
     5:5:com.android.tools.r8.com.google.common.base.Splitter onPattern(java.lang.String):260 -> a
-com.android.tools.r8.com.google.common.base.Strings -> com.android.tools.r8.internal.tX:
+com.android.tools.r8.com.google.common.base.Strings -> com.android.tools.r8.internal.uX:
     1:5:java.lang.String repeat(java.lang.String,int):144:148 -> a
     6:6:void com.android.tools.r8.com.google.common.base.Preconditions.checkArgument(boolean,java.lang.String,int):192:192 -> a
     6:6:java.lang.String repeat(java.lang.String,int):147 -> a
@@ -13061,24 +13061,24 @@
     25:36:java.lang.String com.android.tools.r8.com.google.common.base.Strings.lenientToString(java.lang.Object):302:313 -> a
     25:36:java.lang.String lenientFormat(java.lang.String,java.lang.Object[]):267 -> a
     37:67:java.lang.String lenientFormat(java.lang.String,java.lang.Object[]):267:297 -> a
-com.android.tools.r8.com.google.common.base.Supplier -> com.android.tools.r8.internal.KX:
-com.android.tools.r8.com.google.common.base.Suppliers -> com.android.tools.r8.internal.OX:
+com.android.tools.r8.com.google.common.base.Supplier -> com.android.tools.r8.internal.LX:
+com.android.tools.r8.com.google.common.base.Suppliers -> com.android.tools.r8.internal.PX:
     1:7:com.android.tools.r8.com.google.common.base.Supplier memoize(com.android.tools.r8.com.google.common.base.Supplier):102:108 -> a
-com.android.tools.r8.com.google.common.base.Suppliers$MemoizingSupplier -> com.android.tools.r8.internal.MX:
+com.android.tools.r8.com.google.common.base.Suppliers$MemoizingSupplier -> com.android.tools.r8.internal.NX:
     java.lang.Object value -> d
     com.android.tools.r8.com.google.common.base.Supplier delegate -> b
     boolean initialized -> c
     1:2:void <init>(com.android.tools.r8.com.google.common.base.Supplier):119:120 -> <init>
     1:11:java.lang.Object get():126:136 -> get
     1:1:java.lang.String toString():142:142 -> toString
-com.android.tools.r8.com.google.common.base.Suppliers$NonSerializableMemoizingSupplier -> com.android.tools.r8.internal.NX:
+com.android.tools.r8.com.google.common.base.Suppliers$NonSerializableMemoizingSupplier -> com.android.tools.r8.internal.OX:
     java.lang.Object value -> d
     com.android.tools.r8.com.google.common.base.Supplier delegate -> b
     boolean initialized -> c
     1:2:void <init>(com.android.tools.r8.com.google.common.base.Supplier):157:158 -> <init>
     1:13:java.lang.Object get():164:176 -> get
     1:3:java.lang.String toString():181:183 -> toString
-com.android.tools.r8.com.google.common.base.Throwables -> com.android.tools.r8.internal.tY:
+com.android.tools.r8.com.google.common.base.Throwables -> com.android.tools.r8.internal.uY:
     java.lang.Object jla -> a
     int $r8$clinit -> b
     1:3:java.lang.Object com.android.tools.r8.com.google.common.base.Throwables.getJLA():480:482 -> <clinit>
@@ -15446,7 +15446,7 @@
     1:1:java.lang.Object get(int):60:60 -> get
     1:1:com.android.tools.r8.com.google.common.collect.ImmutableCollection delegateCollection():75:75 -> j
     1:1:int size():70:70 -> size
-com.android.tools.r8.com.google.common.collect.Iterables -> com.android.tools.r8.internal.kv:
+com.android.tools.r8.com.google.common.collect.Iterables -> com.android.tools.r8.internal.lv:
     1:2:boolean contains(java.lang.Iterable,java.lang.Object):136:137 -> a
     3:5:boolean com.android.tools.r8.com.google.common.collect.Collections2.safeContains(java.util.Collection,java.lang.Object):101:103 -> a
     3:5:boolean contains(java.lang.Iterable,java.lang.Object):138 -> a
@@ -15509,12 +15509,12 @@
     2:2:java.lang.Object com.android.tools.r8.com.google.common.base.Preconditions.checkNotNull(java.lang.Object):880:880 -> d
     2:2:java.lang.Iterable skip(java.lang.Iterable,int):852 -> d
     3:5:java.lang.Iterable skip(java.lang.Iterable,int):853:855 -> d
-com.android.tools.r8.com.google.common.collect.Iterables$10 -> com.android.tools.r8.internal.fv:
+com.android.tools.r8.com.google.common.collect.Iterables$10 -> com.android.tools.r8.internal.gv:
     1:1:void <init>():1023:1023 -> <init>
     1:1:java.lang.Object apply(java.lang.Object):1023:1023 -> apply
     2:2:java.util.Iterator com.android.tools.r8.com.google.common.collect.Iterables$10.apply(java.lang.Iterable):1026:1026 -> apply
     2:2:java.lang.Object apply(java.lang.Object):1023 -> apply
-com.android.tools.r8.com.google.common.collect.Iterables$4 -> com.android.tools.r8.internal.gv:
+com.android.tools.r8.com.google.common.collect.Iterables$4 -> com.android.tools.r8.internal.hv:
     com.android.tools.r8.com.google.common.base.Predicate val$retainIfTrue -> d
     java.lang.Iterable val$unfiltered -> c
     1:1:void <init>(java.lang.Iterable,com.android.tools.r8.com.google.common.base.Predicate):556:556 -> <init>
@@ -15545,7 +15545,7 @@
     4:4:java.util.Spliterator spliterator():575 -> spliterator
     5:5:java.util.Spliterator com.android.tools.r8.com.google.common.collect.CollectSpliterators.filter(java.util.Spliterator,java.util.function.Predicate):194:194 -> spliterator
     5:5:java.util.Spliterator spliterator():575 -> spliterator
-com.android.tools.r8.com.google.common.collect.Iterables$5 -> com.android.tools.r8.internal.hv:
+com.android.tools.r8.com.google.common.collect.Iterables$5 -> com.android.tools.r8.internal.iv:
     java.lang.Iterable val$fromIterable -> c
     com.android.tools.r8.com.google.common.base.Function val$function -> d
     1:1:void <init>(java.lang.Iterable,com.android.tools.r8.com.google.common.base.Function):695:695 -> <init>
@@ -15563,7 +15563,7 @@
     4:4:java.util.Iterator com.android.tools.r8.com.google.common.collect.Iterators.transform(java.util.Iterator,com.android.tools.r8.com.google.common.base.Function):780:780 -> iterator
     4:4:java.util.Iterator iterator():698 -> iterator
     1:1:java.util.Spliterator spliterator():709:709 -> spliterator
-com.android.tools.r8.com.google.common.collect.Iterables$6 -> com.android.tools.r8.internal.jv:
+com.android.tools.r8.com.google.common.collect.Iterables$6 -> com.android.tools.r8.internal.kv:
     int val$numberToSkip -> d
     java.lang.Iterable val$iterable -> c
     1:1:void <init>(java.lang.Iterable,int):855:855 -> <init>
@@ -15577,7 +15577,7 @@
     11:15:java.util.Iterator iterator():865 -> iterator
     16:16:java.util.Iterator iterator():872:872 -> iterator
     1:6:java.util.Spliterator spliterator():897:902 -> spliterator
-com.android.tools.r8.com.google.common.collect.Iterables$6$1 -> com.android.tools.r8.internal.iv:
+com.android.tools.r8.com.google.common.collect.Iterables$6$1 -> com.android.tools.r8.internal.jv:
     java.util.Iterator val$iterator -> c
     boolean atStart -> b
     1:2:void <init>(com.android.tools.r8.com.google.common.collect.Iterables$6,java.util.Iterator):872:873 -> <init>
@@ -15587,7 +15587,7 @@
     2:2:void com.android.tools.r8.com.google.common.collect.CollectPreconditions.checkRemove(boolean):63:63 -> remove
     2:2:void remove():889 -> remove
     3:3:void remove():890:890 -> remove
-com.android.tools.r8.com.google.common.collect.Iterators -> com.android.tools.r8.internal.yv:
+com.android.tools.r8.com.google.common.collect.Iterators -> com.android.tools.r8.internal.zv:
     1:1:com.android.tools.r8.com.google.common.collect.UnmodifiableListIterator com.android.tools.r8.com.google.common.collect.Iterators.emptyListIterator():88:88 -> a
     1:1:com.android.tools.r8.com.google.common.collect.UnmodifiableIterator emptyIterator():77 -> a
     2:2:boolean addAll(java.util.Collection,java.util.Iterator):352:352 -> a
@@ -15629,35 +15629,35 @@
     33:33:com.android.tools.r8.com.google.common.collect.UnmodifiableIterator forArray(java.lang.Object[]):1001 -> a
     34:34:com.android.tools.r8.com.google.common.collect.UnmodifiableIterator singletonIterator(java.lang.Object):1049:1049 -> a
     1:5:boolean removeAll(java.util.Iterator,java.util.Collection):198:202 -> b
-com.android.tools.r8.com.google.common.collect.Iterators$1 -> com.android.tools.r8.internal.ov:
+com.android.tools.r8.com.google.common.collect.Iterators$1 -> com.android.tools.r8.internal.pv:
     java.util.Iterator val$iterator -> b
     1:1:void <init>(java.util.Iterator):133:133 -> <init>
     1:1:boolean hasNext():136:136 -> hasNext
     1:1:java.lang.Object next():141:141 -> next
-com.android.tools.r8.com.google.common.collect.Iterators$2 -> com.android.tools.r8.internal.pv:
+com.android.tools.r8.com.google.common.collect.Iterators$2 -> com.android.tools.r8.internal.qv:
     java.util.Iterator iterator -> b
     java.lang.Iterable val$iterable -> c
     1:2:void <init>(java.lang.Iterable):391:392 -> <init>
     1:1:boolean hasNext():405:405 -> hasNext
     1:7:java.lang.Object next():410:416 -> next
     1:1:void remove():421:421 -> remove
-com.android.tools.r8.com.google.common.collect.Iterators$3 -> com.android.tools.r8.internal.qv:
+com.android.tools.r8.com.google.common.collect.Iterators$3 -> com.android.tools.r8.internal.rv:
     java.lang.Object[] val$elements -> c
     int index -> b
     1:2:void <init>(java.lang.Object[]):450:451 -> <init>
     1:1:boolean hasNext():455:455 -> hasNext
     1:6:java.lang.Object next():460:465 -> next
     7:7:java.lang.Object next():461:461 -> next
-com.android.tools.r8.com.google.common.collect.Iterators$5 -> com.android.tools.r8.internal.rv:
+com.android.tools.r8.com.google.common.collect.Iterators$5 -> com.android.tools.r8.internal.sv:
     java.util.Iterator val$unfiltered -> d
     com.android.tools.r8.com.google.common.base.Predicate val$retainIfTrue -> e
     1:1:void <init>(java.util.Iterator,com.android.tools.r8.com.google.common.base.Predicate):632:632 -> <init>
     1:7:java.lang.Object computeNext():635:641 -> j
-com.android.tools.r8.com.google.common.collect.Iterators$6 -> com.android.tools.r8.internal.sv:
+com.android.tools.r8.com.google.common.collect.Iterators$6 -> com.android.tools.r8.internal.tv:
     com.android.tools.r8.com.google.common.base.Function val$function -> c
     1:1:void <init>(java.util.Iterator,com.android.tools.r8.com.google.common.base.Function):780:780 -> <init>
     1:1:java.lang.Object transform(java.lang.Object):783:783 -> a
-com.android.tools.r8.com.google.common.collect.Iterators$7 -> com.android.tools.r8.internal.tv:
+com.android.tools.r8.com.google.common.collect.Iterators$7 -> com.android.tools.r8.internal.uv:
     java.util.Iterator val$iterator -> d
     int count -> b
     int val$limitSize -> c
@@ -15666,21 +15666,21 @@
     1:5:java.lang.Object next():917:921 -> next
     6:6:java.lang.Object next():918:918 -> next
     1:1:void remove():926:926 -> remove
-com.android.tools.r8.com.google.common.collect.Iterators$9 -> com.android.tools.r8.internal.uv:
+com.android.tools.r8.com.google.common.collect.Iterators$9 -> com.android.tools.r8.internal.vv:
     java.lang.Object val$value -> c
     boolean done -> b
     1:1:void <init>(java.lang.Object):1049:1049 -> <init>
     1:1:boolean hasNext():1054:1054 -> hasNext
     1:5:java.lang.Object next():1059:1063 -> next
     6:6:java.lang.Object next():1060:1060 -> next
-com.android.tools.r8.com.google.common.collect.Iterators$ArrayItr -> com.android.tools.r8.internal.vv:
+com.android.tools.r8.com.google.common.collect.Iterators$ArrayItr -> com.android.tools.r8.internal.wv:
     java.lang.Object[] array -> d
     com.android.tools.r8.com.google.common.collect.UnmodifiableListIterator EMPTY -> f
     int offset -> e
     1:1:void <clinit>():1026:1026 -> <clinit>
     1:3:void <init>(java.lang.Object[],int,int,int):1032:1034 -> <init>
     1:1:java.lang.Object get(int):1039:1039 -> a
-com.android.tools.r8.com.google.common.collect.Iterators$ConcatenatedIterator -> com.android.tools.r8.internal.wv:
+com.android.tools.r8.com.google.common.collect.Iterators$ConcatenatedIterator -> com.android.tools.r8.internal.xv:
     java.util.Iterator topMetaIterator -> d
     java.util.Iterator iterator -> c
     java.util.Iterator toRemove -> b
@@ -15700,14 +15700,14 @@
     2:2:void com.android.tools.r8.com.google.common.collect.CollectPreconditions.checkRemove(boolean):63:63 -> remove
     2:2:void remove():1372 -> remove
     3:4:void remove():1373:1374 -> remove
-com.android.tools.r8.com.google.common.collect.Iterators$EmptyModifiableIterator -> com.android.tools.r8.internal.xv:
+com.android.tools.r8.com.google.common.collect.Iterators$EmptyModifiableIterator -> com.android.tools.r8.internal.yv:
     com.android.tools.r8.com.google.common.collect.Iterators$EmptyModifiableIterator INSTANCE -> b
     1:1:void <clinit>():96:96 -> <clinit>
     1:1:void <init>(java.lang.String,int):95:95 -> <init>
     1:1:java.lang.Object next():105:105 -> next
     1:1:void com.android.tools.r8.com.google.common.collect.CollectPreconditions.checkRemove(boolean):63:63 -> remove
     1:1:void remove():110 -> remove
-com.android.tools.r8.com.google.common.collect.JdkBackedImmutableBiMap -> com.android.tools.r8.internal.Gv:
+com.android.tools.r8.com.google.common.collect.JdkBackedImmutableBiMap -> com.android.tools.r8.internal.Hv:
     com.android.tools.r8.com.google.common.collect.JdkBackedImmutableBiMap inverse -> i
     com.android.tools.r8.com.google.common.collect.ImmutableList entries -> f
     java.util.Map forwardDelegate -> g
@@ -15744,7 +15744,7 @@
     boolean isPartialView() -> o
     1:1:int size():65:65 -> size
     1:7:com.android.tools.r8.com.google.common.collect.ImmutableBiMap inverse():72:78 -> u
-com.android.tools.r8.com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries -> com.android.tools.r8.internal.Fv:
+com.android.tools.r8.com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries -> com.android.tools.r8.internal.Gv:
     com.android.tools.r8.com.google.common.collect.JdkBackedImmutableBiMap this$0 -> d
     1:1:void <init>(com.android.tools.r8.com.google.common.collect.JdkBackedImmutableBiMap):84:84 -> <init>
     2:2:void <init>(com.android.tools.r8.com.google.common.collect.JdkBackedImmutableBiMap,com.android.tools.r8.com.google.common.collect.JdkBackedImmutableBiMap$1):84:84 -> <init>
@@ -15755,7 +15755,7 @@
     3:3:java.util.Map$Entry com.android.tools.r8.com.google.common.collect.JdkBackedImmutableBiMap$InverseEntries.get(int):88 -> get
     3:3:java.lang.Object get(int):83 -> get
     1:1:int size():98:98 -> size
-com.android.tools.r8.com.google.common.collect.JdkBackedImmutableMap -> com.android.tools.r8.internal.Hv:
+com.android.tools.r8.com.google.common.collect.JdkBackedImmutableMap -> com.android.tools.r8.internal.Iv:
     com.android.tools.r8.com.google.common.collect.ImmutableList entries -> g
     java.util.Map delegateMap -> f
     1:3:void <init>(java.util.Map,com.android.tools.r8.com.google.common.collect.ImmutableList):53:55 -> <init>
@@ -15780,7 +15780,7 @@
     1:1:com.android.tools.r8.com.google.common.collect.ImmutableCollection createValues():86:86 -> m
     boolean isPartialView() -> o
     1:1:int size():60:60 -> size
-com.android.tools.r8.com.google.common.collect.JdkBackedImmutableMultiset -> com.android.tools.r8.internal.Iv:
+com.android.tools.r8.com.google.common.collect.JdkBackedImmutableMultiset -> com.android.tools.r8.internal.Jv:
     com.android.tools.r8.com.google.common.collect.ImmutableSet elementSet -> i
     long size -> h
     com.android.tools.r8.com.google.common.collect.ImmutableList entries -> g
@@ -15801,7 +15801,7 @@
     1:2:com.android.tools.r8.com.google.common.collect.ImmutableSet elementSet():72:73 -> h
     3:3:com.android.tools.r8.com.google.common.collect.Multiset$Entry getEntry(int):78:78 -> h
     1:1:int size():88:88 -> size
-com.android.tools.r8.com.google.common.collect.JdkBackedImmutableSet -> com.android.tools.r8.internal.Jv:
+com.android.tools.r8.com.google.common.collect.JdkBackedImmutableSet -> com.android.tools.r8.internal.Kv:
     java.util.Set delegate -> e
     com.android.tools.r8.com.google.common.collect.ImmutableList delegateList -> f
     1:3:void <init>(java.util.Set,com.android.tools.r8.com.google.common.collect.ImmutableList):33:35 -> <init>
@@ -15809,7 +15809,7 @@
     boolean isPartialView() -> e
     1:1:java.lang.Object get(int):40:40 -> get
     1:1:int size():55:55 -> size
-com.android.tools.r8.com.google.common.collect.LinkedHashMultiset -> com.android.tools.r8.internal.fC:
+com.android.tools.r8.com.google.common.collect.LinkedHashMultiset -> com.android.tools.r8.internal.gC:
     1:1:void <init>():74:74 -> <init>
     2:2:void <init>(int):78:78 -> <init>
     1:2:int com.android.tools.r8.com.google.common.collect.Multisets.inferDistinctElements(java.lang.Iterable):378:379 -> a
@@ -15822,7 +15822,7 @@
     1:1:boolean isEmpty():41 -> isEmpty
     1:1:java.util.Iterator com.android.tools.r8.com.google.common.collect.AbstractMapBasedMultiset.iterator():185:185 -> iterator
     1:1:java.util.Iterator iterator():41 -> iterator
-com.android.tools.r8.com.google.common.collect.Lists -> com.android.tools.r8.internal.tC:
+com.android.tools.r8.com.google.common.collect.Lists -> com.android.tools.r8.internal.uC:
     1:1:java.util.ArrayList newArrayList(java.lang.Object[]):103:103 -> a
     2:2:java.lang.Object com.android.tools.r8.com.google.common.base.Preconditions.checkNotNull(java.lang.Object):880:880 -> a
     2:2:java.util.ArrayList newArrayList(java.lang.Object[]):103 -> a
@@ -15846,9 +15846,9 @@
     27:44:boolean equalsImpl(java.util.List,java.lang.Object):969:986 -> a
     45:55:boolean com.android.tools.r8.com.google.common.collect.Iterators.elementsEqual(java.util.Iterator,java.util.Iterator):263:273 -> a
     45:55:boolean equalsImpl(java.util.List,java.lang.Object):986 -> a
-com.android.tools.r8.com.google.common.collect.Lists$RandomAccessReverseList -> com.android.tools.r8.internal.qC:
+com.android.tools.r8.com.google.common.collect.Lists$RandomAccessReverseList -> com.android.tools.r8.internal.rC:
     1:1:void <init>(java.util.List):947:947 -> <init>
-com.android.tools.r8.com.google.common.collect.Lists$ReverseList -> com.android.tools.r8.internal.sC:
+com.android.tools.r8.com.google.common.collect.Lists$ReverseList -> com.android.tools.r8.internal.tC:
     java.util.List forwardList -> b
     1:2:void <init>(java.util.List):810:811 -> <init>
     1:1:java.util.List getForwardList():815:815 -> a
@@ -15913,7 +15913,7 @@
     7:7:int com.android.tools.r8.com.google.common.collect.Lists$ReverseList.reversePosition(int):826:826 -> subList
     7:7:java.util.List subList(int,int):868 -> subList
     8:8:java.util.List subList(int,int):868:868 -> subList
-com.android.tools.r8.com.google.common.collect.Lists$ReverseList$1 -> com.android.tools.r8.internal.rC:
+com.android.tools.r8.com.google.common.collect.Lists$ReverseList$1 -> com.android.tools.r8.internal.sC:
     java.util.ListIterator val$forwardIterator -> c
     com.android.tools.r8.com.google.common.collect.Lists$ReverseList this$0 -> d
     boolean canRemoveOrSet -> b
@@ -15938,7 +15938,7 @@
     1:2:void set(java.lang.Object):938:939 -> set
     3:3:void com.android.tools.r8.com.google.common.base.Preconditions.checkState(boolean):494:494 -> set
     3:3:void set(java.lang.Object):938 -> set
-com.android.tools.r8.com.google.common.collect.Maps -> com.android.tools.r8.internal.SD:
+com.android.tools.r8.com.google.common.collect.Maps -> com.android.tools.r8.internal.TD:
     1:1:java.util.HashMap newHashMap():226:226 -> a
     2:2:int capacity(int):268:268 -> a
     3:3:java.lang.Object safeGet(java.util.Map,java.lang.Object):3513:3513 -> a
@@ -15948,22 +15948,22 @@
     1:1:java.util.HashMap newHashMapWithExpectedSize(int):259:259 -> b
     2:2:java.util.IdentityHashMap newIdentityHashMap():431:431 -> b
     1:1:java.util.LinkedHashMap newLinkedHashMapWithExpectedSize(int):325:325 -> c
-com.android.tools.r8.com.google.common.collect.Maps$1 -> com.android.tools.r8.internal.GD:
+com.android.tools.r8.com.google.common.collect.Maps$1 -> com.android.tools.r8.internal.HD:
     1:1:void <init>(java.util.Iterator):117:117 -> <init>
     1:1:java.lang.Object transform(java.lang.Object):117:117 -> a
     2:2:java.lang.Object com.android.tools.r8.com.google.common.collect.Maps$1.transform(java.util.Map$Entry):120:120 -> a
     2:2:java.lang.Object transform(java.lang.Object):117 -> a
-com.android.tools.r8.com.google.common.collect.Maps$2 -> com.android.tools.r8.internal.HD:
+com.android.tools.r8.com.google.common.collect.Maps$2 -> com.android.tools.r8.internal.ID:
     1:1:void <init>(java.util.Iterator):126:126 -> <init>
     1:1:java.lang.Object transform(java.lang.Object):126:126 -> a
     2:2:java.lang.Object com.android.tools.r8.com.google.common.collect.Maps$2.transform(java.util.Map$Entry):129:129 -> a
     2:2:java.lang.Object transform(java.lang.Object):126 -> a
-com.android.tools.r8.com.google.common.collect.Maps$7 -> com.android.tools.r8.internal.ID:
+com.android.tools.r8.com.google.common.collect.Maps$7 -> com.android.tools.r8.internal.JD:
     java.util.Map$Entry val$entry -> b
     1:1:void <init>(java.util.Map$Entry):1346:1346 -> <init>
     1:1:java.lang.Object getKey():1349:1349 -> getKey
     1:1:java.lang.Object getValue():1354:1354 -> getValue
-com.android.tools.r8.com.google.common.collect.Maps$8 -> com.android.tools.r8.internal.JD:
+com.android.tools.r8.com.google.common.collect.Maps$8 -> com.android.tools.r8.internal.KD:
     java.util.Iterator val$entryIterator -> b
     1:1:void <init>(java.util.Iterator):1361:1361 -> <init>
     1:1:boolean hasNext():1364:1364 -> hasNext
@@ -15979,23 +15979,23 @@
     4:4:java.util.Map$Entry com.android.tools.r8.com.google.common.collect.Maps.unmodifiableEntry(java.util.Map$Entry):1346:1346 -> next
     4:4:java.util.Map$Entry com.android.tools.r8.com.google.common.collect.Maps$8.next():1369 -> next
     4:4:java.lang.Object next():1361 -> next
-com.android.tools.r8.com.google.common.collect.Maps$EntryFunction -> com.android.tools.r8.internal.MD:
+com.android.tools.r8.com.google.common.collect.Maps$EntryFunction -> com.android.tools.r8.internal.ND:
     com.android.tools.r8.com.google.common.collect.Maps$EntryFunction VALUE -> c
     com.android.tools.r8.com.google.common.collect.Maps$EntryFunction KEY -> b
     1:7:void <clinit>():92:98 -> <clinit>
     1:1:void <init>(java.lang.String,int):91:91 -> <init>
     2:2:void <init>(java.lang.String,int,com.android.tools.r8.com.google.common.collect.Maps$1):91:91 -> <init>
-com.android.tools.r8.com.google.common.collect.Maps$EntryFunction$1 -> com.android.tools.r8.internal.KD:
+com.android.tools.r8.com.google.common.collect.Maps$EntryFunction$1 -> com.android.tools.r8.internal.LD:
     1:1:void <init>(java.lang.String,int):92:92 -> <init>
     1:1:java.lang.Object apply(java.lang.Object):92:92 -> apply
     2:2:java.lang.Object com.android.tools.r8.com.google.common.collect.Maps$EntryFunction$1.apply(java.util.Map$Entry):95:95 -> apply
     2:2:java.lang.Object apply(java.lang.Object):92 -> apply
-com.android.tools.r8.com.google.common.collect.Maps$EntryFunction$2 -> com.android.tools.r8.internal.LD:
+com.android.tools.r8.com.google.common.collect.Maps$EntryFunction$2 -> com.android.tools.r8.internal.MD:
     1:1:void <init>(java.lang.String,int):98:98 -> <init>
     1:1:java.lang.Object apply(java.lang.Object):98:98 -> apply
     2:2:java.lang.Object com.android.tools.r8.com.google.common.collect.Maps$EntryFunction$2.apply(java.util.Map$Entry):101:101 -> apply
     2:2:java.lang.Object apply(java.lang.Object):98 -> apply
-com.android.tools.r8.com.google.common.collect.Maps$EntrySet -> com.android.tools.r8.internal.ND:
+com.android.tools.r8.com.google.common.collect.Maps$EntrySet -> com.android.tools.r8.internal.OD:
     1:1:void <init>():3900:3900 -> <init>
     java.util.Map map() -> a
     1:1:void clear():3910:3910 -> clear
@@ -16014,21 +16014,21 @@
     2:2:boolean retainAll(java.util.Collection):3951 -> retainAll
     3:13:boolean retainAll(java.util.Collection):3951:3961 -> retainAll
     1:1:int size():3905:3905 -> size
-com.android.tools.r8.com.google.common.collect.Maps$IteratorBasedAbstractMap -> com.android.tools.r8.internal.PD:
+com.android.tools.r8.com.google.common.collect.Maps$IteratorBasedAbstractMap -> com.android.tools.r8.internal.QD:
     1:1:void <init>():3462:3462 -> <init>
     1:1:void forEachEntry(java.util.function.Consumer):3499:3499 -> a
     1:1:java.util.Set entrySet():3475:3475 -> entrySet
     java.util.Iterator entryIterator() -> f
     1:1:java.util.Spliterator entrySpliterator():3470:3470 -> k
     2:2:java.util.Spliterator entrySpliterator():3469:3469 -> k
-com.android.tools.r8.com.google.common.collect.Maps$IteratorBasedAbstractMap$1 -> com.android.tools.r8.internal.OD:
+com.android.tools.r8.com.google.common.collect.Maps$IteratorBasedAbstractMap$1 -> com.android.tools.r8.internal.PD:
     com.android.tools.r8.com.google.common.collect.Maps$IteratorBasedAbstractMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.com.google.common.collect.Maps$IteratorBasedAbstractMap):3475:3475 -> <init>
     1:1:java.util.Map map():3478:3478 -> a
     1:1:void forEach(java.util.function.Consumer):3493:3493 -> forEach
     1:1:java.util.Iterator iterator():3483:3483 -> iterator
     1:1:java.util.Spliterator spliterator():3488:3488 -> spliterator
-com.android.tools.r8.com.google.common.collect.Maps$KeySet -> com.android.tools.r8.internal.QD:
+com.android.tools.r8.com.google.common.collect.Maps$KeySet -> com.android.tools.r8.internal.RD:
     java.util.Map map -> b
     1:2:void <init>(java.util.Map):3629:3630 -> <init>
     1:1:void lambda$forEach$0(java.util.function.Consumer,java.lang.Object,java.lang.Object):3646:3646 -> a
@@ -16048,7 +16048,7 @@
     1:1:java.util.Map com.android.tools.r8.com.google.common.collect.Maps$KeySet.map():3634:3634 -> size
     1:1:int size():3651 -> size
     2:2:int size():3651:3651 -> size
-com.android.tools.r8.com.google.common.collect.Maps$Values -> com.android.tools.r8.internal.RD:
+com.android.tools.r8.com.google.common.collect.Maps$Values -> com.android.tools.r8.internal.SD:
     java.util.Map map -> b
     1:2:void <init>(java.util.Map):3814:3815 -> <init>
     1:1:void lambda$forEach$0(java.util.function.Consumer,java.lang.Object,java.lang.Object):3831:3831 -> a
@@ -16104,12 +16104,12 @@
     1:1:java.util.Map com.android.tools.r8.com.google.common.collect.Maps$Values.map():3819:3819 -> size
     1:1:int size():3881 -> size
     2:2:int size():3881:3881 -> size
-com.android.tools.r8.com.google.common.collect.Multimap -> com.android.tools.r8.internal.eG:
+com.android.tools.r8.com.google.common.collect.Multimap -> com.android.tools.r8.internal.fG:
     boolean containsEntry(java.lang.Object,java.lang.Object) -> a
     java.util.Collection entries() -> a
     java.util.Map asMap() -> b
     com.android.tools.r8.com.google.common.collect.Multiset keys() -> c
-com.android.tools.r8.com.google.common.collect.Multimaps$Keys -> com.android.tools.r8.internal.hG:
+com.android.tools.r8.com.google.common.collect.Multimaps$Keys -> com.android.tools.r8.internal.iG:
     com.android.tools.r8.com.google.common.collect.Multimap multimap -> d
     1:2:void <init>(com.android.tools.r8.com.google.common.collect.Multimap):1664:1665 -> <init>
     1:1:void lambda$forEach$0(java.util.function.Consumer,java.util.Map$Entry):1697:1697 -> a
@@ -16130,17 +16130,17 @@
     1:1:int size():1707:1707 -> size
     1:1:java.util.Spliterator spliterator():1691:1691 -> spliterator
     1:1:java.util.Set elementSet():1759:1759 -> x
-com.android.tools.r8.com.google.common.collect.Multimaps$Keys$1 -> com.android.tools.r8.internal.gG:
+com.android.tools.r8.com.google.common.collect.Multimaps$Keys$1 -> com.android.tools.r8.internal.hG:
     1:1:void <init>(com.android.tools.r8.com.google.common.collect.Multimaps$Keys,java.util.Iterator):1671:1671 -> <init>
     1:1:java.lang.Object transform(java.lang.Object):1671:1671 -> a
     2:2:com.android.tools.r8.com.google.common.collect.Multiset$Entry com.android.tools.r8.com.google.common.collect.Multimaps$Keys$1.transform(java.util.Map$Entry):1674:1674 -> a
     2:2:java.lang.Object transform(java.lang.Object):1671 -> a
-com.android.tools.r8.com.google.common.collect.Multimaps$Keys$1$1 -> com.android.tools.r8.internal.fG:
+com.android.tools.r8.com.google.common.collect.Multimaps$Keys$1$1 -> com.android.tools.r8.internal.gG:
     java.util.Map$Entry val$backingEntry -> b
     1:1:void <init>(com.android.tools.r8.com.google.common.collect.Multimaps$Keys$1,java.util.Map$Entry):1674:1674 -> <init>
     1:1:int getCount():1682:1682 -> a
     1:1:java.lang.Object getElement():1677:1677 -> b
-com.android.tools.r8.com.google.common.collect.Multiset -> com.android.tools.r8.internal.jG:
+com.android.tools.r8.com.google.common.collect.Multiset -> com.android.tools.r8.internal.kG:
     int add(java.lang.Object,int) -> a
     boolean setCount(java.lang.Object,int,int) -> a
     1:1:void forEachEntry(java.util.function.ObjIntConsumer):338:338 -> a
@@ -16158,10 +16158,10 @@
     int count(java.lang.Object) -> g
     1:1:java.util.Spliterator spliterator():473:473 -> spliterator
     java.util.Set elementSet() -> x
-com.android.tools.r8.com.google.common.collect.Multiset$Entry -> com.android.tools.r8.internal.iG:
+com.android.tools.r8.com.google.common.collect.Multiset$Entry -> com.android.tools.r8.internal.jG:
     int getCount() -> a
     java.lang.Object getElement() -> b
-com.android.tools.r8.com.google.common.collect.Multisets -> com.android.tools.r8.internal.oG:
+com.android.tools.r8.com.google.common.collect.Multisets -> com.android.tools.r8.internal.pG:
     1:13:boolean equalsImpl(com.android.tools.r8.com.google.common.collect.Multiset,java.lang.Object):858:870 -> a
     14:14:boolean addAllImpl(com.android.tools.r8.com.google.common.collect.Multiset,java.util.Collection):881:881 -> a
     15:15:java.lang.Object com.android.tools.r8.com.google.common.base.Preconditions.checkNotNull(java.lang.Object):880:880 -> a
@@ -16184,26 +16184,26 @@
     42:42:com.android.tools.r8.com.google.common.collect.ImmutableMultiset copyHighestCountFirst(com.android.tools.r8.com.google.common.collect.Multiset):1131 -> a
     43:43:com.android.tools.r8.com.google.common.collect.ImmutableMultiset com.android.tools.r8.com.google.common.collect.ImmutableMultiset.copyFromEntries(java.util.Collection):219:219 -> a
     43:43:com.android.tools.r8.com.google.common.collect.ImmutableMultiset copyHighestCountFirst(com.android.tools.r8.com.google.common.collect.Multiset):1131 -> a
-com.android.tools.r8.com.google.common.collect.Multisets$AbstractEntry -> com.android.tools.r8.internal.kG:
+com.android.tools.r8.com.google.common.collect.Multisets$AbstractEntry -> com.android.tools.r8.internal.lG:
     1:1:void <init>():814:814 -> <init>
     1:4:boolean equals(java.lang.Object):821:824 -> equals
     1:2:int hashCode():835:836 -> hashCode
     1:3:java.lang.String toString():847:849 -> toString
-com.android.tools.r8.com.google.common.collect.Multisets$DecreasingCount -> com.android.tools.r8.internal.lG:
+com.android.tools.r8.com.google.common.collect.Multisets$DecreasingCount -> com.android.tools.r8.internal.mG:
     com.android.tools.r8.com.google.common.collect.Multisets$DecreasingCount INSTANCE -> b
     1:1:void <clinit>():1135:1135 -> <clinit>
     1:1:void <init>():1134:1134 -> <init>
     1:1:int compare(java.lang.Object,java.lang.Object):1134:1134 -> compare
     2:2:int com.android.tools.r8.com.google.common.collect.Multisets$DecreasingCount.compare(com.android.tools.r8.com.google.common.collect.Multiset$Entry,com.android.tools.r8.com.google.common.collect.Multiset$Entry):1139:1139 -> compare
     2:2:int compare(java.lang.Object,java.lang.Object):1134 -> compare
-com.android.tools.r8.com.google.common.collect.Multisets$ImmutableEntry -> com.android.tools.r8.internal.mG:
+com.android.tools.r8.com.google.common.collect.Multisets$ImmutableEntry -> com.android.tools.r8.internal.nG:
     java.lang.Object element -> b
     int count -> c
     1:4:void <init>(java.lang.Object,int):242:245 -> <init>
     1:1:int getCount():255:255 -> a
     1:1:java.lang.Object getElement():250:250 -> b
     com.android.tools.r8.com.google.common.collect.Multisets$ImmutableEntry nextInBucket() -> c
-com.android.tools.r8.com.google.common.collect.Multisets$MultisetIteratorImpl -> com.android.tools.r8.internal.nG:
+com.android.tools.r8.com.google.common.collect.Multisets$MultisetIteratorImpl -> com.android.tools.r8.internal.oG:
     java.util.Iterator entryIterator -> c
     com.android.tools.r8.com.google.common.collect.Multiset$Entry currentEntry -> d
     int totalCount -> f
@@ -16218,7 +16218,7 @@
     2:2:void com.android.tools.r8.com.google.common.collect.CollectPreconditions.checkRemove(boolean):63:63 -> remove
     2:2:void remove():1085 -> remove
     3:9:void remove():1086:1092 -> remove
-com.android.tools.r8.com.google.common.collect.ObjectArrays -> com.android.tools.r8.internal.WJ:
+com.android.tools.r8.com.google.common.collect.ObjectArrays -> com.android.tools.r8.internal.XJ:
     1:1:java.lang.Object[] newArray(java.lang.Object[],int):59:59 -> a
     2:7:java.lang.Object[] com.android.tools.r8.com.google.common.collect.Platform.newArray(java.lang.Object[],int):84:89 -> a
     2:7:java.lang.Object[] newArray(java.lang.Object[],int):59 -> a
@@ -16228,9 +16228,9 @@
     10:10:java.lang.Object com.android.tools.r8.com.google.common.collect.ObjectArrays.checkElementNotNull(java.lang.Object,int):225:225 -> a
     10:10:java.lang.Object[] com.android.tools.r8.com.google.common.collect.ObjectArrays.checkElementsNotNull(java.lang.Object[],int):215 -> a
     10:10:java.lang.Object[] checkElementsNotNull(java.lang.Object[]):209 -> a
-com.android.tools.r8.com.google.common.collect.Ordering -> com.android.tools.r8.internal.fL:
+com.android.tools.r8.com.google.common.collect.Ordering -> com.android.tools.r8.internal.gL:
     1:1:void <init>():391:391 -> <init>
-com.android.tools.r8.com.google.common.collect.Platform -> com.android.tools.r8.internal.dM:
+com.android.tools.r8.com.google.common.collect.Platform -> com.android.tools.r8.internal.eM:
 # {"id":"sourceFile","fileName":"Platform.java"}
     int $r8$clinit -> a
     1:1:void <clinit>():33:33 -> <clinit>
@@ -16238,7 +16238,7 @@
     2:2:java.lang.Object[] copy(java.lang.Object[],int,int,java.lang.Object[]):95:95 -> a
     1:1:java.util.LinkedHashMap com.android.tools.r8.com.google.common.collect.Maps.newLinkedHashMap():292:292 -> b
     1:1:java.util.Map preservesInsertionOrderOnPutsMap():66 -> b
-com.android.tools.r8.com.google.common.collect.RegularImmutableAsList -> com.android.tools.r8.internal.uS:
+com.android.tools.r8.com.google.common.collect.RegularImmutableAsList -> com.android.tools.r8.internal.vS:
     com.android.tools.r8.com.google.common.collect.ImmutableCollection delegate -> d
     com.android.tools.r8.com.google.common.collect.ImmutableList delegateList -> e
     1:3:void <init>(com.android.tools.r8.com.google.common.collect.ImmutableCollection,com.android.tools.r8.com.google.common.collect.ImmutableList):35:37 -> <init>
@@ -16252,7 +16252,7 @@
     1:1:com.android.tools.r8.com.google.common.collect.ImmutableCollection delegateCollection():46:46 -> j
     1:1:com.android.tools.r8.com.google.common.collect.UnmodifiableListIterator com.android.tools.r8.com.google.common.collect.RegularImmutableAsList.listIterator(int):56:56 -> listIterator
     1:1:java.util.ListIterator listIterator(int):29 -> listIterator
-com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap -> com.android.tools.r8.internal.yS:
+com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap -> com.android.tools.r8.internal.zS:
     com.android.tools.r8.com.google.common.collect.ImmutableBiMap inverse -> k
     com.android.tools.r8.com.google.common.collect.ImmutableMapEntry[] keyTable -> f
     com.android.tools.r8.com.google.common.collect.ImmutableMapEntry[] valueTable -> g
@@ -16330,7 +16330,7 @@
     2:2:com.android.tools.r8.com.google.common.collect.ImmutableBiMap com.android.tools.r8.com.google.common.collect.ImmutableBiMap.of():67:67 -> u
     2:2:com.android.tools.r8.com.google.common.collect.ImmutableBiMap inverse():186 -> u
     3:4:com.android.tools.r8.com.google.common.collect.ImmutableBiMap inverse():188:189 -> u
-com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse -> com.android.tools.r8.internal.xS:
+com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse -> com.android.tools.r8.internal.yS:
     com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap this$0 -> f
     1:1:void <init>(com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap):192:192 -> <init>
     2:2:void <init>(com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap,com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$1):192:192 -> <init>
@@ -16359,7 +16359,7 @@
     3:3:int com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap.size():178:178 -> size
     3:3:int size():196 -> size
     1:1:com.android.tools.r8.com.google.common.collect.ImmutableBiMap inverse():201:201 -> u
-com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet -> com.android.tools.r8.internal.wS:
+com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet -> com.android.tools.r8.internal.xS:
     com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse this$1 -> e
     1:1:void <init>(com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse):236:236 -> <init>
     1:1:com.android.tools.r8.com.google.common.collect.UnmodifiableIterator iterator():254:254 -> f
@@ -16370,7 +16370,7 @@
     1:1:com.android.tools.r8.com.google.common.collect.UnmodifiableIterator com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet.iterator():254:254 -> iterator
     1:1:java.util.Iterator iterator():236 -> iterator
     1:1:com.android.tools.r8.com.google.common.collect.ImmutableMap map():239:239 -> k
-com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1 -> com.android.tools.r8.internal.vS:
+com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1 -> com.android.tools.r8.internal.wS:
     com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet this$2 -> d
     1:1:void <init>(com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet):264:264 -> <init>
     1:2:java.util.Map$Entry com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1.get(int):267:268 -> get
@@ -16379,7 +16379,7 @@
     3:3:java.util.Map$Entry com.android.tools.r8.com.google.common.collect.RegularImmutableBiMap$Inverse$InverseEntrySet$1.get(int):268 -> get
     3:3:java.lang.Object get(int):264 -> get
     1:1:com.android.tools.r8.com.google.common.collect.ImmutableCollection delegateCollection():273:273 -> j
-com.android.tools.r8.com.google.common.collect.RegularImmutableList -> com.android.tools.r8.internal.zS:
+com.android.tools.r8.com.google.common.collect.RegularImmutableList -> com.android.tools.r8.internal.AS:
     java.lang.Object[] array -> d
     com.android.tools.r8.com.google.common.collect.ImmutableList EMPTY -> e
     1:1:void <clinit>():32:32 -> <clinit>
@@ -16401,7 +16401,7 @@
     1:1:java.util.ListIterator listIterator(int):29:29 -> listIterator
     1:1:int size():42:42 -> size
     1:1:java.util.Spliterator spliterator():88:88 -> spliterator
-com.android.tools.r8.com.google.common.collect.RegularImmutableMap -> com.android.tools.r8.internal.CS:
+com.android.tools.r8.com.google.common.collect.RegularImmutableMap -> com.android.tools.r8.internal.DS:
     com.android.tools.r8.com.google.common.collect.ImmutableMap EMPTY -> i
     java.util.Map$Entry[] entries -> f
     com.android.tools.r8.com.google.common.collect.ImmutableMapEntry[] table -> g
@@ -16453,7 +16453,7 @@
     1:1:com.android.tools.r8.com.google.common.collect.ImmutableCollection createValues():257:257 -> m
     boolean isPartialView() -> o
     1:1:int size():191:191 -> size
-com.android.tools.r8.com.google.common.collect.RegularImmutableMap$KeySet -> com.android.tools.r8.internal.AS:
+com.android.tools.r8.com.google.common.collect.RegularImmutableMap$KeySet -> com.android.tools.r8.internal.BS:
     com.android.tools.r8.com.google.common.collect.RegularImmutableMap map -> e
     1:2:void <init>(com.android.tools.r8.com.google.common.collect.RegularImmutableMap):213:214 -> <init>
     1:1:boolean contains(java.lang.Object):224:224 -> contains
@@ -16465,7 +16465,7 @@
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     3:3:int com.android.tools.r8.com.google.common.collect.RegularImmutableMap.size():191:191 -> size
     3:3:int size():234 -> size
-com.android.tools.r8.com.google.common.collect.RegularImmutableMap$Values -> com.android.tools.r8.internal.BS:
+com.android.tools.r8.com.google.common.collect.RegularImmutableMap$Values -> com.android.tools.r8.internal.CS:
     com.android.tools.r8.com.google.common.collect.RegularImmutableMap map -> d
     1:2:void <init>(com.android.tools.r8.com.google.common.collect.RegularImmutableMap):264:265 -> <init>
     boolean isPartialView() -> e
@@ -16476,7 +16476,7 @@
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     3:3:int com.android.tools.r8.com.google.common.collect.RegularImmutableMap.size():191:191 -> size
     3:3:int size():275 -> size
-com.android.tools.r8.com.google.common.collect.RegularImmutableMultiset -> com.android.tools.r8.internal.ES:
+com.android.tools.r8.com.google.common.collect.RegularImmutableMultiset -> com.android.tools.r8.internal.FS:
     com.android.tools.r8.com.google.common.collect.ImmutableSet elementSet -> j
     com.android.tools.r8.com.google.common.collect.Multisets$ImmutableEntry[] entries -> f
     com.android.tools.r8.com.google.common.collect.Multisets$ImmutableEntry[] hashTable -> g
@@ -16506,11 +16506,11 @@
     3:3:com.android.tools.r8.com.google.common.collect.Multiset$Entry getEntry(int):188:188 -> h
     1:1:int hashCode():193:193 -> hashCode
     1:1:int size():177:177 -> size
-com.android.tools.r8.com.google.common.collect.RegularImmutableMultiset$NonTerminalEntry -> com.android.tools.r8.internal.DS:
+com.android.tools.r8.com.google.common.collect.RegularImmutableMultiset$NonTerminalEntry -> com.android.tools.r8.internal.ES:
     com.android.tools.r8.com.google.common.collect.Multisets$ImmutableEntry nextInBucket -> d
     1:2:void <init>(java.lang.Object,int,com.android.tools.r8.com.google.common.collect.Multisets$ImmutableEntry):142:143 -> <init>
     1:1:com.android.tools.r8.com.google.common.collect.Multisets$ImmutableEntry nextInBucket():148:148 -> c
-com.android.tools.r8.com.google.common.collect.RegularImmutableSet -> com.android.tools.r8.internal.FS:
+com.android.tools.r8.com.google.common.collect.RegularImmutableSet -> com.android.tools.r8.internal.GS:
     java.lang.Object[] elements -> e
     int hashCode -> h
     com.android.tools.r8.com.google.common.collect.RegularImmutableSet EMPTY -> i
@@ -16537,7 +16537,7 @@
     1:1:java.util.Iterator iterator():30 -> iterator
     1:1:int size():69:69 -> size
     1:1:java.util.Spliterator spliterator():79:79 -> spliterator
-com.android.tools.r8.com.google.common.collect.Sets -> com.android.tools.r8.internal.GU:
+com.android.tools.r8.com.google.common.collect.Sets -> com.android.tools.r8.internal.HU:
     1:1:java.util.HashSet newHashSetWithExpectedSize(int):255:255 -> a
     2:2:java.util.Set newConcurrentHashSet():269:269 -> a
     3:6:com.android.tools.r8.com.google.common.collect.Sets$SetView difference(java.util.Set,java.util.Set):859:862 -> a
@@ -16574,7 +16574,7 @@
     1:1:java.util.Set newIdentityHashSet():423 -> c
     2:2:java.util.Set newIdentityHashSet():423:423 -> c
     1:1:java.util.LinkedHashSet newLinkedHashSet():305:305 -> d
-com.android.tools.r8.com.google.common.collect.Sets$2 -> com.android.tools.r8.internal.xU:
+com.android.tools.r8.com.google.common.collect.Sets$2 -> com.android.tools.r8.internal.yU:
     java.util.Set val$set2 -> c
     java.util.Set val$set1 -> b
     1:1:void <init>(java.util.Set,java.util.Set):791:791 -> <init>
@@ -16586,12 +16586,12 @@
     1:1:java.util.stream.Stream parallelStream():817:817 -> parallelStream
     1:2:int size():823:824 -> size
     1:1:java.util.stream.Stream stream():812:812 -> stream
-com.android.tools.r8.com.google.common.collect.Sets$2$1 -> com.android.tools.r8.internal.wU:
+com.android.tools.r8.com.google.common.collect.Sets$2$1 -> com.android.tools.r8.internal.xU:
     java.util.Iterator itr -> d
     com.android.tools.r8.com.google.common.collect.Sets$2 this$0 -> e
     1:2:void <init>(com.android.tools.r8.com.google.common.collect.Sets$2):794:795 -> <init>
     1:7:java.lang.Object computeNext():799:805 -> j
-com.android.tools.r8.com.google.common.collect.Sets$3 -> com.android.tools.r8.internal.zU:
+com.android.tools.r8.com.google.common.collect.Sets$3 -> com.android.tools.r8.internal.AU:
     java.util.Set val$set2 -> c
     java.util.Set val$set1 -> b
     1:1:void <init>(java.util.Set,java.util.Set):862:862 -> <init>
@@ -16604,12 +16604,12 @@
     1:1:java.util.stream.Stream parallelStream():888:888 -> parallelStream
     1:2:int size():894:895 -> size
     1:1:java.util.stream.Stream stream():883:883 -> stream
-com.android.tools.r8.com.google.common.collect.Sets$3$1 -> com.android.tools.r8.internal.yU:
+com.android.tools.r8.com.google.common.collect.Sets$3$1 -> com.android.tools.r8.internal.zU:
     java.util.Iterator itr -> d
     com.android.tools.r8.com.google.common.collect.Sets$3 this$0 -> e
     1:2:void <init>(com.android.tools.r8.com.google.common.collect.Sets$3):865:866 -> <init>
     1:7:java.lang.Object computeNext():870:876 -> j
-com.android.tools.r8.com.google.common.collect.Sets$5 -> com.android.tools.r8.internal.DU:
+com.android.tools.r8.com.google.common.collect.Sets$5 -> com.android.tools.r8.internal.EU:
     com.android.tools.r8.com.google.common.collect.ImmutableMap val$index -> c
     int val$size -> b
     1:1:void <init>(int,com.android.tools.r8.com.google.common.collect.ImmutableMap):1618:1618 -> <init>
@@ -16617,32 +16617,32 @@
     1:1:java.util.Iterator iterator():1630:1630 -> iterator
     1:1:int size():1697:1697 -> size
     1:1:java.lang.String toString():1702:1702 -> toString
-com.android.tools.r8.com.google.common.collect.Sets$5$1 -> com.android.tools.r8.internal.CU:
+com.android.tools.r8.com.google.common.collect.Sets$5$1 -> com.android.tools.r8.internal.DU:
     java.util.BitSet bits -> d
     com.android.tools.r8.com.google.common.collect.Sets$5 this$0 -> e
     1:2:void <init>(com.android.tools.r8.com.google.common.collect.Sets$5):1630:1631 -> <init>
     1:29:java.util.Set com.android.tools.r8.com.google.common.collect.Sets$5$1.computeNext():1635:1663 -> j
     1:29:java.lang.Object computeNext():1630 -> j
-com.android.tools.r8.com.google.common.collect.Sets$5$1$1 -> com.android.tools.r8.internal.BU:
+com.android.tools.r8.com.google.common.collect.Sets$5$1$1 -> com.android.tools.r8.internal.CU:
     com.android.tools.r8.com.google.common.collect.Sets$5$1 this$1 -> c
     java.util.BitSet val$copy -> b
     1:1:void <init>(com.android.tools.r8.com.google.common.collect.Sets$5$1,java.util.BitSet):1663:1663 -> <init>
     1:2:boolean contains(java.lang.Object):1666:1667 -> contains
     1:1:java.util.Iterator iterator():1672:1672 -> iterator
     1:1:int size():1688:1688 -> size
-com.android.tools.r8.com.google.common.collect.Sets$5$1$1$1 -> com.android.tools.r8.internal.AU:
+com.android.tools.r8.com.google.common.collect.Sets$5$1$1$1 -> com.android.tools.r8.internal.BU:
     com.android.tools.r8.com.google.common.collect.Sets$5$1$1 this$2 -> e
     int i -> d
     1:2:void <init>(com.android.tools.r8.com.google.common.collect.Sets$5$1$1):1672:1673 -> <init>
     1:5:java.lang.Object computeNext():1677:1681 -> j
-com.android.tools.r8.com.google.common.collect.Sets$ImprovedAbstractSet -> com.android.tools.r8.internal.EU:
+com.android.tools.r8.com.google.common.collect.Sets$ImprovedAbstractSet -> com.android.tools.r8.internal.FU:
     1:1:void <init>():76:76 -> <init>
     1:1:boolean removeAll(java.util.Collection):79:79 -> removeAll
     1:1:boolean retainAll(java.util.Collection):84:84 -> retainAll
     2:2:java.lang.Object com.android.tools.r8.com.google.common.base.Preconditions.checkNotNull(java.lang.Object):880:880 -> retainAll
     2:2:boolean retainAll(java.util.Collection):84 -> retainAll
     3:3:boolean retainAll(java.util.Collection):84:84 -> retainAll
-com.android.tools.r8.com.google.common.collect.Sets$SetView -> com.android.tools.r8.internal.FU:
+com.android.tools.r8.com.google.common.collect.Sets$SetView -> com.android.tools.r8.internal.GU:
     1:1:void <init>(com.android.tools.r8.com.google.common.collect.Sets$1):549:549 -> <init>
     2:2:void <init>():550:550 -> <init>
     1:1:boolean add(java.lang.Object):589:589 -> add
@@ -16652,7 +16652,7 @@
     1:1:boolean removeAll(java.util.Collection):628:628 -> removeAll
     1:1:boolean removeIf(java.util.function.Predicate):641:641 -> removeIf
     1:1:boolean retainAll(java.util.Collection):654:654 -> retainAll
-com.android.tools.r8.com.google.common.collect.SingletonImmutableBiMap -> com.android.tools.r8.internal.tV:
+com.android.tools.r8.com.google.common.collect.SingletonImmutableBiMap -> com.android.tools.r8.internal.uV:
     com.android.tools.r8.com.google.common.collect.ImmutableBiMap lazyInverse -> i
     com.android.tools.r8.com.google.common.collect.ImmutableBiMap inverse -> h
     java.lang.Object singleKey -> f
@@ -16677,7 +16677,7 @@
     2:2:com.android.tools.r8.com.google.common.collect.ImmutableSet createKeySet():91 -> l
     boolean isPartialView() -> o
     1:7:com.android.tools.r8.com.google.common.collect.ImmutableBiMap inverse():99:105 -> u
-com.android.tools.r8.com.google.common.collect.SingletonImmutableList -> com.android.tools.r8.internal.uV:
+com.android.tools.r8.com.google.common.collect.SingletonImmutableList -> com.android.tools.r8.internal.vV:
     java.lang.Object element -> d
     1:2:void <init>(java.lang.Object):37:38 -> <init>
     boolean isPartialView() -> e
@@ -16692,7 +16692,7 @@
     1:1:java.util.Spliterator spliterator():54:54 -> spliterator
     1:1:java.util.List subList(int,int):31:31 -> subList
     1:1:java.lang.String toString():70:70 -> toString
-com.android.tools.r8.com.google.common.collect.SingletonImmutableSet -> com.android.tools.r8.internal.vV:
+com.android.tools.r8.com.google.common.collect.SingletonImmutableSet -> com.android.tools.r8.internal.wV:
     java.lang.Object element -> e
     int cachedHashCode -> f
     1:2:void <init>(java.lang.Object):43:44 -> <init>
@@ -16708,7 +16708,7 @@
     1:3:int hashCode():87:89 -> hashCode
     1:1:boolean isHashCodeFast():96:96 -> i
     1:1:java.lang.String toString():101:101 -> toString
-com.android.tools.r8.com.google.common.collect.Streams -> com.android.tools.r8.internal.QW:
+com.android.tools.r8.com.google.common.collect.Streams -> com.android.tools.r8.internal.RW:
     java.util.Spliterator lambda$concat$0(java.util.Spliterator) -> a
     1:3:java.util.stream.Stream stream(java.lang.Iterable):62:64 -> a
     4:15:java.util.stream.Stream concat(java.util.stream.Stream[]):162:173 -> a
@@ -16732,27 +16732,27 @@
     68:116:java.util.stream.Stream mapWithIndex(java.util.stream.Stream,com.android.tools.r8.com.google.common.collect.Streams$FunctionWithIndex):423:471 -> a
     1:3:void com.android.tools.r8.com.google.common.collect.Streams.closeAll(java.util.stream.BaseStream[]):141:143 -> b
     1:3:void lambda$concat$1(java.util.stream.Stream[]):178 -> b
-com.android.tools.r8.com.google.common.collect.Streams$1 -> com.android.tools.r8.internal.LW:
+com.android.tools.r8.com.google.common.collect.Streams$1 -> com.android.tools.r8.internal.MW:
     java.util.function.BiFunction val$function -> c
     java.util.Iterator val$itrB -> b
     java.util.Iterator val$itrA -> a
     1:1:void <init>(long,int,java.util.Iterator,java.util.Iterator,java.util.function.BiFunction):319:319 -> <init>
     1:2:boolean tryAdvance(java.util.function.Consumer):322:323 -> tryAdvance
-com.android.tools.r8.com.google.common.collect.Streams$1Splitr -> com.android.tools.r8.internal.MW:
+com.android.tools.r8.com.google.common.collect.Streams$1Splitr -> com.android.tools.r8.internal.NW:
     com.android.tools.r8.com.google.common.collect.Streams$FunctionWithIndex val$function -> d
     java.lang.Object holder -> c
     1:2:void <init>(java.util.Spliterator,long,com.android.tools.r8.com.google.common.collect.Streams$FunctionWithIndex):444:445 -> <init>
     1:1:void accept(java.lang.Object):450:450 -> accept
     1:7:boolean tryAdvance(java.util.function.Consumer):455:461 -> tryAdvance
-com.android.tools.r8.com.google.common.collect.Streams$2 -> com.android.tools.r8.internal.NW:
+com.android.tools.r8.com.google.common.collect.Streams$2 -> com.android.tools.r8.internal.OW:
     java.util.Iterator val$fromIterator -> b
     long index -> a
     com.android.tools.r8.com.google.common.collect.Streams$FunctionWithIndex val$function -> c
     1:2:void <init>(long,int,java.util.Iterator,com.android.tools.r8.com.google.common.collect.Streams$FunctionWithIndex):426:427 -> <init>
     1:2:boolean tryAdvance(java.util.function.Consumer):431:432 -> tryAdvance
-com.android.tools.r8.com.google.common.collect.Streams$FunctionWithIndex -> com.android.tools.r8.internal.OW:
+com.android.tools.r8.com.google.common.collect.Streams$FunctionWithIndex -> com.android.tools.r8.internal.PW:
     java.lang.Object apply(java.lang.Object,long) -> a
-com.android.tools.r8.com.google.common.collect.Streams$MapWithIndexSpliterator -> com.android.tools.r8.internal.PW:
+com.android.tools.r8.com.google.common.collect.Streams$MapWithIndexSpliterator -> com.android.tools.r8.internal.QW:
     long index -> b
     java.util.Spliterator fromSpliterator -> a
     1:3:void <init>(java.util.Spliterator,long):732:734 -> <init>
@@ -16893,7 +16893,7 @@
 com.android.tools.r8.com.google.common.hash.Hashing$Sha256Holder -> com.android.tools.r8.internal.Xm:
     com.android.tools.r8.com.google.common.hash.HashFunction SHA_256 -> a
     1:1:void <clinit>():205:205 -> <clinit>
-com.android.tools.r8.com.google.common.hash.MessageDigestHashFunction -> com.android.tools.r8.internal.sE:
+com.android.tools.r8.com.google.common.hash.MessageDigestHashFunction -> com.android.tools.r8.internal.tE:
     java.security.MessageDigest prototype -> b
     int bytes -> c
     java.lang.String toString -> e
@@ -16903,7 +16903,7 @@
     2:4:java.security.MessageDigest getMessageDigest(java.lang.String):82:84 -> a
     5:12:com.android.tools.r8.com.google.common.hash.Hasher newHasher():90:97 -> a
     1:1:java.lang.String toString():77:77 -> toString
-com.android.tools.r8.com.google.common.hash.MessageDigestHashFunction$MessageDigestHasher -> com.android.tools.r8.internal.rE:
+com.android.tools.r8.com.google.common.hash.MessageDigestHashFunction$MessageDigestHasher -> com.android.tools.r8.internal.sE:
     java.security.MessageDigest digest -> b
     int bytes -> c
     boolean done -> d
@@ -16923,7 +16923,7 @@
     3:3:void com.android.tools.r8.com.google.common.hash.MessageDigestHashFunction$MessageDigestHasher.checkNotDone():152:152 -> b
     3:3:void update(byte[],int,int):141 -> b
     4:4:void update(byte[],int,int):142:142 -> b
-com.android.tools.r8.com.google.common.hash.Murmur3_128HashFunction -> com.android.tools.r8.internal.qG:
+com.android.tools.r8.com.google.common.hash.Murmur3_128HashFunction -> com.android.tools.r8.internal.rG:
     com.android.tools.r8.com.google.common.hash.HashFunction MURMUR3_128 -> c
     int seed -> b
     1:3:void <clinit>():45:47 -> <clinit>
@@ -16932,7 +16932,7 @@
     1:3:boolean equals(java.lang.Object):74:76 -> equals
     1:1:int hashCode():83:83 -> hashCode
     1:1:java.lang.String toString():69:69 -> toString
-com.android.tools.r8.com.google.common.hash.Murmur3_128HashFunction$Murmur3_128Hasher -> com.android.tools.r8.internal.pG:
+com.android.tools.r8.com.google.common.hash.Murmur3_128HashFunction$Murmur3_128Hasher -> com.android.tools.r8.internal.qG:
     long h2 -> e
     int length -> f
     long h1 -> d
@@ -17416,7 +17416,7 @@
     2:2:void suppress(java.io.Closeable,java.lang.Throwable,java.lang.Throwable):287 -> a
 com.android.tools.r8.com.google.common.io.Closer$Suppressor -> com.android.tools.r8.internal.tb:
     void suppress(java.io.Closeable,java.lang.Throwable,java.lang.Throwable) -> a
-com.android.tools.r8.com.google.common.math.IntMath -> com.android.tools.r8.internal.Et:
+com.android.tools.r8.com.google.common.math.IntMath -> com.android.tools.r8.internal.Ft:
     int[] biggestBinomials -> a
     1:1:void <clinit>():676:676 -> <clinit>
     boolean isPowerOfTwo(int) -> a
@@ -17448,12 +17448,12 @@
     31:31:int checkedAdd(int,int):456:456 -> b
     32:32:void com.android.tools.r8.com.google.common.math.MathPreconditions.checkNoOverflow(boolean,java.lang.String,int,int):95:95 -> b
     32:32:int checkedAdd(int,int):456 -> b
-com.android.tools.r8.com.google.common.math.IntMath$1 -> com.android.tools.r8.internal.Dt:
+com.android.tools.r8.com.google.common.math.IntMath$1 -> com.android.tools.r8.internal.Et:
     int[] $SwitchMap$java$math$RoundingMode -> a
     1:1:void <clinit>():120:120 -> <clinit>
-com.android.tools.r8.com.google.common.math.MathPreconditions -> com.android.tools.r8.internal.ZD:
+com.android.tools.r8.com.google.common.math.MathPreconditions -> com.android.tools.r8.internal.aE:
     1:1:int checkNonNegative(java.lang.String,int):54:54 -> a
-com.android.tools.r8.com.google.common.primitives.Ints -> com.android.tools.r8.internal.Bu:
+com.android.tools.r8.com.google.common.primitives.Ints -> com.android.tools.r8.internal.Cu:
     int saturatedCast(long) -> a
     1:6:int[] toArray(java.util.Collection):532:537 -> a
     7:7:java.lang.Object com.android.tools.r8.com.google.common.base.Preconditions.checkNotNull(java.lang.Object):880:880 -> a
@@ -17559,7 +17559,7 @@
     10:10:java.lang.Object read(com.android.tools.r8.com.google.gson.stream.JsonReader):967:967 -> a
     11:14:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):973:976 -> a
     15:15:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):974:974 -> a
-com.android.tools.r8.com.google.gson.JsonArray -> com.android.tools.r8.internal.Pv:
+com.android.tools.r8.com.google.gson.JsonArray -> com.android.tools.r8.internal.Qv:
     java.util.List elements -> b
     1:2:void <init>():39:40 -> <init>
     1:1:void add(java.lang.String):85:85 -> a
@@ -17573,7 +17573,7 @@
     1:1:int hashCode():371:371 -> hashCode
     1:1:java.util.Iterator iterator():171:171 -> iterator
     1:1:int size():161:161 -> size
-com.android.tools.r8.com.google.gson.JsonElement -> com.android.tools.r8.internal.Qv:
+com.android.tools.r8.com.google.gson.JsonElement -> com.android.tools.r8.internal.Rv:
     1:1:void <init>():33:33 -> <init>
     1:1:boolean getAsBoolean():152:152 -> a
     1:1:int getAsInt():243:243 -> b
@@ -17589,16 +17589,16 @@
     4:4:void com.android.tools.r8.com.google.gson.internal.Streams.write(com.android.tools.r8.com.google.gson.JsonElement,com.android.tools.r8.com.google.gson.stream.JsonWriter):72:72 -> toString
     4:4:java.lang.String toString():324 -> toString
     5:7:java.lang.String toString():325:327 -> toString
-com.android.tools.r8.com.google.gson.JsonIOException -> com.android.tools.r8.internal.Rv:
+com.android.tools.r8.com.google.gson.JsonIOException -> com.android.tools.r8.internal.Sv:
     1:1:void <init>(java.lang.String):29:29 -> <init>
     2:2:void <init>(java.lang.Throwable):43:43 -> <init>
-com.android.tools.r8.com.google.gson.JsonNull -> com.android.tools.r8.internal.Sv:
+com.android.tools.r8.com.google.gson.JsonNull -> com.android.tools.r8.internal.Tv:
     com.android.tools.r8.com.google.gson.JsonNull INSTANCE -> b
     1:1:void <clinit>():32:32 -> <clinit>
     1:1:void <init>():39:39 -> <init>
     1:1:boolean equals(java.lang.Object):61:61 -> equals
     1:1:int hashCode():53:53 -> hashCode
-com.android.tools.r8.com.google.gson.JsonObject -> com.android.tools.r8.internal.Tv:
+com.android.tools.r8.com.google.gson.JsonObject -> com.android.tools.r8.internal.Uv:
     com.android.tools.r8.com.google.gson.internal.LinkedTreeMap members -> b
     1:2:void <init>():32:33 -> <init>
     1:1:void addProperty(java.lang.String,java.lang.Boolean):0:0 -> a
@@ -17622,11 +17622,11 @@
     1:2:boolean equals(java.lang.Object):196:197 -> equals
     1:1:com.android.tools.r8.com.google.gson.JsonObject getAsJsonObject(java.lang.String):191:191 -> g
     1:1:int hashCode():202:202 -> hashCode
-com.android.tools.r8.com.google.gson.JsonParseException -> com.android.tools.r8.internal.Uv:
+com.android.tools.r8.com.google.gson.JsonParseException -> com.android.tools.r8.internal.Vv:
     1:1:void <init>(java.lang.String):42:42 -> <init>
     2:2:void <init>(java.lang.String,java.lang.Throwable):52:52 -> <init>
     3:3:void <init>(java.lang.Throwable):62:62 -> <init>
-com.android.tools.r8.com.google.gson.JsonParser -> com.android.tools.r8.internal.Vv:
+com.android.tools.r8.com.google.gson.JsonParser -> com.android.tools.r8.internal.Wv:
     1:1:void <init>():34:34 -> <init>
     1:1:com.android.tools.r8.com.google.gson.JsonElement parse(java.lang.String):45:45 -> a
     2:4:com.android.tools.r8.com.google.gson.JsonElement com.android.tools.r8.com.google.gson.JsonParser.parse(java.io.Reader):58:60 -> a
@@ -17654,7 +17654,7 @@
     43:43:com.android.tools.r8.com.google.gson.JsonElement parse(com.android.tools.r8.com.google.gson.stream.JsonReader):84 -> a
     44:44:com.android.tools.r8.com.google.gson.JsonElement parse(com.android.tools.r8.com.google.gson.stream.JsonReader):88:88 -> a
     45:49:com.android.tools.r8.com.google.gson.JsonElement parse(com.android.tools.r8.com.google.gson.stream.JsonReader):86:90 -> a
-com.android.tools.r8.com.google.gson.JsonPrimitive -> com.android.tools.r8.internal.Wv:
+com.android.tools.r8.com.google.gson.JsonPrimitive -> com.android.tools.r8.internal.Xv:
     java.lang.Class[] PRIMITIVE_TYPES -> c
     java.lang.Object value -> b
     1:1:void <clinit>():35:35 -> <clinit>
@@ -17692,7 +17692,7 @@
     1:13:int hashCode():289:301 -> hashCode
     1:1:boolean isNumber():146:146 -> i
     1:1:boolean isString():166:166 -> j
-com.android.tools.r8.com.google.gson.JsonSyntaxException -> com.android.tools.r8.internal.aw:
+com.android.tools.r8.com.google.gson.JsonSyntaxException -> com.android.tools.r8.internal.bw:
     1:1:void <init>(java.lang.String):30:30 -> <init>
     2:2:void <init>(java.lang.String,java.lang.Throwable):34:34 -> <init>
     3:3:void <init>(java.lang.Throwable):45:45 -> <init>
@@ -17708,8 +17708,8 @@
     4:8:java.lang.Object read(com.android.tools.r8.com.google.gson.stream.JsonReader):195:199 -> a
 com.android.tools.r8.com.google.gson.TypeAdapterFactory -> com.android.tools.r8.internal.BZ:
     com.android.tools.r8.com.google.gson.TypeAdapter create(com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken) -> a
-com.android.tools.r8.com.google.gson.annotations.JsonAdapter -> com.android.tools.r8.internal.Nv:
-com.android.tools.r8.com.google.gson.annotations.SerializedName -> com.android.tools.r8.internal.sU:
+com.android.tools.r8.com.google.gson.annotations.JsonAdapter -> com.android.tools.r8.internal.Ov:
+com.android.tools.r8.com.google.gson.annotations.SerializedName -> com.android.tools.r8.internal.tU:
 com.android.tools.r8.com.google.gson.internal.$Gson$Preconditions -> com.android.tools.r8.internal.a:
 # {"id":"sourceFile","fileName":"$Gson$Preconditions.java"}
     1:1:java.lang.Object checkNotNull(java.lang.Object):39:39 -> a
@@ -17933,11 +17933,11 @@
     10:13:com.android.tools.r8.com.google.gson.TypeAdapter com.android.tools.r8.com.google.gson.internal.Excluder$1.delegate():141:144 -> a
     10:13:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):137 -> a
     14:14:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):137:137 -> a
-com.android.tools.r8.com.google.gson.internal.JsonReaderInternalAccess -> com.android.tools.r8.internal.Zv:
+com.android.tools.r8.com.google.gson.internal.JsonReaderInternalAccess -> com.android.tools.r8.internal.aw:
     com.android.tools.r8.com.google.gson.internal.JsonReaderInternalAccess INSTANCE -> a
     1:1:void <init>():25:25 -> <init>
     void promoteNameToValue(com.android.tools.r8.com.google.gson.stream.JsonReader) -> a
-com.android.tools.r8.com.google.gson.internal.LazilyParsedNumber -> com.android.tools.r8.internal.cB:
+com.android.tools.r8.com.google.gson.internal.LazilyParsedNumber -> com.android.tools.r8.internal.dB:
     java.lang.String value -> b
     1:2:void <init>(java.lang.String):30:31 -> <init>
     1:1:double doubleValue():63:63 -> doubleValue
@@ -17947,7 +17947,7 @@
     1:6:int intValue():37:42 -> intValue
     1:3:long longValue():50:52 -> longValue
     1:1:java.lang.String toString():68:68 -> toString
-com.android.tools.r8.com.google.gson.internal.LinkedTreeMap -> com.android.tools.r8.internal.nC:
+com.android.tools.r8.com.google.gson.internal.LinkedTreeMap -> com.android.tools.r8.internal.oC:
     com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node root -> c
     com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node header -> f
     boolean $assertionsDisabled -> j
@@ -17992,12 +17992,12 @@
     2:2:java.lang.Object remove(java.lang.Object):111 -> remove
     3:3:java.lang.Object remove(java.lang.Object):112:112 -> remove
     1:1:int size():78:78 -> size
-com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$1 -> com.android.tools.r8.internal.gC:
+com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$1 -> com.android.tools.r8.internal.hC:
     1:1:void <init>():40:40 -> <init>
     1:1:int compare(java.lang.Object,java.lang.Object):40:40 -> compare
     2:2:int com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$1.compare(java.lang.Comparable,java.lang.Comparable):42:42 -> compare
     2:2:int compare(java.lang.Object,java.lang.Object):40 -> compare
-com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$EntrySet -> com.android.tools.r8.internal.iC:
+com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$EntrySet -> com.android.tools.r8.internal.jC:
     com.android.tools.r8.com.google.gson.internal.LinkedTreeMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.com.google.gson.internal.LinkedTreeMap):560:560 -> <init>
     1:1:void clear():591:591 -> clear
@@ -18026,7 +18026,7 @@
     9:9:boolean remove(java.lang.Object):582 -> remove
     10:10:boolean remove(java.lang.Object):586:586 -> remove
     1:1:int size():562:562 -> size
-com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$EntrySet$1 -> com.android.tools.r8.internal.hC:
+com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$EntrySet$1 -> com.android.tools.r8.internal.iC:
     1:1:void <init>(com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$EntrySet):566:566 -> <init>
     1:9:com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$LinkedTreeMapIterator.nextNode():539:547 -> next
     1:9:java.util.Map$Entry com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$EntrySet$1.next():568 -> next
@@ -18037,7 +18037,7 @@
     11:11:com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$LinkedTreeMapIterator.nextNode():541:541 -> next
     11:11:java.util.Map$Entry com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$EntrySet$1.next():568 -> next
     11:11:java.lang.Object next():566 -> next
-com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$KeySet -> com.android.tools.r8.internal.kC:
+com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$KeySet -> com.android.tools.r8.internal.lC:
     com.android.tools.r8.com.google.gson.internal.LinkedTreeMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.com.google.gson.internal.LinkedTreeMap):595:595 -> <init>
     1:1:void clear():617:617 -> clear
@@ -18050,7 +18050,7 @@
     3:3:com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node com.android.tools.r8.com.google.gson.internal.LinkedTreeMap.removeInternalByKey(java.lang.Object):279:279 -> remove
     3:3:boolean remove(java.lang.Object):613 -> remove
     1:1:int size():597:597 -> size
-com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$KeySet$1 -> com.android.tools.r8.internal.jC:
+com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$KeySet$1 -> com.android.tools.r8.internal.kC:
     1:1:void <init>(com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$KeySet):601:601 -> <init>
     1:9:com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$LinkedTreeMapIterator.nextNode():539:547 -> next
     1:9:java.lang.Object next():603 -> next
@@ -18059,7 +18059,7 @@
     11:11:java.lang.Object next():603 -> next
     12:12:com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$LinkedTreeMapIterator.nextNode():541:541 -> next
     12:12:java.lang.Object next():603 -> next
-com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$LinkedTreeMapIterator -> com.android.tools.r8.internal.lC:
+com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$LinkedTreeMapIterator -> com.android.tools.r8.internal.mC:
     com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node lastReturned -> c
     com.android.tools.r8.com.google.gson.internal.LinkedTreeMap this$0 -> e
     com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node next -> b
@@ -18069,7 +18069,7 @@
     1:1:boolean hasNext():535:535 -> hasNext
     1:6:void remove():551:556 -> remove
     7:7:void remove():552:552 -> remove
-com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node -> com.android.tools.r8.internal.mC:
+com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node -> com.android.tools.r8.internal.nC:
     com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node right -> d
     com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node left -> c
     com.android.tools.r8.com.google.gson.internal.LinkedTreeMap$Node prev -> f
@@ -18086,9 +18086,9 @@
     1:2:int hashCode():491:492 -> hashCode
     1:2:java.lang.Object setValue(java.lang.Object):475:476 -> setValue
     1:1:java.lang.String toString():496:496 -> toString
-com.android.tools.r8.com.google.gson.internal.ObjectConstructor -> com.android.tools.r8.internal.cK:
+com.android.tools.r8.com.google.gson.internal.ObjectConstructor -> com.android.tools.r8.internal.dK:
     java.lang.Object construct() -> a
-com.android.tools.r8.com.google.gson.internal.Primitives -> com.android.tools.r8.internal.XM:
+com.android.tools.r8.com.google.gson.internal.Primitives -> com.android.tools.r8.internal.YM:
     java.util.Map PRIMITIVE_TO_WRAPPER_TYPE -> a
     1:4:void <clinit>():45:48 -> <clinit>
     5:6:void com.android.tools.r8.com.google.gson.internal.Primitives.add(java.util.Map,java.util.Map,java.lang.Class,java.lang.Class):64:65 -> <clinit>
@@ -18211,13 +18211,13 @@
 com.android.tools.r8.com.google.gson.internal.bind.DateTypeAdapter$1 -> com.android.tools.r8.internal.we:
     1:1:void <init>():42:42 -> <init>
     1:1:com.android.tools.r8.com.google.gson.TypeAdapter create(com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken):45:45 -> a
-com.android.tools.r8.com.google.gson.internal.bind.JsonAdapterAnnotationTypeAdapterFactory -> com.android.tools.r8.internal.Ov:
+com.android.tools.r8.com.google.gson.internal.bind.JsonAdapterAnnotationTypeAdapterFactory -> com.android.tools.r8.internal.Pv:
     com.android.tools.r8.com.google.gson.internal.ConstructorConstructor constructorConstructor -> b
     1:2:void <init>(com.android.tools.r8.com.google.gson.internal.ConstructorConstructor):37:38 -> <init>
     1:6:com.android.tools.r8.com.google.gson.TypeAdapter create(com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken):44:49 -> a
     7:29:com.android.tools.r8.com.google.gson.TypeAdapter getTypeAdapter(com.android.tools.r8.com.google.gson.internal.ConstructorConstructor,com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken,com.android.tools.r8.com.google.gson.annotations.JsonAdapter):55:77 -> a
     30:30:com.android.tools.r8.com.google.gson.TypeAdapter getTypeAdapter(com.android.tools.r8.com.google.gson.internal.ConstructorConstructor,com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken,com.android.tools.r8.com.google.gson.annotations.JsonAdapter):71:71 -> a
-com.android.tools.r8.com.google.gson.internal.bind.JsonTreeWriter -> com.android.tools.r8.internal.dw:
+com.android.tools.r8.com.google.gson.internal.bind.JsonTreeWriter -> com.android.tools.r8.internal.ew:
     java.io.Writer UNWRITABLE_WRITER -> p
     com.android.tools.r8.com.google.gson.JsonPrimitive SENTINEL_CLOSED -> q
     java.lang.String pendingName -> n
@@ -18275,12 +18275,12 @@
     74:74:com.android.tools.r8.com.google.gson.JsonElement get():66:66 -> o
     75:75:com.android.tools.r8.com.google.gson.JsonElement get():66:66 -> o
     72:72:com.android.tools.r8.com.google.gson.JsonElement get():66:66 -> o
-com.android.tools.r8.com.google.gson.internal.bind.JsonTreeWriter$1 -> com.android.tools.r8.internal.cw:
+com.android.tools.r8.com.google.gson.internal.bind.JsonTreeWriter$1 -> com.android.tools.r8.internal.dw:
     1:1:void <init>():34:34 -> <init>
     1:1:void close():42:42 -> close
     1:1:void flush():39:39 -> flush
     1:1:void write(char[],int,int):36:36 -> write
-com.android.tools.r8.com.google.gson.internal.bind.MapTypeAdapterFactory -> com.android.tools.r8.internal.DD:
+com.android.tools.r8.com.google.gson.internal.bind.MapTypeAdapterFactory -> com.android.tools.r8.internal.ED:
     com.android.tools.r8.com.google.gson.internal.ConstructorConstructor constructorConstructor -> b
     boolean complexMapKeySerialization -> c
     1:3:void <init>(com.android.tools.r8.com.google.gson.internal.ConstructorConstructor,boolean):110:112 -> <init>
@@ -18288,7 +18288,7 @@
     11:14:com.android.tools.r8.com.google.gson.TypeAdapter com.android.tools.r8.com.google.gson.internal.bind.MapTypeAdapterFactory.getKeyAdapter(com.android.tools.r8.com.google.gson.Gson,java.lang.reflect.Type):140:140 -> a
     11:14:com.android.tools.r8.com.google.gson.TypeAdapter create(com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken):125 -> a
     15:20:com.android.tools.r8.com.google.gson.TypeAdapter create(com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken):126:131 -> a
-com.android.tools.r8.com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter -> com.android.tools.r8.internal.CD:
+com.android.tools.r8.com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter -> com.android.tools.r8.internal.DD:
     com.android.tools.r8.com.google.gson.TypeAdapter keyTypeAdapter -> a
     com.android.tools.r8.com.google.gson.internal.bind.MapTypeAdapterFactory this$0 -> d
     com.android.tools.r8.com.google.gson.TypeAdapter valueTypeAdapter -> b
@@ -18354,7 +18354,7 @@
     62:80:java.lang.Object read(com.android.tools.r8.com.google.gson.stream.JsonReader):145 -> a
     81:97:java.util.Map com.android.tools.r8.com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(com.android.tools.r8.com.google.gson.stream.JsonReader):177:193 -> a
     81:97:java.lang.Object read(com.android.tools.r8.com.google.gson.stream.JsonReader):145 -> a
-com.android.tools.r8.com.google.gson.internal.bind.ObjectTypeAdapter -> com.android.tools.r8.internal.zK:
+com.android.tools.r8.com.google.gson.internal.bind.ObjectTypeAdapter -> com.android.tools.r8.internal.AK:
     com.android.tools.r8.com.google.gson.TypeAdapterFactory FACTORY -> b
     com.android.tools.r8.com.google.gson.Gson gson -> a
     1:1:void <clinit>():38:38 -> <clinit>
@@ -18373,10 +18373,10 @@
     58:58:com.android.tools.r8.com.google.gson.TypeAdapter com.android.tools.r8.com.google.gson.Gson.getAdapter(java.lang.Class):521:521 -> a
     58:58:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):100 -> a
     59:65:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):101:107 -> a
-com.android.tools.r8.com.google.gson.internal.bind.ObjectTypeAdapter$1 -> com.android.tools.r8.internal.yK:
+com.android.tools.r8.com.google.gson.internal.bind.ObjectTypeAdapter$1 -> com.android.tools.r8.internal.zK:
     1:1:void <init>():38:38 -> <init>
     1:2:com.android.tools.r8.com.google.gson.TypeAdapter create(com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken):41:42 -> a
-com.android.tools.r8.com.google.gson.internal.bind.ReflectiveTypeAdapterFactory -> com.android.tools.r8.internal.qS:
+com.android.tools.r8.com.google.gson.internal.bind.ReflectiveTypeAdapterFactory -> com.android.tools.r8.internal.rS:
     com.android.tools.r8.com.google.gson.internal.ConstructorConstructor constructorConstructor -> b
     com.android.tools.r8.com.google.gson.internal.Excluder excluder -> d
     com.android.tools.r8.com.google.gson.internal.bind.JsonAdapterAnnotationTypeAdapterFactory jsonAdapterFactory -> e
@@ -18399,7 +18399,7 @@
     61:70:java.util.Map com.android.tools.r8.com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken,java.lang.Class):166:175 -> a
     61:70:com.android.tools.r8.com.google.gson.TypeAdapter create(com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken):100 -> a
     71:71:com.android.tools.r8.com.google.gson.TypeAdapter create(com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken):100:100 -> a
-com.android.tools.r8.com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1 -> com.android.tools.r8.internal.oS:
+com.android.tools.r8.com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1 -> com.android.tools.r8.internal.pS:
     com.android.tools.r8.com.google.gson.reflect.TypeToken val$fieldType -> h
     boolean val$isPrimitive -> i
     java.lang.reflect.Field val$field -> d
@@ -18412,7 +18412,7 @@
     1:1:void <init>(com.android.tools.r8.com.google.gson.internal.bind.ReflectiveTypeAdapterFactory,java.lang.String,boolean,boolean,java.lang.reflect.Field,boolean,com.android.tools.r8.com.google.gson.TypeAdapter,com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken,boolean):118:118 -> <init>
     2:5:void com.android.tools.r8.com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$BoundField.<init>(java.lang.String,boolean,boolean):185:188 -> <init>
     2:5:void <init>(com.android.tools.r8.com.google.gson.internal.bind.ReflectiveTypeAdapterFactory,java.lang.String,boolean,boolean,java.lang.reflect.Field,boolean,com.android.tools.r8.com.google.gson.TypeAdapter,com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken,boolean):118 -> <init>
-com.android.tools.r8.com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter -> com.android.tools.r8.internal.pS:
+com.android.tools.r8.com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter -> com.android.tools.r8.internal.qS:
     java.util.Map boundFields -> b
     com.android.tools.r8.com.google.gson.internal.ObjectConstructor constructor -> a
     1:3:void <init>(com.android.tools.r8.com.google.gson.internal.ObjectConstructor,java.util.Map):199:201 -> <init>
@@ -18433,7 +18433,7 @@
     40:43:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):243 -> a
     44:44:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):249:249 -> a
     45:45:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):247:247 -> a
-com.android.tools.r8.com.google.gson.internal.bind.SqlDateTypeAdapter -> com.android.tools.r8.internal.QV:
+com.android.tools.r8.com.google.gson.internal.bind.SqlDateTypeAdapter -> com.android.tools.r8.internal.RV:
     com.android.tools.r8.com.google.gson.TypeAdapterFactory FACTORY -> b
     java.text.DateFormat format -> a
     1:1:void <clinit>():39:39 -> <clinit>
@@ -18444,10 +18444,10 @@
     11:11:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):38:38 -> a
     12:12:void com.android.tools.r8.com.google.gson.internal.bind.SqlDateTypeAdapter.write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.sql.Date):65:65 -> a
     12:12:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):38 -> a
-com.android.tools.r8.com.google.gson.internal.bind.SqlDateTypeAdapter$1 -> com.android.tools.r8.internal.PV:
+com.android.tools.r8.com.google.gson.internal.bind.SqlDateTypeAdapter$1 -> com.android.tools.r8.internal.QV:
     1:1:void <init>():39:39 -> <init>
     1:1:com.android.tools.r8.com.google.gson.TypeAdapter create(com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken):42:42 -> a
-com.android.tools.r8.com.google.gson.internal.bind.TimeTypeAdapter -> com.android.tools.r8.internal.IY:
+com.android.tools.r8.com.google.gson.internal.bind.TimeTypeAdapter -> com.android.tools.r8.internal.JY:
     com.android.tools.r8.com.google.gson.TypeAdapterFactory FACTORY -> b
     java.text.DateFormat format -> a
     1:1:void <clinit>():41:41 -> <clinit>
@@ -18458,7 +18458,7 @@
     11:11:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):40:40 -> a
     12:12:void com.android.tools.r8.com.google.gson.internal.bind.TimeTypeAdapter.write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.sql.Time):64:64 -> a
     12:12:void write(com.android.tools.r8.com.google.gson.stream.JsonWriter,java.lang.Object):40 -> a
-com.android.tools.r8.com.google.gson.internal.bind.TimeTypeAdapter$1 -> com.android.tools.r8.internal.HY:
+com.android.tools.r8.com.google.gson.internal.bind.TimeTypeAdapter$1 -> com.android.tools.r8.internal.IY:
     1:1:void <init>():41:41 -> <init>
     1:1:com.android.tools.r8.com.google.gson.TypeAdapter create(com.android.tools.r8.com.google.gson.Gson,com.android.tools.r8.com.google.gson.reflect.TypeToken):44:44 -> a
 com.android.tools.r8.com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper -> com.android.tools.r8.internal.CZ:
@@ -19002,7 +19002,7 @@
     1:2:boolean equals(java.lang.Object):284:285 -> equals
     1:1:int hashCode():280:280 -> hashCode
     1:1:java.lang.String toString():289:289 -> toString
-com.android.tools.r8.com.google.gson.stream.JsonReader -> com.android.tools.r8.internal.Yv:
+com.android.tools.r8.com.google.gson.stream.JsonReader -> com.android.tools.r8.internal.Zv:
     long peekedLong -> j
     int stackSize -> n
     char[] buffer -> d
@@ -19225,7 +19225,7 @@
     28:52:void com.android.tools.r8.com.google.gson.stream.JsonReader.skipUnquotedValue():1117:1141 -> v
     28:52:void skipValue():1240 -> v
     53:57:void skipValue():1248:1252 -> v
-com.android.tools.r8.com.google.gson.stream.JsonReader$1 -> com.android.tools.r8.internal.Xv:
+com.android.tools.r8.com.google.gson.stream.JsonReader$1 -> com.android.tools.r8.internal.Yv:
     1:1:void <init>():1585:1585 -> <init>
     1:12:void promoteNameToValue(com.android.tools.r8.com.google.gson.stream.JsonReader):1591:1602 -> a
     13:13:void promoteNameToValue(com.android.tools.r8.com.google.gson.stream.JsonReader):0:0 -> a
@@ -19234,12 +19234,12 @@
     1618:1618:void promoteNameToValue(com.android.tools.r8.com.google.gson.stream.JsonReader):1602:1602 -> a
     1619:1619:void promoteNameToValue(com.android.tools.r8.com.google.gson.stream.JsonReader):1602:1602 -> a
     1616:1616:void promoteNameToValue(com.android.tools.r8.com.google.gson.stream.JsonReader):1603:1603 -> a
-com.android.tools.r8.com.google.gson.stream.JsonToken$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.bw:
+com.android.tools.r8.com.google.gson.stream.JsonToken$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.cw:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
     java.lang.String stringValueOf(int) -> a
       # {"id":"com.android.tools.r8.synthesized"}
-com.android.tools.r8.com.google.gson.stream.JsonWriter -> com.android.tools.r8.internal.ew:
+com.android.tools.r8.com.google.gson.stream.JsonWriter -> com.android.tools.r8.internal.fw:
     java.lang.String separator -> f
     java.lang.String[] HTML_SAFE_REPLACEMENT_CHARS -> l
     java.lang.String deferredName -> i
@@ -19329,7 +19329,7 @@
     15:15:int com.android.tools.r8.com.google.gson.stream.JsonWriter.peek():367:367 -> n
     15:15:void com.android.tools.r8.com.google.gson.stream.JsonWriter.beforeName():612 -> n
     15:15:void writeDeferredName():401 -> n
-com.android.tools.r8.com.google.gson.stream.MalformedJsonException -> com.android.tools.r8.internal.AD:
+com.android.tools.r8.com.google.gson.stream.MalformedJsonException -> com.android.tools.r8.internal.BD:
     1:1:void <init>(java.lang.String):29:29 -> <init>
 com.android.tools.r8.compatproguard.CompatProguard -> com.android.tools.r8.compatproguard.CompatProguard:
     1:29:void run(java.lang.String[]):219:247 -> a
@@ -19933,123 +19933,123 @@
     389:397:com.android.tools.r8.utils.OriginalSourceFiles com.android.tools.r8.dex.ApplicationWriter.computeSourceFileString(com.android.tools.r8.utils.Box,java.util.List):404:412 -> a
     389:397:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):252 -> a
     398:421:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):255:278 -> a
-    422:452:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):276:306 -> a
-    453:453:boolean com.android.tools.r8.dex.ApplicationWriter.willComputeProguardMap():233:233 -> a
-    453:453:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):311 -> a
-    454:456:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):314:316 -> a
-    457:490:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):315:348 -> a
-    491:491:boolean com.android.tools.r8.utils.InternalOptions.isDesugaredLibraryCompilation():447:447 -> a
-    491:491:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):348 -> a
+    422:427:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):276:281 -> a
+    428:455:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):279:306 -> a
+    456:456:boolean com.android.tools.r8.dex.ApplicationWriter.willComputeProguardMap():233:233 -> a
+    456:456:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):311 -> a
+    457:459:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):314:316 -> a
+    460:493:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):315:348 -> a
+    494:494:boolean com.android.tools.r8.utils.InternalOptions.isDesugaredLibraryCompilation():447:447 -> a
+    494:494:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):348 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    492:492:boolean com.android.tools.r8.utils.InternalOptions.isDesugaredLibraryCompilation():447:447 -> a
-    492:492:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):348 -> a
-    493:501:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):348:356 -> a
-    502:502:java.lang.Boolean lambda$write$0(java.util.List,com.android.tools.r8.ir.analysis.proto.ProtoShrinker):280:280 -> a
-    503:503:void lambda$write$1(com.android.tools.r8.dex.ApplicationWriter$SortAnnotations,com.android.tools.r8.graph.DexProgramClass):286:286 -> a
-    504:516:com.android.tools.r8.SourceFileEnvironment createSourceFileEnvironment(com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId):417:429 -> a
-    517:520:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):527:530 -> a
-    521:528:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):528:535 -> a
-    529:537:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):534:542 -> a
-    538:571:void com.android.tools.r8.dex.ApplicationWriter.adaptAndPassDataResources(com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.DataResourceConsumer,java.util.Collection,com.android.tools.r8.dex.ResourceAdapter):591:624 -> a
-    538:571:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):545 -> a
-    572:603:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):550:581 -> a
-    604:637:void com.android.tools.r8.dex.ApplicationWriter.adaptAndPassDataResources(com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.DataResourceConsumer,java.util.Collection,com.android.tools.r8.dex.ResourceAdapter):591:624 -> a
-    604:637:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):580 -> a
-    638:638:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):557:557 -> a
-    639:648:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):556:565 -> a
-    649:655:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):560:566 -> a
-    656:656:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":1234,"2":1235,"3":1236,"4":1237,"5":1238}}
-    1234:1234:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):566:566 -> a
-    1235:1235:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):566:566 -> a
-    1236:1236:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):566:566 -> a
+    495:495:boolean com.android.tools.r8.utils.InternalOptions.isDesugaredLibraryCompilation():447:447 -> a
+    495:495:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):348 -> a
+    496:504:void write(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.AndroidApp):348:356 -> a
+    505:505:java.lang.Boolean lambda$write$0(java.util.List,com.android.tools.r8.ir.analysis.proto.ProtoShrinker):280:280 -> a
+    506:506:void lambda$write$1(com.android.tools.r8.dex.ApplicationWriter$SortAnnotations,com.android.tools.r8.graph.DexProgramClass):286:286 -> a
+    507:519:com.android.tools.r8.SourceFileEnvironment createSourceFileEnvironment(com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId):417:429 -> a
+    520:523:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):527:530 -> a
+    524:531:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):528:535 -> a
+    532:540:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):534:542 -> a
+    541:574:void com.android.tools.r8.dex.ApplicationWriter.adaptAndPassDataResources(com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.DataResourceConsumer,java.util.Collection,com.android.tools.r8.dex.ResourceAdapter):591:624 -> a
+    541:574:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):545 -> a
+    575:606:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):550:581 -> a
+    607:640:void com.android.tools.r8.dex.ApplicationWriter.adaptAndPassDataResources(com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.DataResourceConsumer,java.util.Collection,com.android.tools.r8.dex.ResourceAdapter):591:624 -> a
+    607:640:void supplyAdditionalConsumers(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.InternalOptions):580 -> a
+    641:641:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):557:557 -> a
+    642:651:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):556:565 -> a
+    652:658:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):560:566 -> a
+    659:659:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":1237,"2":1238,"3":1239,"4":1240,"5":1241}}
     1237:1237:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):566:566 -> a
     1238:1238:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):566:566 -> a
-    1224:1224:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):568:568 -> a
-    1225:1225:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):559:559 -> a
-    1226:1226:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):558:558 -> a
-    1239:1239:void insertAttributeAnnotations():631:631 -> a
-    1240:1254:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):639:653 -> a
-    1240:1254:void insertAttributeAnnotations():632 -> a
-    1255:1255:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):652:652 -> a
-    1255:1255:void insertAttributeAnnotations():632 -> a
-    1256:1264:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):651:659 -> a
-    1256:1264:void insertAttributeAnnotations():632 -> a
-    1265:1265:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):658:658 -> a
-    1265:1265:void insertAttributeAnnotations():632 -> a
-    1266:1282:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):657:673 -> a
-    1266:1282:void insertAttributeAnnotations():632 -> a
-    1283:1289:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):672:678 -> a
-    1283:1289:void insertAttributeAnnotations():632 -> a
-    1290:1299:com.android.tools.r8.graph.DexAnnotation com.android.tools.r8.graph.DexAnnotation.createInnerClassAnnotation(com.android.tools.r8.graph.DexString,int,com.android.tools.r8.graph.DexItemFactory):183:192 -> a
-    1290:1299:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):676 -> a
-    1290:1299:void insertAttributeAnnotations():632 -> a
-    1300:1308:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):675:683 -> a
-    1300:1308:void insertAttributeAnnotations():632 -> a
-    1309:1309:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):682:682 -> a
-    1309:1309:void insertAttributeAnnotations():632 -> a
-    1310:1321:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):681:692 -> a
-    1310:1321:void insertAttributeAnnotations():632 -> a
-    1322:1330:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):691:699 -> a
-    1322:1330:void insertAttributeAnnotations():632 -> a
-    1331:1331:java.lang.String com.android.tools.r8.graph.GenericSignature$ClassSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):276:276 -> a
-    1331:1331:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):699 -> a
-    1331:1331:void insertAttributeAnnotations():632 -> a
+    1239:1239:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):566:566 -> a
+    1240:1240:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):566:566 -> a
+    1241:1241:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):566:566 -> a
+    1227:1227:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):568:568 -> a
+    1228:1228:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):559:559 -> a
+    1229:1229:void lambda$supplyAdditionalConsumers$5(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.DataResourceConsumer,com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexType,java.util.List):558:558 -> a
+    1242:1242:void insertAttributeAnnotations():631:631 -> a
+    1243:1257:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):639:653 -> a
+    1243:1257:void insertAttributeAnnotations():632 -> a
+    1258:1258:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):652:652 -> a
+    1258:1258:void insertAttributeAnnotations():632 -> a
+    1259:1267:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):651:659 -> a
+    1259:1267:void insertAttributeAnnotations():632 -> a
+    1268:1268:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):658:658 -> a
+    1268:1268:void insertAttributeAnnotations():632 -> a
+    1269:1285:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):657:673 -> a
+    1269:1285:void insertAttributeAnnotations():632 -> a
+    1286:1292:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):672:678 -> a
+    1286:1292:void insertAttributeAnnotations():632 -> a
+    1293:1302:com.android.tools.r8.graph.DexAnnotation com.android.tools.r8.graph.DexAnnotation.createInnerClassAnnotation(com.android.tools.r8.graph.DexString,int,com.android.tools.r8.graph.DexItemFactory):183:192 -> a
+    1293:1302:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):676 -> a
+    1293:1302:void insertAttributeAnnotations():632 -> a
+    1303:1311:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):675:683 -> a
+    1303:1311:void insertAttributeAnnotations():632 -> a
+    1312:1312:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):682:682 -> a
+    1312:1312:void insertAttributeAnnotations():632 -> a
+    1313:1324:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):681:692 -> a
+    1313:1324:void insertAttributeAnnotations():632 -> a
+    1325:1333:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):691:699 -> a
+    1325:1333:void insertAttributeAnnotations():632 -> a
+    1334:1334:java.lang.String com.android.tools.r8.graph.GenericSignature$ClassSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):276:276 -> a
+    1334:1334:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):699 -> a
+    1334:1334:void insertAttributeAnnotations():632 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
-    1334:1337:java.lang.String com.android.tools.r8.graph.GenericSignature$ClassSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):279:282 -> a
-    1334:1337:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):699 -> a
-    1334:1337:void insertAttributeAnnotations():632 -> a
-    1338:1338:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):699:699 -> a
-    1338:1338:void insertAttributeAnnotations():632 -> a
-    1339:1339:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):698:698 -> a
-    1339:1339:void insertAttributeAnnotations():632 -> a
-    1340:1351:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):697:708 -> a
-    1340:1351:void insertAttributeAnnotations():632 -> a
-    1352:1352:java.lang.Object[] com.android.tools.r8.com.google.common.collect.ObjectArrays.concat(java.lang.Object[],java.lang.Object[],java.lang.Class):71:71 -> a
-    1352:1352:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):706 -> a
-    1352:1352:void insertAttributeAnnotations():632 -> a
-    1353:1353:java.lang.Object[] com.android.tools.r8.com.google.common.collect.ObjectArrays.newArray(java.lang.Class,int):49:49 -> a
-    1353:1353:java.lang.Object[] com.android.tools.r8.com.google.common.collect.ObjectArrays.concat(java.lang.Object[],java.lang.Object[],java.lang.Class):71 -> a
-    1353:1353:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):706 -> a
-    1353:1353:void insertAttributeAnnotations():632 -> a
-    1354:1355:java.lang.Object[] com.android.tools.r8.com.google.common.collect.ObjectArrays.concat(java.lang.Object[],java.lang.Object[],java.lang.Class):72:73 -> a
-    1354:1355:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):706 -> a
-    1354:1355:void insertAttributeAnnotations():632 -> a
-    1356:1366:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):706:716 -> a
-    1356:1366:void insertAttributeAnnotations():632 -> a
-    1367:1368:void insertAttributeAnnotations():633:634 -> a
-    1369:1378:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):720:729 -> a
-    1379:1379:java.lang.String com.android.tools.r8.graph.GenericSignature$FieldTypeSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):476:476 -> a
-    1379:1379:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):729 -> a
+    1337:1340:java.lang.String com.android.tools.r8.graph.GenericSignature$ClassSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):279:282 -> a
+    1337:1340:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):699 -> a
+    1337:1340:void insertAttributeAnnotations():632 -> a
+    1341:1341:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):699:699 -> a
+    1341:1341:void insertAttributeAnnotations():632 -> a
+    1342:1342:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):698:698 -> a
+    1342:1342:void insertAttributeAnnotations():632 -> a
+    1343:1354:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):697:708 -> a
+    1343:1354:void insertAttributeAnnotations():632 -> a
+    1355:1355:java.lang.Object[] com.android.tools.r8.com.google.common.collect.ObjectArrays.concat(java.lang.Object[],java.lang.Object[],java.lang.Class):71:71 -> a
+    1355:1355:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):706 -> a
+    1355:1355:void insertAttributeAnnotations():632 -> a
+    1356:1356:java.lang.Object[] com.android.tools.r8.com.google.common.collect.ObjectArrays.newArray(java.lang.Class,int):49:49 -> a
+    1356:1356:java.lang.Object[] com.android.tools.r8.com.google.common.collect.ObjectArrays.concat(java.lang.Object[],java.lang.Object[],java.lang.Class):71 -> a
+    1356:1356:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):706 -> a
+    1356:1356:void insertAttributeAnnotations():632 -> a
+    1357:1358:java.lang.Object[] com.android.tools.r8.com.google.common.collect.ObjectArrays.concat(java.lang.Object[],java.lang.Object[],java.lang.Class):72:73 -> a
+    1357:1358:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):706 -> a
+    1357:1358:void insertAttributeAnnotations():632 -> a
+    1359:1369:void com.android.tools.r8.dex.ApplicationWriter.insertAttributeAnnotationsForClass(com.android.tools.r8.graph.DexProgramClass):706:716 -> a
+    1359:1369:void insertAttributeAnnotations():632 -> a
+    1370:1371:void insertAttributeAnnotations():633:634 -> a
+    1372:1381:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):720:729 -> a
+    1382:1382:java.lang.String com.android.tools.r8.graph.GenericSignature$FieldTypeSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):476:476 -> a
+    1382:1382:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):729 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    1382:1385:java.lang.String com.android.tools.r8.graph.GenericSignature$FieldTypeSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):479:482 -> a
-    1382:1385:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):729 -> a
-    1386:1386:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):729:729 -> a
-    1387:1387:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):728:728 -> a
-    1388:1388:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):726:726 -> a
-    1389:1389:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):725:725 -> a
-    1390:1397:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):724:731 -> a
-    1398:1407:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):735:744 -> a
-    1408:1408:java.lang.String com.android.tools.r8.graph.GenericSignature$MethodTypeSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):878:878 -> a
-    1408:1408:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):744 -> a
+    1385:1388:java.lang.String com.android.tools.r8.graph.GenericSignature$FieldTypeSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):479:482 -> a
+    1385:1388:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):729 -> a
+    1389:1389:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):729:729 -> a
+    1390:1390:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):728:728 -> a
+    1391:1391:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):726:726 -> a
+    1392:1392:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):725:725 -> a
+    1393:1400:void insertAttributeAnnotationsForField(com.android.tools.r8.graph.DexEncodedField):724:731 -> a
+    1401:1410:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):735:744 -> a
+    1411:1411:java.lang.String com.android.tools.r8.graph.GenericSignature$MethodTypeSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):878:878 -> a
+    1411:1411:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):744 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    1411:1414:java.lang.String com.android.tools.r8.graph.GenericSignature$MethodTypeSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):881:884 -> a
-    1411:1414:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):744 -> a
-    1415:1415:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):744:744 -> a
-    1416:1416:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):743:743 -> a
-    1417:1417:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):741:741 -> a
-    1418:1418:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):740:740 -> a
-    1419:1426:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):739:746 -> a
-    1427:1427:void setCallSiteContexts(com.android.tools.r8.graph.DexProgramClass):755:755 -> a
-    1428:1428:void lambda$setCallSiteContexts$6(com.android.tools.r8.graph.ProgramMethod):757:757 -> a
-    1429:1441:void rewriteCodeWithJumboStrings(com.android.tools.r8.graph.ObjectToOffsetMapping,java.util.Collection,com.android.tools.r8.graph.DexApplication):772:784 -> a
-    1442:1449:void lambda$rewriteCodeWithJumboStrings$7(com.android.tools.r8.graph.ObjectToOffsetMapping,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.ProgramMethod):787:794 -> a
-    1450:1461:com.android.tools.r8.dex.FileWriter$ByteBufferResult writeDexFile(com.android.tools.r8.graph.ObjectToOffsetMapping,com.android.tools.r8.ByteBufferProvider,com.android.tools.r8.utils.Timing):801:812 -> a
-    1462:1462:com.android.tools.r8.dex.FileWriter lambda$writeDexFile$8(com.android.tools.r8.dex.FileWriter):810:810 -> a
-    1463:1464:java.lang.String com.android.tools.r8.dex.ApplicationWriter.mapMainDexListName(com.android.tools.r8.graph.DexType,com.android.tools.r8.naming.NamingLens):816:817 -> a
-    1463:1464:void lambda$writeMainDexList$10(java.lang.StringBuilder,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.graph.DexType):828 -> a
-    1465:1465:void lambda$writeMainDexList$10(java.lang.StringBuilder,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.graph.DexType):828:828 -> a
-    1466:1473:java.lang.String writeMainDexList(com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):822:829 -> a
+    1414:1417:java.lang.String com.android.tools.r8.graph.GenericSignature$MethodTypeSignature.toRenamedString(com.android.tools.r8.naming.NamingLens,java.util.function.Predicate):881:884 -> a
+    1414:1417:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):744 -> a
+    1418:1418:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):744:744 -> a
+    1419:1419:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):743:743 -> a
+    1420:1420:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):741:741 -> a
+    1421:1421:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):740:740 -> a
+    1422:1429:void insertAttributeAnnotationsForMethod(com.android.tools.r8.graph.DexEncodedMethod):739:746 -> a
+    1430:1430:void setCallSiteContexts(com.android.tools.r8.graph.DexProgramClass):755:755 -> a
+    1431:1431:void lambda$setCallSiteContexts$6(com.android.tools.r8.graph.ProgramMethod):757:757 -> a
+    1432:1444:void rewriteCodeWithJumboStrings(com.android.tools.r8.graph.ObjectToOffsetMapping,java.util.Collection,com.android.tools.r8.graph.DexApplication):772:784 -> a
+    1445:1452:void lambda$rewriteCodeWithJumboStrings$7(com.android.tools.r8.graph.ObjectToOffsetMapping,com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.ProgramMethod):787:794 -> a
+    1453:1464:com.android.tools.r8.dex.FileWriter$ByteBufferResult writeDexFile(com.android.tools.r8.graph.ObjectToOffsetMapping,com.android.tools.r8.ByteBufferProvider,com.android.tools.r8.utils.Timing):801:812 -> a
+    1465:1466:java.lang.String com.android.tools.r8.dex.ApplicationWriter.mapMainDexListName(com.android.tools.r8.graph.DexType,com.android.tools.r8.naming.NamingLens):816:817 -> a
+    1465:1466:void lambda$writeMainDexList$8(java.lang.StringBuilder,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.graph.DexType):828 -> a
+    1467:1467:void lambda$writeMainDexList$8(java.lang.StringBuilder,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.graph.DexType):828:828 -> a
+    1468:1475:java.lang.String writeMainDexList(com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):822:829 -> a
     1:1:com.android.tools.r8.utils.Timing lambda$write$3(java.util.List,com.android.tools.r8.dex.VirtualFile):0:0 -> b
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":391,"2":392,"3":393}}
     391:391:com.android.tools.r8.utils.Timing lambda$write$3(java.util.List,com.android.tools.r8.dex.VirtualFile):336:336 -> b
@@ -20081,7 +20081,6 @@
     390:390:com.android.tools.r8.utils.Timing lambda$write$3(java.util.List,com.android.tools.r8.dex.VirtualFile):338:338 -> b
     394:399:com.android.tools.r8.graph.DexString rewriteSourceFile(com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId):443:448 -> b
     400:402:void setCallSiteContexts(java.util.concurrent.ExecutorService):750:750 -> b
-    403:403:com.android.tools.r8.dex.FileWriter$ByteBufferResult lambda$writeDexFile$9(com.android.tools.r8.dex.FileWriter):812:812 -> b
     1:1:void write(java.util.concurrent.ExecutorService):238:238 -> c
     2:2:boolean com.android.tools.r8.dex.ApplicationWriter.willComputeProguardMap():233:233 -> c
     2:2:void write(java.util.concurrent.ExecutorService):238 -> c
@@ -21421,7 +21420,7 @@
     23:30:com.android.tools.r8.dex.FileWriter$ByteBufferResult generate():171 -> b
     31:32:boolean com.android.tools.r8.dex.FileWriter.verifyNames():320:321 -> b
     31:32:com.android.tools.r8.dex.FileWriter$ByteBufferResult generate():171 -> b
-    33:33:boolean com.android.tools.r8.synthesis.SyntheticNaming.verifyNotInternalSynthetic(com.android.tools.r8.graph.DexType):224:224 -> b
+    33:33:boolean com.android.tools.r8.synthesis.SyntheticNaming.verifyNotInternalSynthetic(com.android.tools.r8.graph.DexType):228:228 -> b
     33:33:boolean com.android.tools.r8.dex.FileWriter.verifyNames():321 -> b
     33:33:com.android.tools.r8.dex.FileWriter$ByteBufferResult generate():171 -> b
     34:41:com.android.tools.r8.dex.FileWriter$ByteBufferResult generate():173:180 -> b
@@ -22023,7 +22022,7 @@
     4:7:void addDirectSubClass(com.android.tools.r8.graph.AppView,java.util.Set,java.util.Map,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexProgramClass):274:277 -> a
     8:9:java.util.Collection getDirectSubClasses(com.android.tools.r8.graph.DexProgramClass):262:263 -> a
     1:1:java.util.Collection lambda$addDirectSubClass$0(com.android.tools.r8.graph.DexProgramClass):276:276 -> b
-com.android.tools.r8.dex.JumboStringRewriter -> com.android.tools.r8.internal.hw:
+com.android.tools.r8.dex.JumboStringRewriter -> com.android.tools.r8.internal.iw:
     com.android.tools.r8.graph.DexItemFactory factory -> c
     com.android.tools.r8.graph.DexString firstJumboString -> b
     java.util.Map instructionTargets -> d
@@ -22096,10 +22095,10 @@
     381:412:com.android.tools.r8.graph.DexCode rewrite():123 -> a
     413:425:com.android.tools.r8.graph.DexCode rewrite():125:137 -> a
     com.android.tools.r8.code.Instruction lambda$replaceTarget$1(com.android.tools.r8.code.Instruction,com.android.tools.r8.code.Instruction,com.android.tools.r8.code.Instruction) -> b
-com.android.tools.r8.dex.JumboStringRewriter$1 -> com.android.tools.r8.internal.fw:
+com.android.tools.r8.dex.JumboStringRewriter$1 -> com.android.tools.r8.internal.gw:
     int[] $SwitchMap$com$android$tools$r8$ir$code$If$Type -> a
     1:1:void <clinit>():279:279 -> <clinit>
-com.android.tools.r8.dex.JumboStringRewriter$TryTargets -> com.android.tools.r8.internal.gw:
+com.android.tools.r8.dex.JumboStringRewriter$TryTargets -> com.android.tools.r8.internal.hw:
     com.android.tools.r8.code.Instruction start -> a
     com.android.tools.r8.code.Instruction end -> b
     boolean endsAfterLastInstruction -> c
@@ -22109,7 +22108,7 @@
     1:5:void replaceTarget(com.android.tools.r8.code.Instruction,com.android.tools.r8.code.Instruction):73:77 -> a
     6:6:int getStartOffset():82:82 -> a
     1:4:int getStartToEndDelta():86:89 -> b
-com.android.tools.r8.dex.Marker -> com.android.tools.r8.internal.XD:
+com.android.tools.r8.dex.Marker -> com.android.tools.r8.internal.YD:
     com.android.tools.r8.dex.Marker$Tool tool -> b
     boolean $assertionsDisabled -> f
     java.lang.String D8_PREFIX -> c
@@ -22203,12 +22202,12 @@
     1:1:boolean isL8():132:132 -> n
     1:1:boolean isRelocator():136:136 -> o
     1:5:java.lang.String toString():274:278 -> toString
-com.android.tools.r8.dex.Marker$Backend$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.WD:
+com.android.tools.r8.dex.Marker$Backend$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.XD:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
     java.lang.String name(int) -> a
       # {"id":"com.android.tools.r8.synthesized"}
-com.android.tools.r8.dex.Marker$Tool -> com.android.tools.r8.internal.XD$a:
+com.android.tools.r8.dex.Marker$Tool -> com.android.tools.r8.internal.YD$a:
     com.android.tools.r8.dex.Marker$Tool D8 -> b
     com.android.tools.r8.dex.Marker$Tool[] $VALUES -> f
     com.android.tools.r8.dex.Marker$Tool Relocator -> e
@@ -22219,7 +22218,7 @@
     1:1:void <init>(java.lang.String,int):36:36 -> <init>
     1:1:com.android.tools.r8.dex.Marker$Tool[] valuesR8andD8():43:43 -> a
     1:1:com.android.tools.r8.dex.Marker$Tool[] values():36:36 -> values
-com.android.tools.r8.dex.MixedSectionCollection -> com.android.tools.r8.internal.yF:
+com.android.tools.r8.dex.MixedSectionCollection -> com.android.tools.r8.internal.zF:
     1:1:void <init>():27:27 -> <init>
     boolean add(com.android.tools.r8.graph.DexAnnotation) -> a
     boolean add(com.android.tools.r8.graph.DexAnnotationSet) -> a
@@ -22231,7 +22230,7 @@
     boolean add(com.android.tools.r8.graph.DexDebugInfoForWriting) -> a
     boolean setAnnotationsDirectoryForClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexAnnotationDirectory) -> a
     1:1:void visit(com.android.tools.r8.graph.DexEncodedMethod):62:62 -> b
-com.android.tools.r8.dex.ResourceAdapter -> com.android.tools.r8.internal.fT:
+com.android.tools.r8.dex.ResourceAdapter -> com.android.tools.r8.internal.gT:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.utils.InternalOptions options -> e
@@ -22272,31 +22271,31 @@
     1:1:com.android.tools.r8.graph.GraphLens access$100(com.android.tools.r8.dex.ResourceAdapter):32:32 -> b
     1:1:com.android.tools.r8.naming.NamingLens access$200(com.android.tools.r8.dex.ResourceAdapter):32:32 -> c
     1:1:com.android.tools.r8.graph.AppView access$300(com.android.tools.r8.dex.ResourceAdapter):32:32 -> d
-com.android.tools.r8.dex.ResourceAdapter$DefaultFileNameAdapter -> com.android.tools.r8.internal.ZS:
+com.android.tools.r8.dex.ResourceAdapter$DefaultFileNameAdapter -> com.android.tools.r8.internal.aT:
     1:1:void <init>(com.android.tools.r8.dex.ResourceAdapter,java.lang.String):420:420 -> <init>
     1:1:boolean isRenamingCandidate(int,int):425:425 -> b
-com.android.tools.r8.dex.ResourceAdapter$DirectoryNameAdapter -> com.android.tools.r8.internal.aT:
+com.android.tools.r8.dex.ResourceAdapter$DirectoryNameAdapter -> com.android.tools.r8.internal.bT:
     1:1:void <init>(com.android.tools.r8.dex.ResourceAdapter,java.lang.String):452:452 -> <init>
     boolean isRenamingCandidate(int,int) -> b
-com.android.tools.r8.dex.ResourceAdapter$FileContentsAdapter -> com.android.tools.r8.internal.bT:
+com.android.tools.r8.dex.ResourceAdapter$FileContentsAdapter -> com.android.tools.r8.internal.cT:
     1:1:void <init>(com.android.tools.r8.dex.ResourceAdapter,java.lang.String):354:354 -> <init>
     boolean allowRenamingOfPrefixes() -> a
     1:1:boolean shouldRecordPrefix(char):369:369 -> a
     2:2:boolean handlePrefix(int,int):374:374 -> a
     char getClassNameSeparator() -> b
     1:2:boolean isRenamingCandidate(int,int):380:381 -> b
-com.android.tools.r8.dex.ResourceAdapter$FileNameAdapter -> com.android.tools.r8.internal.cT:
+com.android.tools.r8.dex.ResourceAdapter$FileNameAdapter -> com.android.tools.r8.internal.dT:
     1:1:void <init>(com.android.tools.r8.dex.ResourceAdapter,java.lang.String):391:391 -> <init>
     boolean allowRenamingOfPrefixes() -> a
     1:1:boolean shouldRecordPrefix(char):406:406 -> a
     2:5:boolean handlePrefix(int,int):411:414 -> a
     6:6:boolean handlePrefix(int,int):412:412 -> a
     char getClassNameSeparator() -> b
-com.android.tools.r8.dex.ResourceAdapter$ServiceFileNameAdapter -> com.android.tools.r8.internal.dT:
+com.android.tools.r8.dex.ResourceAdapter$ServiceFileNameAdapter -> com.android.tools.r8.internal.eT:
     1:1:void <init>(com.android.tools.r8.dex.ResourceAdapter,java.lang.String):431:431 -> <init>
     char getClassNameSeparator() -> b
     1:1:boolean isRenamingCandidate(int,int):446:446 -> b
-com.android.tools.r8.dex.ResourceAdapter$StringAdapter -> com.android.tools.r8.internal.eT:
+com.android.tools.r8.dex.ResourceAdapter$StringAdapter -> com.android.tools.r8.internal.fT:
     java.lang.StringBuilder result -> b
     java.lang.String contents -> a
     int outputFrom -> d
@@ -22570,10 +22569,10 @@
     1:1:void <clinit>():331:331 -> <clinit>
     1:2:void <init>(com.android.tools.r8.dex.ApplicationWriter,boolean):336:337 -> <init>
     1:8:java.util.List run():342:349 -> a
-    9:9:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
+    9:9:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
     9:9:java.util.List run():349 -> a
-    10:10:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    10:10:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
+    10:10:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    10:10:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
     10:10:java.util.List run():349 -> a
     11:11:java.util.List run():365:365 -> a
     12:40:java.util.List run():350:378 -> a
@@ -22610,7 +22609,7 @@
     8:8:boolean addString(com.android.tools.r8.graph.DexString):792:792 -> a
     9:9:boolean addProto(com.android.tools.r8.graph.DexProto):797:797 -> a
     10:10:boolean addType(com.android.tools.r8.graph.DexType):802:802 -> a
-    11:11:boolean com.android.tools.r8.synthesis.SyntheticNaming.verifyNotInternalSynthetic(com.android.tools.r8.graph.DexType):224:224 -> a
+    11:11:boolean com.android.tools.r8.synthesis.SyntheticNaming.verifyNotInternalSynthetic(com.android.tools.r8.graph.DexType):228:228 -> a
     11:11:boolean addType(com.android.tools.r8.graph.DexType):802 -> a
     12:12:boolean addType(com.android.tools.r8.graph.DexType):803:803 -> a
     13:13:boolean addCallSite(com.android.tools.r8.graph.DexCallSite):808:808 -> a
@@ -22816,7 +22815,7 @@
     4:4:boolean addString(com.android.tools.r8.graph.DexString):669:669 -> a
     5:5:boolean addProto(com.android.tools.r8.graph.DexProto):674:674 -> a
     6:6:boolean addType(com.android.tools.r8.graph.DexType):679:679 -> a
-    7:7:boolean com.android.tools.r8.synthesis.SyntheticNaming.verifyNotInternalSynthetic(com.android.tools.r8.graph.DexType):224:224 -> a
+    7:7:boolean com.android.tools.r8.synthesis.SyntheticNaming.verifyNotInternalSynthetic(com.android.tools.r8.graph.DexType):228:228 -> a
     7:7:boolean addType(com.android.tools.r8.graph.DexType):679 -> a
     8:8:boolean addType(com.android.tools.r8.graph.DexType):680:680 -> a
     9:9:boolean addCallSite(com.android.tools.r8.graph.DexCallSite):685:685 -> a
@@ -22870,7 +22869,7 @@
     36:39:void run(com.android.tools.r8.dexsplitter.DexSplitter$Options):318:321 -> run
     40:46:void splitNonClassResources(com.android.tools.r8.dexsplitter.DexSplitter$Options,com.android.tools.r8.utils.FeatureClassMapping):328:334 -> run
     40:46:void run(com.android.tools.r8.dexsplitter.DexSplitter$Options):322 -> run
-    47:48:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):188:189 -> run
+    47:48:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):214:215 -> run
     47:48:void splitNonClassResources(com.android.tools.r8.dexsplitter.DexSplitter$Options,com.android.tools.r8.utils.FeatureClassMapping):334 -> run
     47:48:void run(com.android.tools.r8.dexsplitter.DexSplitter$Options):322 -> run
     49:58:void splitNonClassResources(com.android.tools.r8.dexsplitter.DexSplitter$Options,com.android.tools.r8.utils.FeatureClassMapping):334:343 -> run
@@ -23056,32 +23055,32 @@
     3:3:boolean validate():55:55 -> c
     3:3:com.android.tools.r8.diagnostic.internal.DefinitionMethodContextImpl build():48 -> c
     4:4:com.android.tools.r8.diagnostic.internal.DefinitionMethodContextImpl build():49:49 -> c
-com.android.tools.r8.diagnostic.internal.MissingClassInfoImpl -> com.android.tools.r8.internal.mF:
+com.android.tools.r8.diagnostic.internal.MissingClassInfoImpl -> com.android.tools.r8.internal.nF:
     com.android.tools.r8.references.ClassReference classReference -> b
     1:1:void <init>(com.android.tools.r8.references.ClassReference,java.util.Collection,com.android.tools.r8.diagnostic.internal.MissingClassInfoImpl$1):13:13 -> <init>
     2:3:void <init>(com.android.tools.r8.references.ClassReference,java.util.Collection):19:20 -> <init>
     1:1:com.android.tools.r8.diagnostic.internal.MissingClassInfoImpl$Builder builder():24:24 -> a
     1:1:com.android.tools.r8.references.ClassReference getClassReference():29:29 -> getClassReference
-com.android.tools.r8.diagnostic.internal.MissingClassInfoImpl$Builder -> com.android.tools.r8.internal.lF:
+com.android.tools.r8.diagnostic.internal.MissingClassInfoImpl$Builder -> com.android.tools.r8.internal.mF:
     com.android.tools.r8.references.ClassReference classReference -> b
     1:1:void <init>(com.android.tools.r8.diagnostic.internal.MissingClassInfoImpl$1):32:32 -> <init>
     2:2:void <init>():36:36 -> <init>
     com.android.tools.r8.diagnostic.internal.MissingDefinitionInfoBase$Builder self() -> a
     1:1:com.android.tools.r8.diagnostic.internal.MissingClassInfoImpl$Builder setClass(com.android.tools.r8.references.ClassReference):39:39 -> a
     1:1:com.android.tools.r8.diagnostic.MissingDefinitionInfo build():44:44 -> b
-com.android.tools.r8.diagnostic.internal.MissingDefinitionInfoBase -> com.android.tools.r8.internal.qF:
+com.android.tools.r8.diagnostic.internal.MissingDefinitionInfoBase -> com.android.tools.r8.internal.rF:
     java.util.Collection referencedFromContexts -> a
     1:2:void <init>(java.util.Collection):16:17 -> <init>
     1:3:java.lang.String getDiagnosticMessage():22:24 -> getDiagnosticMessage
     1:1:java.util.Collection getReferencedFromContexts():29:29 -> getReferencedFromContexts
-com.android.tools.r8.diagnostic.internal.MissingDefinitionInfoBase$Builder -> com.android.tools.r8.internal.pF:
+com.android.tools.r8.diagnostic.internal.MissingDefinitionInfoBase$Builder -> com.android.tools.r8.internal.qF:
     com.android.tools.r8.com.google.common.collect.ImmutableList$Builder referencedFromContextsBuilder -> a
     1:1:void <init>():37:37 -> <init>
     2:2:void <init>():35:35 -> <init>
     com.android.tools.r8.diagnostic.internal.MissingDefinitionInfoBase$Builder self() -> a
     1:2:com.android.tools.r8.diagnostic.internal.MissingDefinitionInfoBase$Builder addReferencedFromContext(com.android.tools.r8.diagnostic.DefinitionContext):40:41 -> a
     3:4:com.android.tools.r8.diagnostic.internal.MissingDefinitionInfoBase$Builder addReferencedFromContexts(java.lang.Iterable):45:46 -> a
-com.android.tools.r8.diagnostic.internal.MissingDefinitionInfoUtils -> com.android.tools.r8.internal.rF:
+com.android.tools.r8.diagnostic.internal.MissingDefinitionInfoUtils -> com.android.tools.r8.internal.sF:
     boolean $assertionsDisabled -> b
     java.util.Comparator COMPARATOR -> a
     1:3:void <clinit>():26:28 -> <clinit>
@@ -23141,7 +23140,7 @@
     1:23:void writeReferencedFromSuffix(java.lang.StringBuilder,com.android.tools.r8.diagnostic.MissingDefinitionInfo):110:132 -> b
     24:28:void writeReferencedFromSuffix(java.lang.StringBuilder,com.android.tools.r8.diagnostic.MissingDefinitionInfo):131:135 -> b
     29:32:void writeReferencedFromSuffix(java.lang.StringBuilder,com.android.tools.r8.diagnostic.MissingDefinitionInfo):134:137 -> b
-com.android.tools.r8.diagnostic.internal.MissingDefinitionsDiagnosticImpl -> com.android.tools.r8.internal.tF:
+com.android.tools.r8.diagnostic.internal.MissingDefinitionsDiagnosticImpl -> com.android.tools.r8.internal.uF:
     java.util.Collection missingDefinitions -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():17:17 -> <clinit>
@@ -23158,33 +23157,33 @@
     1:3:java.util.Collection getMissingDefinitions():32 -> getMissingDefinitions
     1:1:com.android.tools.r8.origin.Origin getOrigin():45:45 -> getOrigin
     1:1:com.android.tools.r8.position.Position getPosition():51:51 -> getPosition
-com.android.tools.r8.diagnostic.internal.MissingDefinitionsDiagnosticImpl$Builder -> com.android.tools.r8.internal.sF:
+com.android.tools.r8.diagnostic.internal.MissingDefinitionsDiagnosticImpl$Builder -> com.android.tools.r8.internal.tF:
     com.android.tools.r8.com.google.common.collect.ImmutableList$Builder missingDefinitionsBuilder -> a
     1:1:void <init>(com.android.tools.r8.diagnostic.internal.MissingDefinitionsDiagnosticImpl$1):75:75 -> <init>
     2:2:void <init>():80:80 -> <init>
     3:3:void <init>():78:78 -> <init>
     1:1:com.android.tools.r8.diagnostic.internal.MissingDefinitionsDiagnosticImpl$Builder addMissingDefinitionInfo(com.android.tools.r8.diagnostic.MissingDefinitionInfo):83:83 -> a
     2:2:com.android.tools.r8.diagnostic.MissingDefinitionsDiagnostic build():88:88 -> a
-com.android.tools.r8.diagnostic.internal.MissingFieldInfoImpl -> com.android.tools.r8.internal.vF:
+com.android.tools.r8.diagnostic.internal.MissingFieldInfoImpl -> com.android.tools.r8.internal.wF:
     com.android.tools.r8.references.FieldReference fieldReference -> b
     1:1:void <init>(com.android.tools.r8.references.FieldReference,java.util.Collection,com.android.tools.r8.diagnostic.internal.MissingFieldInfoImpl$1):13:13 -> <init>
     2:3:void <init>(com.android.tools.r8.references.FieldReference,java.util.Collection):19:20 -> <init>
     1:1:com.android.tools.r8.diagnostic.internal.MissingFieldInfoImpl$Builder builder():24:24 -> a
     1:1:com.android.tools.r8.references.FieldReference getFieldReference():29:29 -> getFieldReference
-com.android.tools.r8.diagnostic.internal.MissingFieldInfoImpl$Builder -> com.android.tools.r8.internal.uF:
+com.android.tools.r8.diagnostic.internal.MissingFieldInfoImpl$Builder -> com.android.tools.r8.internal.vF:
     com.android.tools.r8.references.FieldReference fieldReference -> b
     1:1:void <init>(com.android.tools.r8.diagnostic.internal.MissingFieldInfoImpl$1):32:32 -> <init>
     2:2:void <init>():36:36 -> <init>
     com.android.tools.r8.diagnostic.internal.MissingDefinitionInfoBase$Builder self() -> a
     1:1:com.android.tools.r8.diagnostic.internal.MissingFieldInfoImpl$Builder setField(com.android.tools.r8.references.FieldReference):39:39 -> a
     1:1:com.android.tools.r8.diagnostic.MissingDefinitionInfo build():44:44 -> b
-com.android.tools.r8.diagnostic.internal.MissingMethodInfoImpl -> com.android.tools.r8.internal.xF:
+com.android.tools.r8.diagnostic.internal.MissingMethodInfoImpl -> com.android.tools.r8.internal.yF:
     com.android.tools.r8.references.MethodReference methodReference -> b
     1:1:void <init>(com.android.tools.r8.references.MethodReference,java.util.Collection,com.android.tools.r8.diagnostic.internal.MissingMethodInfoImpl$1):13:13 -> <init>
     2:3:void <init>(com.android.tools.r8.references.MethodReference,java.util.Collection):19:20 -> <init>
     1:1:com.android.tools.r8.diagnostic.internal.MissingMethodInfoImpl$Builder builder():24:24 -> a
     1:1:com.android.tools.r8.references.MethodReference getMethodReference():29:29 -> getMethodReference
-com.android.tools.r8.diagnostic.internal.MissingMethodInfoImpl$Builder -> com.android.tools.r8.internal.wF:
+com.android.tools.r8.diagnostic.internal.MissingMethodInfoImpl$Builder -> com.android.tools.r8.internal.xF:
     com.android.tools.r8.references.MethodReference methodReference -> b
     1:1:void <init>(com.android.tools.r8.diagnostic.internal.MissingMethodInfoImpl$1):32:32 -> <init>
     2:2:void <init>():36:36 -> <init>
@@ -23404,7 +23403,7 @@
     1:1:com.android.tools.r8.dump.DumpOptions$Builder setMinification(boolean):335:335 -> c
     1:1:com.android.tools.r8.dump.DumpOptions$Builder setOptimizeMultidexForLinearAlloc(boolean):305:305 -> d
     1:1:com.android.tools.r8.dump.DumpOptions$Builder setTreeShaking(boolean):340:340 -> e
-com.android.tools.r8.dump.ProguardConfigSanitizer -> com.android.tools.r8.internal.DN:
+com.android.tools.r8.dump.ProguardConfigSanitizer -> com.android.tools.r8.internal.EN:
     java.lang.Runnable dontOptimizeCallback -> e
     java.lang.Runnable dontShrinkCallback -> d
     java.util.function.Consumer printDirectivesCallback -> c
@@ -23599,14 +23598,14 @@
     1:1:com.android.tools.r8.references.ClassReference getMissingType():58:58 -> getMissingType
     1:1:com.android.tools.r8.origin.Origin getOrigin():47:47 -> getOrigin
     1:1:com.android.tools.r8.position.Position getPosition():53:53 -> getPosition
-com.android.tools.r8.errors.InternalCompilerError -> com.android.tools.r8.internal.lu:
+com.android.tools.r8.errors.InternalCompilerError -> com.android.tools.r8.internal.mu:
     1:1:void <init>():17:17 -> <init>
     2:2:void <init>(java.lang.String):21:21 -> <init>
     3:3:void <init>(java.lang.String,java.lang.Throwable):25:25 -> <init>
     4:4:void <init>(java.lang.Throwable):29:29 -> <init>
-com.android.tools.r8.errors.InvalidDebugInfoException -> com.android.tools.r8.internal.Cu:
+com.android.tools.r8.errors.InvalidDebugInfoException -> com.android.tools.r8.internal.Du:
     1:1:void <init>(java.lang.String):9:9 -> <init>
-com.android.tools.r8.errors.InvalidDescriptorException -> com.android.tools.r8.internal.Du:
+com.android.tools.r8.errors.InvalidDescriptorException -> com.android.tools.r8.internal.Eu:
     1:1:void <init>(java.lang.String):8:8 -> <init>
 com.android.tools.r8.errors.InvalidLibrarySuperclassDiagnostic -> com.android.tools.r8.errors.InvalidLibrarySuperclassDiagnostic:
     com.android.tools.r8.references.ClassReference invalidSuperType -> e
@@ -23625,7 +23624,7 @@
     60:70:java.lang.String getDiagnosticMessage():59:69 -> getDiagnosticMessage
     1:1:com.android.tools.r8.origin.Origin getOrigin():47:47 -> getOrigin
     1:1:com.android.tools.r8.position.Position getPosition():52:52 -> getPosition
-com.android.tools.r8.errors.InvokeCustomDiagnostic -> com.android.tools.r8.internal.Iu:
+com.android.tools.r8.errors.InvokeCustomDiagnostic -> com.android.tools.r8.internal.Ju:
     1:1:void <init>():9:9 -> <init>
     1:1:java.lang.String getDiagnosticMessage():13:13 -> getDiagnosticMessage
 com.android.tools.r8.errors.MissingNestHostNestDesugarDiagnostic -> com.android.tools.r8.errors.MissingNestHostNestDesugarDiagnostic:
@@ -23638,14 +23637,14 @@
     1:1:java.lang.String getDiagnosticMessage():36:36 -> getDiagnosticMessage
     1:1:com.android.tools.r8.origin.Origin getOrigin():26:26 -> getOrigin
     1:1:com.android.tools.r8.position.Position getPosition():31:31 -> getPosition
-com.android.tools.r8.errors.PrivateInterfaceMethodDiagnostic -> com.android.tools.r8.internal.ZM:
+com.android.tools.r8.errors.PrivateInterfaceMethodDiagnostic -> com.android.tools.r8.internal.aN:
     com.android.tools.r8.position.MethodPosition position -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():11:11 -> <clinit>
     1:3:void <init>(com.android.tools.r8.position.MethodPosition):15:17 -> <init>
     1:3:java.lang.String getDiagnosticMessage():27:27 -> getDiagnosticMessage
     1:1:com.android.tools.r8.position.Position getPosition():22:22 -> getPosition
-com.android.tools.r8.errors.StaticInterfaceMethodDiagnostic -> com.android.tools.r8.internal.EW:
+com.android.tools.r8.errors.StaticInterfaceMethodDiagnostic -> com.android.tools.r8.internal.FW:
     com.android.tools.r8.position.MethodPosition position -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():11:11 -> <clinit>
@@ -23679,7 +23678,7 @@
     1:1:void <init>():10:10 -> <init>
     boolean matches(com.android.tools.r8.graph.DexType) -> a
     boolean validate(com.android.tools.r8.utils.InternalOptions) -> a
-com.android.tools.r8.errors.dontwarn.NonEmptyDontWarnConfiguration -> com.android.tools.r8.internal.EH:
+com.android.tools.r8.errors.dontwarn.NonEmptyDontWarnConfiguration -> com.android.tools.r8.internal.FH:
     java.util.List dontWarnPatterns -> a
     java.util.Map matchedDontWarnPatterns -> b
     boolean $assertionsDisabled -> c
@@ -23858,7 +23857,7 @@
     1:1:com.android.tools.r8.references.MethodReference getReference():21:21 -> getReference
     1:1:int hashCode():32:32 -> hashCode
     1:1:java.lang.String toString():37:37 -> toString
-com.android.tools.r8.experimental.startup.StartupConfiguration -> com.android.tools.r8.internal.pW:
+com.android.tools.r8.experimental.startup.StartupConfiguration -> com.android.tools.r8.internal.qW:
     java.util.List startupClasses -> a
     1:2:void <init>(java.util.List,java.util.List):26:27 -> <init>
     1:20:com.android.tools.r8.experimental.startup.StartupConfiguration createStartupConfiguration(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.utils.Reporter):48:67 -> a
@@ -24622,247 +24621,280 @@
     com.android.tools.r8.errors.dontwarn.DontWarnConfiguration dontWarnConfiguration -> d
     java.lang.Thread mainThread -> G
     com.android.tools.r8.androidapi.ComputedApiLevel computedMinApiLevel -> I
-    1:1:void <clinit>():63:63 -> <clinit>
-    1:1:void <init>(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.graph.AppView$WholeProgramOptimizations,com.android.tools.r8.ir.desugar.TypeRewriter):129:129 -> <init>
-    2:76:void <init>(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.graph.AppView$WholeProgramOptimizations,com.android.tools.r8.ir.desugar.TypeRewriter):75:149 -> <init>
-    1:1:boolean hasMainDexRootSet():527:527 -> A
-    1:1:boolean hasProguardCompatibilityActions():551:551 -> B
-    1:1:boolean hasUnboxedEnums():626:626 -> C
-    1:1:boolean hasVerticallyMergedClasses():599:599 -> D
-    1:1:com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses horizontallyMergedClasses():584:584 -> E
-    1:1:com.android.tools.r8.graph.InitClassLens initClassLens():469:469 -> F
-    1:1:com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoFactory instanceFieldInitializationInfoFactory():207:207 -> G
-    1:1:boolean isAllCodeProcessed():260:260 -> H
-    1:1:com.android.tools.r8.ir.optimize.library.LibraryMemberOptimizer libraryMethodOptimizer():358:358 -> I
-    1:4:void loadApplyMappingSeedMapper():844:847 -> J
-    5:5:void loadApplyMappingSeedMapper():846:846 -> J
-    1:1:com.android.tools.r8.utils.InternalOptions options():498:498 -> K
-    1:1:com.android.tools.r8.ir.analysis.proto.ProtoShrinker protoShrinker():366:366 -> L
-    1:1:com.android.tools.r8.shaking.RootSetUtils$RootSet rootSet():514:514 -> M
-    1:1:void setAllCodeProcessed():264:264 -> N
-    1:1:com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory simpleInliningConstraintFactory():211:211 -> O
-    1:1:com.android.tools.r8.ir.optimize.enums.EnumDataMap unboxedEnums():630:630 -> P
-    2:2:com.android.tools.r8.ir.optimize.enums.EnumDataMap com.android.tools.r8.ir.optimize.enums.EnumDataMap.empty():20:20 -> P
-    2:2:com.android.tools.r8.ir.optimize.enums.EnumDataMap unboxedEnums():630 -> P
-    1:4:boolean validateUnboxedEnumsHaveBeenPruned():640:643 -> Q
-    1:1:com.android.tools.r8.graph.classmerging.VerticallyMergedClasses verticallyMergedClasses():607:607 -> R
-    1:1:com.android.tools.r8.graph.AppView withClassHierarchy():655:655 -> S
-    com.android.tools.r8.graph.AppView withLiveness() -> T
-    1:1:com.android.tools.r8.graph.AppView withoutClassHierarchy():662:662 -> U
-    2:2:boolean hasClassHierarchy():650:650 -> U
-    2:2:com.android.tools.r8.graph.AppView withoutClassHierarchy():662 -> U
-    3:3:com.android.tools.r8.graph.AppView withoutClassHierarchy():662:662 -> U
-    1:431:java.lang.Object withGeneratedMessageLiteBuilderShrinker(java.util.function.Function,java.lang.Object):0:430 -> a
-    432:432:com.android.tools.r8.graph.AppView createForD8(com.android.tools.r8.graph.AppInfo):168:168 -> a
-    433:434:com.android.tools.r8.ir.desugar.TypeRewriter defaultTypeRewriter(com.android.tools.r8.graph.AppInfo):163:164 -> a
-    433:434:com.android.tools.r8.graph.AppView createForD8(com.android.tools.r8.graph.AppInfo):168 -> a
-    435:435:com.android.tools.r8.graph.AppView createForD8(com.android.tools.r8.graph.AppInfo):168:168 -> a
-    436:436:com.android.tools.r8.graph.AppView createForD8(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.ir.desugar.TypeRewriter):172:172 -> a
-    437:437:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication):176:176 -> a
-    438:439:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):181:182 -> a
-    440:440:com.android.tools.r8.features.ClassToFeatureSplitMap com.android.tools.r8.features.ClassToFeatureSplitMap.createInitialClassToFeatureSplitMap(com.android.tools.r8.utils.InternalOptions):51:51 -> a
-    440:440:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):182 -> a
-    441:441:com.android.tools.r8.features.ClassToFeatureSplitMap com.android.tools.r8.features.ClassToFeatureSplitMap.createInitialClassToFeatureSplitMap(com.android.tools.r8.utils.InternalOptions):50:50 -> a
-    441:441:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):182 -> a
-    442:444:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):184:186 -> a
-    445:446:com.android.tools.r8.ir.desugar.TypeRewriter defaultTypeRewriter(com.android.tools.r8.graph.AppInfo):163:164 -> a
-    445:446:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):186 -> a
-    447:447:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):186:186 -> a
-    448:448:com.android.tools.r8.graph.AppView createForTracer(com.android.tools.r8.graph.AppInfoWithClassHierarchy):199:199 -> a
-    449:450:com.android.tools.r8.ir.desugar.TypeRewriter defaultTypeRewriter(com.android.tools.r8.graph.AppInfo):163:164 -> a
-    449:450:com.android.tools.r8.graph.AppView createForTracer(com.android.tools.r8.graph.AppInfoWithClassHierarchy):199 -> a
-    451:451:com.android.tools.r8.graph.AppView createForTracer(com.android.tools.r8.graph.AppInfoWithClassHierarchy):199:199 -> a
-    452:452:void setAppServices(com.android.tools.r8.graph.AppServices):278:278 -> a
-    453:453:void setClassesEscapingIntoLibrary(java.util.function.Predicate):291:291 -> a
-    454:454:void setSourceDebugExtensionForType(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexValue$DexValueString):295:295 -> a
-    455:455:com.android.tools.r8.graph.DexValue$DexValueString getSourceDebugExtensionForType(com.android.tools.r8.graph.DexClass):299:299 -> a
-    456:456:com.android.tools.r8.graph.DexItemFactory dexItemFactory():328:328 -> a
-    457:458:void withArgumentPropagator(com.android.tools.r8.utils.ThrowingConsumer):352:353 -> a
-    459:459:java.lang.Object withProtoEnumShrinker(java.util.function.Function,java.lang.Object):384:384 -> a
-    460:460:boolean com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.isEnumLiteProtoShrinkingEnabled():1661:1661 -> a
-    460:460:java.lang.Object withProtoEnumShrinker(java.util.function.Function,java.lang.Object):384 -> a
+    1:1:void <clinit>():64:64 -> <clinit>
+    1:1:void <init>(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.graph.AppView$WholeProgramOptimizations,com.android.tools.r8.ir.desugar.TypeRewriter,com.android.tools.r8.utils.Timing):138:138 -> <init>
+    2:93:void <init>(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.graph.AppView$WholeProgramOptimizations,com.android.tools.r8.ir.desugar.TypeRewriter,com.android.tools.r8.utils.Timing):76:167 -> <init>
+    1:1:boolean hasMainDexRootSet():547:547 -> A
+    1:1:boolean hasProguardCompatibilityActions():571:571 -> B
+    1:1:boolean hasUnboxedEnums():646:646 -> C
+    1:1:boolean hasVerticallyMergedClasses():619:619 -> D
+    1:1:com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses horizontallyMergedClasses():604:604 -> E
+    1:1:com.android.tools.r8.graph.InitClassLens initClassLens():489:489 -> F
+    1:1:com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoFactory instanceFieldInitializationInfoFactory():227:227 -> G
+    1:1:boolean isAllCodeProcessed():280:280 -> H
+    1:1:com.android.tools.r8.errors.dontwarn.DontWarnConfiguration lambda$new$1():148:148 -> I
+    1:1:com.android.tools.r8.ir.optimize.library.LibraryMethodSideEffectModelCollection lambda$new$2():160:160 -> J
+    1:1:com.android.tools.r8.ir.analysis.proto.ProtoShrinker lambda$new$4():163:163 -> K
+    2:8:com.android.tools.r8.ir.analysis.proto.ProtoShrinker com.android.tools.r8.ir.analysis.proto.ProtoShrinker.create(com.android.tools.r8.graph.AppView):58:64 -> K
+    2:8:com.android.tools.r8.ir.analysis.proto.ProtoShrinker lambda$new$4():163 -> K
+    9:9:com.android.tools.r8.utils.Reporter reporter():522:522 -> K
+    9:9:com.android.tools.r8.ir.analysis.proto.ProtoShrinker com.android.tools.r8.ir.analysis.proto.ProtoShrinker.create(com.android.tools.r8.graph.AppView):66 -> K
+    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():1642:1642 -> 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)"]}
-    461:461:java.lang.Object withProtoEnumShrinker(java.util.function.Function,java.lang.Object):385:385 -> a
-    462:463:java.lang.Object withGeneratedExtensionRegistryShrinker(java.util.function.Function,java.lang.Object):399:400 -> a
-    464:464:void setCodeLens(com.android.tools.r8.graph.GraphLens):440:440 -> a
-    465:465:void setInitClassLens(com.android.tools.r8.graph.InitClassLens):477:477 -> a
-    466:466:void setInitializedClassesInInstanceMethods(com.android.tools.r8.graph.analysis.InitializedClassesInInstanceMethodsAnalysis$InitializedClassesInInstanceMethods):482:482 -> a
-    467:467:com.android.tools.r8.utils.InternalOptions$TestingOptions testing():506:506 -> a
-    467:467:boolean checkForTesting(java.util.function.Supplier):860 -> a
-    468:468:boolean checkForTesting(java.util.function.Supplier):860:860 -> a
-    469:469:void setRootSet(com.android.tools.r8.shaking.RootSetUtils$RootSet):518:518 -> a
-    470:471:void setMainDexRootSet(com.android.tools.r8.shaking.RootSetUtils$MainDexRootSet):522:523 -> a
-    472:472:com.android.tools.r8.shaking.KeepInfoCollection getKeepInfo():535:535 -> a
-    472:472:com.android.tools.r8.shaking.KeepClassInfo getKeepInfo(com.android.tools.r8.graph.DexProgramClass):539 -> a
-    473:473:com.android.tools.r8.shaking.KeepClassInfo getKeepInfo(com.android.tools.r8.graph.DexProgramClass):539:539 -> a
-    474:474:com.android.tools.r8.shaking.KeepInfoCollection getKeepInfo():535:535 -> a
-    474:474:com.android.tools.r8.shaking.KeepFieldInfo getKeepInfo(com.android.tools.r8.graph.ProgramField):543 -> a
-    475:475:com.android.tools.r8.shaking.KeepFieldInfo getKeepInfo(com.android.tools.r8.graph.ProgramField):543:543 -> a
-    476:476:com.android.tools.r8.shaking.KeepFieldInfo com.android.tools.r8.shaking.KeepInfoCollection.getFieldInfo(com.android.tools.r8.graph.ProgramField):118:118 -> a
-    476:476:com.android.tools.r8.shaking.KeepFieldInfo getKeepInfo(com.android.tools.r8.graph.ProgramField):543 -> a
-    477:477:com.android.tools.r8.shaking.KeepInfoCollection getKeepInfo():535:535 -> a
-    477:477:com.android.tools.r8.shaking.KeepMethodInfo getKeepInfo(com.android.tools.r8.graph.ProgramMethod):547 -> a
-    478:478:com.android.tools.r8.shaking.KeepMethodInfo getKeepInfo(com.android.tools.r8.graph.ProgramMethod):547:547 -> a
-    479:479:com.android.tools.r8.shaking.KeepMethodInfo com.android.tools.r8.shaking.KeepInfoCollection.getMethodInfo(com.android.tools.r8.graph.ProgramMethod):105:105 -> a
-    479:479:com.android.tools.r8.shaking.KeepMethodInfo getKeepInfo(com.android.tools.r8.graph.ProgramMethod):547 -> a
-    480:481:void setProguardCompatibilityActions(com.android.tools.r8.shaking.ProguardCompatibilityActions):560:561 -> a
-    482:482:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):589:589 -> a
-    483:483:boolean hasHorizontallyMergedClasses():576:576 -> a
-    483:483:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):589 -> a
-    484:484:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):589:589 -> a
-    485:485:com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses horizontallyMergedClasses():584:584 -> a
-    485:485:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):590 -> a
-    486:487:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):590:591 -> a
-    488:488:com.android.tools.r8.utils.InternalOptions$TestingOptions testing():506:506 -> a
-    488:488:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):592 -> a
-    489:491:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):592:594 -> a
-    492:492:com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses horizontallyMergedClasses():584:584 -> a
-    492:492:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):594 -> a
-    493:493:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):594:594 -> a
-    494:495:void setVerticallyMergedClasses(com.android.tools.r8.graph.classmerging.VerticallyMergedClasses):611:612 -> a
-    496:496:com.android.tools.r8.utils.InternalOptions$TestingOptions testing():506:506 -> a
-    496:496:void setVerticallyMergedClasses(com.android.tools.r8.graph.classmerging.VerticallyMergedClasses):613 -> a
-    497:497:void setVerticallyMergedClasses(com.android.tools.r8.graph.classmerging.VerticallyMergedClasses):613:613 -> a
-    498:498:void setOpenClosedInterfacesCollection(com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection):622:622 -> a
-    499:500:void setUnboxedEnums(com.android.tools.r8.ir.optimize.enums.EnumDataMap):634:635 -> a
-    501:501:com.android.tools.r8.utils.InternalOptions$TestingOptions testing():506:506 -> a
-    501:501:void setUnboxedEnums(com.android.tools.r8.ir.optimize.enums.EnumDataMap):636 -> a
-    502:502:void setUnboxedEnums(com.android.tools.r8.ir.optimize.enums.EnumDataMap):636:636 -> a
-    503:503:boolean hasLiveness():667:667 -> a
-    503:503:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):806 -> a
+    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():1643:1646 -> 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
+    20:20:com.android.tools.r8.ir.analysis.proto.ProtoShrinker lambda$new$4():163 -> K
+    1:2:com.android.tools.r8.androidapi.AndroidApiLevelCompute com.android.tools.r8.androidapi.AndroidApiLevelCompute.create(com.android.tools.r8.graph.AppView):48:49 -> L
+    1:2:com.android.tools.r8.androidapi.AndroidApiLevelCompute lambda$new$5():165 -> L
+    3:3:com.android.tools.r8.androidapi.AndroidApiLevelCompute com.android.tools.r8.androidapi.AndroidApiLevelCompute.noAndroidApiLevelCompute():54:54 -> L
+    3:3:com.android.tools.r8.androidapi.AndroidApiLevelCompute com.android.tools.r8.androidapi.AndroidApiLevelCompute.create(com.android.tools.r8.graph.AppView):50 -> L
+    3:3:com.android.tools.r8.androidapi.AndroidApiLevelCompute lambda$new$5():165 -> L
+    1:1:com.android.tools.r8.androidapi.ComputedApiLevel lambda$new$6():168:168 -> M
+    1:1:com.android.tools.r8.ir.optimize.library.LibraryMemberOptimizer libraryMethodOptimizer():378:378 -> N
+    1:4:void loadApplyMappingSeedMapper():864:867 -> O
+    5:5:void loadApplyMappingSeedMapper():866:866 -> O
+    1:1:com.android.tools.r8.utils.InternalOptions options():518:518 -> P
+    1:1:com.android.tools.r8.ir.analysis.proto.ProtoShrinker protoShrinker():386:386 -> Q
+    1:1:com.android.tools.r8.shaking.RootSetUtils$RootSet rootSet():534:534 -> R
+    1:1:void setAllCodeProcessed():284:284 -> S
+    1:1:com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory simpleInliningConstraintFactory():231:231 -> T
+    1:1:com.android.tools.r8.ir.optimize.enums.EnumDataMap unboxedEnums():650:650 -> U
+    2:2:com.android.tools.r8.ir.optimize.enums.EnumDataMap com.android.tools.r8.ir.optimize.enums.EnumDataMap.empty():20:20 -> U
+    2:2:com.android.tools.r8.ir.optimize.enums.EnumDataMap unboxedEnums():650 -> U
+    1:4:boolean validateUnboxedEnumsHaveBeenPruned():660:663 -> V
+    1:1:com.android.tools.r8.graph.classmerging.VerticallyMergedClasses verticallyMergedClasses():627:627 -> W
+    1:1:com.android.tools.r8.graph.AppView withClassHierarchy():675:675 -> X
+    com.android.tools.r8.graph.AppView withLiveness() -> Y
+    1:1:com.android.tools.r8.graph.AppView withoutClassHierarchy():682:682 -> Z
+    2:2:boolean hasClassHierarchy():670:670 -> Z
+    2:2:com.android.tools.r8.graph.AppView withoutClassHierarchy():682 -> Z
+    3:3:com.android.tools.r8.graph.AppView withoutClassHierarchy():682:682 -> Z
+    1:1:com.android.tools.r8.ir.optimize.library.LibraryMemberOptimizer lambda$new$3(com.android.tools.r8.utils.Timing):162:162 -> a
+    2:2:com.android.tools.r8.graph.AppView createForD8(com.android.tools.r8.graph.AppInfo):187:187 -> a
+    3:4:com.android.tools.r8.ir.desugar.TypeRewriter defaultTypeRewriter(com.android.tools.r8.graph.AppInfo):182:183 -> a
+    3:4:com.android.tools.r8.graph.AppView createForD8(com.android.tools.r8.graph.AppInfo):187 -> a
+    5:5:void <init>(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.graph.AppView$WholeProgramOptimizations,com.android.tools.r8.ir.desugar.TypeRewriter):131:131 -> a
+    5:5:com.android.tools.r8.graph.AppView createForD8(com.android.tools.r8.graph.AppInfo):187 -> a
+    6:6:com.android.tools.r8.graph.AppView createForD8(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.ir.desugar.TypeRewriter,com.android.tools.r8.utils.Timing):192:192 -> a
+    7:7:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication):196:196 -> a
+    8:9:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):201:202 -> a
+    10:10:com.android.tools.r8.features.ClassToFeatureSplitMap com.android.tools.r8.features.ClassToFeatureSplitMap.createInitialClassToFeatureSplitMap(com.android.tools.r8.utils.InternalOptions):51:51 -> a
+    10:10:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):202 -> a
+    11:11:com.android.tools.r8.features.ClassToFeatureSplitMap com.android.tools.r8.features.ClassToFeatureSplitMap.createInitialClassToFeatureSplitMap(com.android.tools.r8.utils.InternalOptions):50:50 -> a
+    11:11:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):202 -> a
+    12:14:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):204:206 -> a
+    15:16:com.android.tools.r8.ir.desugar.TypeRewriter defaultTypeRewriter(com.android.tools.r8.graph.AppInfo):182:183 -> a
+    15:16:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):206 -> a
+    17:17:void <init>(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.graph.AppView$WholeProgramOptimizations,com.android.tools.r8.ir.desugar.TypeRewriter):131:131 -> a
+    17:17:com.android.tools.r8.graph.AppView createForR8(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.shaking.MainDexInfo):206 -> a
+    18:18:com.android.tools.r8.graph.AppView createForL8(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.ir.desugar.TypeRewriter):210:210 -> a
+    19:19:void <init>(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.graph.AppView$WholeProgramOptimizations,com.android.tools.r8.ir.desugar.TypeRewriter):131:131 -> a
+    19:19:com.android.tools.r8.graph.AppView createForL8(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.ir.desugar.TypeRewriter):210 -> a
+    20:20:com.android.tools.r8.graph.AppView createForTracer(com.android.tools.r8.graph.AppInfoWithClassHierarchy):219:219 -> a
+    21:22:com.android.tools.r8.ir.desugar.TypeRewriter defaultTypeRewriter(com.android.tools.r8.graph.AppInfo):182:183 -> a
+    21:22:com.android.tools.r8.graph.AppView createForTracer(com.android.tools.r8.graph.AppInfoWithClassHierarchy):219 -> a
+    23:23:void <init>(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.graph.AppView$WholeProgramOptimizations,com.android.tools.r8.ir.desugar.TypeRewriter):131:131 -> a
+    23:23:com.android.tools.r8.graph.AppView createForTracer(com.android.tools.r8.graph.AppInfoWithClassHierarchy):219 -> a
+    24:24:void setAppServices(com.android.tools.r8.graph.AppServices):298:298 -> a
+    25:25:void setClassesEscapingIntoLibrary(java.util.function.Predicate):311:311 -> a
+    26:26:void setSourceDebugExtensionForType(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexValue$DexValueString):315:315 -> a
+    27:27:com.android.tools.r8.graph.DexValue$DexValueString getSourceDebugExtensionForType(com.android.tools.r8.graph.DexClass):319:319 -> a
+    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():1661:1661 -> 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)"]}
-    504:504:boolean hasLiveness():667:667 -> a
-    504:504:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):806 -> a
-    505:506:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):808:809 -> a
-    507:507:com.android.tools.r8.graph.AppServices appServices():274:274 -> a
-    507:507:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):811 -> a
-    508:508:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):811:811 -> a
-    509:509:boolean hasInitClassLens():473:473 -> a
-    509:509:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):812 -> a
-    510:510:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):813:813 -> a
-    511:511:void setInitClassLens(com.android.tools.r8.graph.InitClassLens):477:477 -> a
-    511:511:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):813 -> a
-    512:512:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):815:815 -> a
-    513:513:com.android.tools.r8.shaking.ProguardCompatibilityActions getProguardCompatibilityActions():555:555 -> a
-    513:513:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):817 -> a
-    514:514:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):817:817 -> a
-    515:518:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):816:819 -> a
-    519:519:com.android.tools.r8.shaking.RootSetUtils$MainDexRootSet getMainDexRootSet():531:531 -> a
-    519:519:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):820 -> a
-    520:520:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):820:820 -> a
-    521:521:void setMainDexRootSet(com.android.tools.r8.shaking.RootSetUtils$MainDexRootSet):523:523 -> a
-    521:521:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):820 -> a
-    522:522:com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection getOpenClosedInterfacesCollection():617:617 -> a
-    522:522:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):823 -> a
-    523:523:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):823:823 -> a
-    524:524:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):822:822 -> a
-    525:525:boolean hasRootSet():510:510 -> a
-    525:525:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):824 -> a
-    526:526:void lambda$rewriteWithLens$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):825:825 -> a
-    527:529:com.android.tools.r8.utils.OptionalBool isSubtype(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType):680:682 -> a
-    530:530:boolean isCfByteCodePassThrough(com.android.tools.r8.graph.DexEncodedMethod):686:686 -> a
-    531:531:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
-    531:531:boolean isCfByteCodePassThrough(com.android.tools.r8.graph.DexEncodedMethod):686 -> a
+    33:33:java.lang.Object withProtoEnumShrinker(java.util.function.Function,java.lang.Object):405:405 -> a
+    34:35:java.lang.Object withGeneratedExtensionRegistryShrinker(java.util.function.Function,java.lang.Object):419:420 -> a
+    36:37:java.lang.Object withGeneratedMessageLiteBuilderShrinker(java.util.function.Function,java.lang.Object):449:450 -> a
+    38:38:void setCodeLens(com.android.tools.r8.graph.GraphLens):460:460 -> a
+    39:39:void setInitClassLens(com.android.tools.r8.graph.InitClassLens):497:497 -> a
+    40:40:void setInitializedClassesInInstanceMethods(com.android.tools.r8.graph.analysis.InitializedClassesInInstanceMethodsAnalysis$InitializedClassesInInstanceMethods):502:502 -> a
+    41:41:com.android.tools.r8.utils.InternalOptions$TestingOptions testing():526:526 -> a
+    41:41:boolean checkForTesting(java.util.function.Supplier):880 -> a
+    42:42:boolean checkForTesting(java.util.function.Supplier):880:880 -> a
+    43:43:void setRootSet(com.android.tools.r8.shaking.RootSetUtils$RootSet):538:538 -> a
+    44:45:void setMainDexRootSet(com.android.tools.r8.shaking.RootSetUtils$MainDexRootSet):542:543 -> a
+    46:46:com.android.tools.r8.shaking.KeepInfoCollection getKeepInfo():555:555 -> a
+    46:46:com.android.tools.r8.shaking.KeepClassInfo getKeepInfo(com.android.tools.r8.graph.DexProgramClass):559 -> a
+    47:47:com.android.tools.r8.shaking.KeepClassInfo getKeepInfo(com.android.tools.r8.graph.DexProgramClass):559:559 -> a
+    48:48:com.android.tools.r8.shaking.KeepInfoCollection getKeepInfo():555:555 -> a
+    48:48:com.android.tools.r8.shaking.KeepFieldInfo getKeepInfo(com.android.tools.r8.graph.ProgramField):563 -> a
+    49:49:com.android.tools.r8.shaking.KeepFieldInfo getKeepInfo(com.android.tools.r8.graph.ProgramField):563:563 -> a
+    50:50:com.android.tools.r8.shaking.KeepFieldInfo com.android.tools.r8.shaking.KeepInfoCollection.getFieldInfo(com.android.tools.r8.graph.ProgramField):118:118 -> a
+    50:50:com.android.tools.r8.shaking.KeepFieldInfo getKeepInfo(com.android.tools.r8.graph.ProgramField):563 -> a
+    51:51:com.android.tools.r8.shaking.KeepInfoCollection getKeepInfo():555:555 -> a
+    51:51:com.android.tools.r8.shaking.KeepMethodInfo getKeepInfo(com.android.tools.r8.graph.ProgramMethod):567 -> a
+    52:52:com.android.tools.r8.shaking.KeepMethodInfo getKeepInfo(com.android.tools.r8.graph.ProgramMethod):567:567 -> a
+    53:53:com.android.tools.r8.shaking.KeepMethodInfo com.android.tools.r8.shaking.KeepInfoCollection.getMethodInfo(com.android.tools.r8.graph.ProgramMethod):105:105 -> a
+    53:53:com.android.tools.r8.shaking.KeepMethodInfo getKeepInfo(com.android.tools.r8.graph.ProgramMethod):567 -> a
+    54:55:void setProguardCompatibilityActions(com.android.tools.r8.shaking.ProguardCompatibilityActions):580:581 -> a
+    56:56:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):609:609 -> a
+    57:57:boolean hasHorizontallyMergedClasses():596:596 -> a
+    57:57:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):609 -> a
+    58:58:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):609:609 -> a
+    59:59:com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses horizontallyMergedClasses():604:604 -> a
+    59:59:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):610 -> a
+    60:61:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):610:611 -> a
+    62:62:com.android.tools.r8.utils.InternalOptions$TestingOptions testing():526:526 -> a
+    62:62:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):612 -> a
+    63:65:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):612:614 -> a
+    66:66:com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses horizontallyMergedClasses():604:604 -> a
+    66:66:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):614 -> a
+    67:67:void setHorizontallyMergedClasses(com.android.tools.r8.horizontalclassmerging.HorizontallyMergedClasses,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):614:614 -> a
+    68:69:void setVerticallyMergedClasses(com.android.tools.r8.graph.classmerging.VerticallyMergedClasses):631:632 -> a
+    70:70:com.android.tools.r8.utils.InternalOptions$TestingOptions testing():526:526 -> a
+    70:70:void setVerticallyMergedClasses(com.android.tools.r8.graph.classmerging.VerticallyMergedClasses):633 -> a
+    71:71:void setVerticallyMergedClasses(com.android.tools.r8.graph.classmerging.VerticallyMergedClasses):633:633 -> a
+    72:72:void setOpenClosedInterfacesCollection(com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection):642:642 -> a
+    73:74:void setUnboxedEnums(com.android.tools.r8.ir.optimize.enums.EnumDataMap):654:655 -> a
+    75:75:com.android.tools.r8.utils.InternalOptions$TestingOptions testing():526:526 -> a
+    75:75:void setUnboxedEnums(com.android.tools.r8.ir.optimize.enums.EnumDataMap):656 -> a
+    76:76:void setUnboxedEnums(com.android.tools.r8.ir.optimize.enums.EnumDataMap):656:656 -> a
+    77:77:boolean hasLiveness():687:687 -> a
+    77:77:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):826 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    532:532:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
-    532:532:boolean isCfByteCodePassThrough(com.android.tools.r8.graph.DexEncodedMethod):686 -> a
-    533:537:boolean isCfByteCodePassThrough(com.android.tools.r8.graph.DexEncodedMethod):689:693 -> a
-    538:547:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):702:711 -> a
-    548:548:void pruneAppInfo(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):737:737 -> a
-    548:548:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):713 -> a
-    549:549:com.android.tools.r8.graph.AppServices appServices():274:274 -> a
-    549:549:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):715 -> a
-    550:552:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):716:718 -> a
-    553:553:com.android.tools.r8.shaking.ProguardCompatibilityActions getProguardCompatibilityActions():555:555 -> a
-    553:553:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):720 -> a
-    554:554:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):720:720 -> a
-    555:555:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):719:719 -> a
-    556:556:boolean hasRootSet():510:510 -> a
-    556:556:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):722 -> a
-    557:560:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):723:726 -> a
-    561:561:void setMainDexRootSet(com.android.tools.r8.shaking.RootSetUtils$MainDexRootSet):523:523 -> a
-    561:561:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):726 -> a
-    562:564:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):728:728 -> a
-    565:567:void rewriteWithLensAndApplication(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens):753:755 -> a
-    568:587:void rewriteWithLens(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens):767:786 -> a
-    588:588:boolean com.android.tools.r8.graph.GraphLens.isMemberRebindingLens():0:0 -> a
-    588:588:void rewriteWithLens(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens):792 -> a
-    589:598:void rewriteWithLens(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens):794:803 -> a
-    599:599:boolean lambda$rewriteWithLens$0(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):788:788 -> a
-    600:600:boolean com.android.tools.r8.graph.GraphLens.isMemberRebindingLens():0:0 -> a
-    600:600:boolean lambda$rewriteWithLens$0(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):788 -> a
-    601:601:boolean com.android.tools.r8.graph.GraphLens.isMemberRebindingIdentityLens():0:0 -> a
-    601:601:boolean lambda$rewriteWithLens$0(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):788 -> a
-    602:603:void setAlreadyLibraryDesugared(java.util.Set):831:832 -> a
-    1:493:java.lang.Object withInitializedClassesInInstanceMethods(java.util.function.Function,java.lang.Object):0:492 -> b
-    494:494:com.android.tools.r8.graph.AppView createForL8(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.ir.desugar.TypeRewriter):190:190 -> b
-    495:495:com.android.tools.r8.graph.AppView createForRelocator(com.android.tools.r8.graph.AppInfo):194:194 -> b
-    496:497:com.android.tools.r8.ir.desugar.TypeRewriter defaultTypeRewriter(com.android.tools.r8.graph.AppInfo):163:164 -> b
-    496:497:com.android.tools.r8.graph.AppView createForRelocator(com.android.tools.r8.graph.AppInfo):194 -> b
-    498:498:com.android.tools.r8.graph.AppView createForRelocator(com.android.tools.r8.graph.AppInfo):194:194 -> b
-    499:499:com.android.tools.r8.ir.analysis.value.AbstractValueFactory abstractValueFactory():203:203 -> b
-    500:501:void withGeneratedExtensionRegistryShrinker(com.android.tools.r8.utils.ThrowingConsumer):392:393 -> b
-    502:503:java.lang.Object withGeneratedMessageLiteShrinker(java.util.function.Function,java.lang.Object):421:422 -> b
-    504:511:boolean setGraphLens(com.android.tools.r8.graph.GraphLens):449:456 -> b
-    512:512:boolean com.android.tools.r8.graph.GraphLens.isAppliedLens():0:0 -> b
-    512:512:boolean setGraphLens(com.android.tools.r8.graph.GraphLens):456 -> b
-    513:513:boolean com.android.tools.r8.graph.GraphLens.isClearCodeRewritingLens():0:0 -> b
-    513:513:boolean setGraphLens(com.android.tools.r8.graph.GraphLens):456 -> b
-    514:514:void setCodeLens(com.android.tools.r8.graph.GraphLens):440:440 -> b
-    514:514:boolean setGraphLens(com.android.tools.r8.graph.GraphLens):457 -> b
-    515:515:void setCfByteCodePassThrough(java.util.Set):486:486 -> b
-    516:516:void rewriteWithLens(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):742:742 -> b
-    517:521:boolean isAlreadyLibraryDesugared(com.android.tools.r8.graph.DexProgramClass):836:840 -> b
-    1:379:java.lang.Object withProtoShrinker(java.util.function.Function,java.lang.Object):0:378 -> c
-    380:380:boolean isModeled(com.android.tools.r8.graph.DexType):159:159 -> c
-    381:383:com.android.tools.r8.graph.AppView setAppInfo(com.android.tools.r8.graph.AppInfo):244:246 -> c
-    384:384:void unsetAppInfoForDesugaring():240:240 -> c
-    384:384:com.android.tools.r8.graph.AppView setAppInfo(com.android.tools.r8.graph.AppInfo):247 -> c
-    385:388:com.android.tools.r8.graph.AppView setAppInfo(com.android.tools.r8.graph.AppInfo):249:252 -> c
-    389:390:void withGeneratedMessageLiteBuilderShrinker(com.android.tools.r8.utils.ThrowingConsumer):414:415 -> c
-    391:391:com.android.tools.r8.graph.classmerging.MergedClassesCollection allMergedClasses():565:565 -> c
-    392:392:boolean hasHorizontallyMergedClasses():576:576 -> c
-    392:392:com.android.tools.r8.graph.classmerging.MergedClassesCollection allMergedClasses():566 -> c
-    393:396:com.android.tools.r8.graph.classmerging.MergedClassesCollection allMergedClasses():567:570 -> c
-    1:1:com.android.tools.r8.graph.ClassResolutionResult contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):304:304 -> d
-    2:3:void withGeneratedMessageLiteShrinker(com.android.tools.r8.utils.ThrowingConsumer):407:408 -> d
-    4:4:com.android.tools.r8.androidapi.AndroidApiLevelCompute apiLevelCompute():864:864 -> d
-    1:1:com.android.tools.r8.graph.DexApplication app():215:215 -> e
-    2:2:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType):309:309 -> e
-    3:4:void withProtoShrinker(com.android.tools.r8.utils.ThrowingConsumer):371:372 -> e
-    1:2:com.android.tools.r8.graph.AppInfo appInfo():219:220 -> f
-    3:4:boolean isClassEscapingIntoLibrary(com.android.tools.r8.graph.DexType):286:287 -> f
-    1:9:com.android.tools.r8.graph.AppInfoWithClassHierarchy appInfoForDesugaring():228:236 -> g
-    1:1:com.android.tools.r8.shaking.AppInfoWithLiveness appInfoWithLiveness():224:224 -> h
-    1:1:com.android.tools.r8.graph.AppServices appServices():274:274 -> i
-    1:1:boolean canUseInitClass():465:465 -> j
+    78:78:boolean hasLiveness():687:687 -> a
+    78:78:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):826 -> a
+    79:80:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):828:829 -> a
+    81:81:com.android.tools.r8.graph.AppServices appServices():294:294 -> a
+    81:81:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):831 -> a
+    82:82:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):831:831 -> a
+    83:83:boolean hasInitClassLens():493:493 -> a
+    83:83:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):832 -> a
+    84:84:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):833:833 -> a
+    85:85:void setInitClassLens(com.android.tools.r8.graph.InitClassLens):497:497 -> a
+    85:85:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):833 -> a
+    86:86:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):835:835 -> a
+    87:87:com.android.tools.r8.shaking.ProguardCompatibilityActions getProguardCompatibilityActions():575:575 -> a
+    87:87:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):837 -> a
+    88:88:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):837:837 -> a
+    89:92:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):836:839 -> a
+    93:93:com.android.tools.r8.shaking.RootSetUtils$MainDexRootSet getMainDexRootSet():551:551 -> a
+    93:93:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):840 -> a
+    94:94:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):840:840 -> a
+    95:95:void setMainDexRootSet(com.android.tools.r8.shaking.RootSetUtils$MainDexRootSet):543:543 -> a
+    95:95:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):840 -> a
+    96:96:com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection getOpenClosedInterfacesCollection():637:637 -> a
+    96:96:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):843 -> a
+    97:97:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):843:843 -> a
+    98:98:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):842:842 -> a
+    99:99:boolean hasRootSet():530:530 -> a
+    99:99:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):844 -> a
+    100:100:void lambda$rewriteWithLens$8(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):845:845 -> a
+    101:103:com.android.tools.r8.utils.OptionalBool isSubtype(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType):700:702 -> a
+    104:104:boolean isCfByteCodePassThrough(com.android.tools.r8.graph.DexEncodedMethod):706:706 -> a
+    105:105:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
+    105:105:boolean isCfByteCodePassThrough(com.android.tools.r8.graph.DexEncodedMethod):706 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    106:106:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
+    106:106:boolean isCfByteCodePassThrough(com.android.tools.r8.graph.DexEncodedMethod):706 -> a
+    107:111:boolean isCfByteCodePassThrough(com.android.tools.r8.graph.DexEncodedMethod):709:713 -> a
+    112:121:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):722:731 -> a
+    122:122:void pruneAppInfo(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):757:757 -> a
+    122:122:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):733 -> a
+    123:123:com.android.tools.r8.graph.AppServices appServices():294:294 -> a
+    123:123:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):735 -> a
+    124:126:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):736:738 -> a
+    127:127:com.android.tools.r8.shaking.ProguardCompatibilityActions getProguardCompatibilityActions():575:575 -> a
+    127:127:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):740 -> a
+    128:128:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):740:740 -> a
+    129:129:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):739:739 -> a
+    130:130:boolean hasRootSet():530:530 -> a
+    130:130:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):742 -> a
+    131:134:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):743:746 -> a
+    135:135:void setMainDexRootSet(com.android.tools.r8.shaking.RootSetUtils$MainDexRootSet):543:543 -> a
+    135:135:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):746 -> a
+    136:138:void pruneItems(com.android.tools.r8.graph.PrunedItems,java.util.concurrent.ExecutorService):748:748 -> a
+    139:141:void rewriteWithLensAndApplication(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.GraphLens):773:775 -> a
+    142:161:void rewriteWithLens(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens):787:806 -> a
+    162:162:boolean com.android.tools.r8.graph.GraphLens.isMemberRebindingLens():0:0 -> a
+    162:162:void rewriteWithLens(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens):812 -> a
+    163:172:void rewriteWithLens(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens):814:823 -> a
+    173:173:boolean lambda$rewriteWithLens$7(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):808:808 -> a
+    174:174:boolean com.android.tools.r8.graph.GraphLens.isMemberRebindingLens():0:0 -> a
+    174:174:boolean lambda$rewriteWithLens$7(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):808 -> a
+    175:175:boolean com.android.tools.r8.graph.GraphLens.isMemberRebindingIdentityLens():0:0 -> a
+    175:175:boolean lambda$rewriteWithLens$7(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):808 -> a
+    176:177:void setAlreadyLibraryDesugared(java.util.Set):851:852 -> a
+    1:1:com.android.tools.r8.graph.AppView createForRelocator(com.android.tools.r8.graph.AppInfo):214:214 -> b
+    2:3:com.android.tools.r8.ir.desugar.TypeRewriter defaultTypeRewriter(com.android.tools.r8.graph.AppInfo):182:183 -> b
+    2:3:com.android.tools.r8.graph.AppView createForRelocator(com.android.tools.r8.graph.AppInfo):214 -> b
+    4:4:void <init>(com.android.tools.r8.graph.AppInfo,com.android.tools.r8.graph.AppView$WholeProgramOptimizations,com.android.tools.r8.ir.desugar.TypeRewriter):131:131 -> b
+    4:4:com.android.tools.r8.graph.AppView createForRelocator(com.android.tools.r8.graph.AppInfo):214 -> b
+    5:5:com.android.tools.r8.ir.analysis.value.AbstractValueFactory abstractValueFactory():223:223 -> b
+    6:7:void withGeneratedExtensionRegistryShrinker(com.android.tools.r8.utils.ThrowingConsumer):412:413 -> b
+    8:9:java.lang.Object withGeneratedMessageLiteShrinker(java.util.function.Function,java.lang.Object):441:442 -> b
+    10:17:boolean setGraphLens(com.android.tools.r8.graph.GraphLens):469:476 -> b
+    18:18:boolean com.android.tools.r8.graph.GraphLens.isAppliedLens():0:0 -> b
+    18:18:boolean setGraphLens(com.android.tools.r8.graph.GraphLens):476 -> b
+    19:19:boolean com.android.tools.r8.graph.GraphLens.isClearCodeRewritingLens():0:0 -> b
+    19:19:boolean setGraphLens(com.android.tools.r8.graph.GraphLens):476 -> b
+    20:20:void setCodeLens(com.android.tools.r8.graph.GraphLens):460:460 -> b
+    20:20:boolean setGraphLens(com.android.tools.r8.graph.GraphLens):477 -> b
+    21:21:void setCfByteCodePassThrough(java.util.Set):506:506 -> b
+    22:23:java.lang.Object withInitializedClassesInInstanceMethods(java.util.function.Function,java.lang.Object):511:512 -> b
+    24:24:void rewriteWithLens(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):762:762 -> b
+    25:29:boolean isAlreadyLibraryDesugared(com.android.tools.r8.graph.DexProgramClass):856:860 -> b
+    1:1:com.android.tools.r8.contexts.CompilationContext lambda$new$0(com.android.tools.r8.graph.AppInfo):143:143 -> c
+    2:2:boolean isModeled(com.android.tools.r8.graph.DexType):178:178 -> c
+    3:4:java.lang.Object withProtoShrinker(java.util.function.Function,java.lang.Object):397:398 -> c
+    5:6:void withGeneratedMessageLiteBuilderShrinker(com.android.tools.r8.utils.ThrowingConsumer):434:435 -> c
+    7:7:com.android.tools.r8.graph.classmerging.MergedClassesCollection allMergedClasses():585:585 -> c
+    8:8:boolean hasHorizontallyMergedClasses():596:596 -> c
+    8:8:com.android.tools.r8.graph.classmerging.MergedClassesCollection allMergedClasses():586 -> c
+    9:12:com.android.tools.r8.graph.classmerging.MergedClassesCollection allMergedClasses():587:590 -> c
+    1:3:com.android.tools.r8.graph.AppView setAppInfo(com.android.tools.r8.graph.AppInfo):264:266 -> d
+    4:4:void unsetAppInfoForDesugaring():260:260 -> d
+    4:4:com.android.tools.r8.graph.AppView setAppInfo(com.android.tools.r8.graph.AppInfo):267 -> d
+    5:8:com.android.tools.r8.graph.AppView setAppInfo(com.android.tools.r8.graph.AppInfo):269:272 -> d
+    9:9:com.android.tools.r8.graph.ClassResolutionResult contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):324:324 -> d
+    10:11:void withGeneratedMessageLiteShrinker(com.android.tools.r8.utils.ThrowingConsumer):427:428 -> d
+    12:12:com.android.tools.r8.androidapi.AndroidApiLevelCompute apiLevelCompute():884:884 -> d
+    1:1:com.android.tools.r8.graph.DexApplication app():235:235 -> e
+    2:2:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType):329:329 -> e
+    3:4:void withProtoShrinker(com.android.tools.r8.utils.ThrowingConsumer):391:392 -> e
+    1:2:com.android.tools.r8.graph.AppInfo appInfo():239:240 -> f
+    3:4:boolean isClassEscapingIntoLibrary(com.android.tools.r8.graph.DexType):306:307 -> f
+    1:9:com.android.tools.r8.graph.AppInfoWithClassHierarchy appInfoForDesugaring():248:256 -> g
+    1:1:com.android.tools.r8.shaking.AppInfoWithLiveness appInfoWithLiveness():244:244 -> h
+    1:1:com.android.tools.r8.graph.AppServices appServices():294:294 -> i
+    1:1:boolean canUseInitClass():485:485 -> j
     2:2:boolean com.android.tools.r8.graph.InitClassLens.isFinal():0:0 -> j
-    2:2:boolean canUseInitClass():465 -> j
-    1:1:void clearApplyMappingSeedMapper():856:856 -> k
-    1:1:com.android.tools.r8.graph.GraphLens clearCodeRewritings():268:268 -> l
+    2:2:boolean canUseInitClass():485 -> j
+    1:1:void clearApplyMappingSeedMapper():876:876 -> k
+    1:1:com.android.tools.r8.graph.GraphLens clearCodeRewritings():288:288 -> l
     2:2:com.android.tools.r8.graph.GraphLens com.android.tools.r8.graph.GraphLens.withCodeRewritingsApplied(com.android.tools.r8.graph.DexItemFactory):579:579 -> l
-    2:2:com.android.tools.r8.graph.GraphLens clearCodeRewritings():268 -> l
+    2:2:com.android.tools.r8.graph.GraphLens clearCodeRewritings():288 -> l
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     3:3:com.android.tools.r8.graph.GraphLens com.android.tools.r8.graph.GraphLens.withCodeRewritingsApplied(com.android.tools.r8.graph.DexItemFactory):580:580 -> l
-    3:3:com.android.tools.r8.graph.GraphLens clearCodeRewritings():268 -> l
-    4:4:com.android.tools.r8.graph.GraphLens clearCodeRewritings():269:269 -> l
-    1:1:com.android.tools.r8.graph.GraphLens codeLens():436:436 -> m
-    1:1:com.android.tools.r8.androidapi.ComputedApiLevel computedMinApiLevel():868:868 -> n
-    1:1:com.android.tools.r8.contexts.CompilationContext$ProcessorContext createProcessorContext():342:342 -> o
-    2:2:boolean verifyMainThread():153:153 -> o
-    2:2:com.android.tools.r8.contexts.CompilationContext$ProcessorContext createProcessorContext():342 -> o
-    3:3:com.android.tools.r8.contexts.CompilationContext$ProcessorContext createProcessorContext():343:343 -> o
-    1:1:boolean enableWholeProgramOptimizations():332:332 -> p
-    1:1:com.android.tools.r8.naming.SeedMapper getApplyMappingSeedMapper():852:852 -> q
-    1:1:com.android.tools.r8.errors.dontwarn.DontWarnConfiguration getDontWarnConfiguration():282:282 -> r
-    1:1:com.android.tools.r8.shaking.KeepInfoCollection getKeepInfo():535:535 -> s
-    1:1:com.android.tools.r8.ir.optimize.library.LibraryMethodSideEffectModelCollection getLibraryMethodSideEffectModelCollection():362:362 -> t
-    1:1:com.android.tools.r8.shaking.RootSetUtils$MainDexRootSet getMainDexRootSet():531:531 -> u
-    1:1:com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection getOpenClosedInterfacesCollection():617:617 -> v
-    1:1:com.android.tools.r8.shaking.ProguardCompatibilityActions getProguardCompatibilityActions():555:555 -> w
-    1:1:com.android.tools.r8.synthesis.SyntheticItems getSyntheticItems():347:347 -> x
-    1:1:com.android.tools.r8.graph.GraphLens graphLens():444:444 -> y
-    1:1:boolean hasCfByteCodePassThroughMethods():697:697 -> z
+    3:3:com.android.tools.r8.graph.GraphLens clearCodeRewritings():288 -> l
+    4:4:com.android.tools.r8.graph.GraphLens clearCodeRewritings():289:289 -> l
+    1:1:com.android.tools.r8.graph.GraphLens codeLens():456:456 -> m
+    1:1:com.android.tools.r8.androidapi.ComputedApiLevel computedMinApiLevel():888:888 -> n
+    1:1:com.android.tools.r8.contexts.CompilationContext$ProcessorContext createProcessorContext():362:362 -> o
+    2:2:boolean verifyMainThread():172:172 -> o
+    2:2:com.android.tools.r8.contexts.CompilationContext$ProcessorContext createProcessorContext():362 -> o
+    3:3:com.android.tools.r8.contexts.CompilationContext$ProcessorContext createProcessorContext():363:363 -> o
+    1:1:boolean enableWholeProgramOptimizations():352:352 -> p
+    1:1:com.android.tools.r8.naming.SeedMapper getApplyMappingSeedMapper():872:872 -> q
+    1:1:com.android.tools.r8.errors.dontwarn.DontWarnConfiguration getDontWarnConfiguration():302:302 -> r
+    1:1:com.android.tools.r8.shaking.KeepInfoCollection getKeepInfo():555:555 -> s
+    1:1:com.android.tools.r8.ir.optimize.library.LibraryMethodSideEffectModelCollection getLibraryMethodSideEffectModelCollection():382:382 -> t
+    1:1:com.android.tools.r8.shaking.RootSetUtils$MainDexRootSet getMainDexRootSet():551:551 -> u
+    1:1:com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection getOpenClosedInterfacesCollection():637:637 -> v
+    1:1:com.android.tools.r8.shaking.ProguardCompatibilityActions getProguardCompatibilityActions():575:575 -> w
+    1:1:com.android.tools.r8.synthesis.SyntheticItems getSyntheticItems():367:367 -> x
+    1:1:com.android.tools.r8.graph.GraphLens graphLens():464:464 -> y
+    1:1:boolean hasCfByteCodePassThroughMethods():717:717 -> z
 com.android.tools.r8.graph.ApplicationReaderMap -> com.android.tools.r8.internal.v2:
     1:1:void <init>():9:9 -> <init>
     java.lang.String getDescriptor(java.lang.String) -> a
@@ -25866,7 +25898,7 @@
     85:87:com.android.tools.r8.graph.DexAnnotation createSystemValueAnnotation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.graph.DexValue):298:300 -> a
     88:92:com.android.tools.r8.graph.DexValue getSystemValueAnnotationValue(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexAnnotation):305:309 -> a
     93:114:com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind getSynthesizedClassAnnotationInfo(com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexItemFactory):410:431 -> a
-    115:116:com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind.fromDescriptor(java.lang.String):119:120 -> a
+    115:116:com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind.fromDescriptor(java.lang.String):123:124 -> a
     115:116:com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind getSynthesizedClassAnnotationInfo(com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexItemFactory):430 -> a
     117:124:com.android.tools.r8.graph.DexAnnotation rewrite(java.util.function.Function):436:443 -> a
     1:1:com.android.tools.r8.graph.DexEncodedAnnotation lambda$specify$0(com.android.tools.r8.graph.DexAnnotation):60:60 -> b
@@ -28750,7 +28782,7 @@
     212:219:com.android.tools.r8.ir.analysis.type.ReferenceTypeElement createReferenceTypeElement(com.android.tools.r8.graph.DexType,com.android.tools.r8.ir.analysis.type.Nullability,com.android.tools.r8.graph.AppView):2855:2862 -> a
     220:251:com.android.tools.r8.ir.analysis.type.ReferenceTypeElement createReferenceTypeElement(com.android.tools.r8.graph.DexType,com.android.tools.r8.ir.analysis.type.Nullability,com.android.tools.r8.graph.AppView):2861:2892 -> a
     252:257:com.android.tools.r8.ir.analysis.type.ReferenceTypeElement lambda$createReferenceTypeElement$9(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.Nullability,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexType):2869:2874 -> a
-    258:268:com.android.tools.r8.utils.OptionalBool com.android.tools.r8.graph.AppView.isInterface(com.android.tools.r8.graph.DexType):313:323 -> a
+    258:268:com.android.tools.r8.utils.OptionalBool com.android.tools.r8.graph.AppView.isInterface(com.android.tools.r8.graph.DexType):333:343 -> a
     258:268:com.android.tools.r8.ir.analysis.type.ReferenceTypeElement lambda$createReferenceTypeElement$9(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.Nullability,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexType):2875 -> a
     269:274:com.android.tools.r8.ir.analysis.type.ReferenceTypeElement lambda$createReferenceTypeElement$9(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.Nullability,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexType):2875:2880 -> a
     275:289:com.android.tools.r8.ir.analysis.type.ReferenceTypeElement lambda$createReferenceTypeElement$9(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.type.Nullability,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DexType):2876:2890 -> a
@@ -31806,7 +31838,7 @@
     82:82:void lambda$create$0(java.util.Map,com.android.tools.r8.graph.ProgramMethod):158:158 -> a
     83:84:com.android.tools.r8.graph.GenericSignatureContextBuilder$TypeParameterContext computeTypeParameterContext(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexReference,java.util.function.Predicate):203:204 -> a
     85:89:com.android.tools.r8.graph.GenericSignatureContextBuilder$TypeParameterContext computeTypeParameterContext(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexReference,java.util.function.Predicate,boolean):213:217 -> a
-    90:90:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    90:90:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     90:90:com.android.tools.r8.graph.GenericSignatureContextBuilder$TypeParameterContext computeTypeParameterContext(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexReference,java.util.function.Predicate,boolean):222 -> a
     91:99:com.android.tools.r8.graph.GenericSignatureContextBuilder$TypeParameterContext computeTypeParameterContext(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexReference,java.util.function.Predicate,boolean):223:231 -> a
     100:100:java.util.List com.android.tools.r8.graph.GenericSignature$ClassSignature.getFormalTypeParameters():258:258 -> a
@@ -31908,10 +31940,10 @@
     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
-    30:30:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    30:30:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     30:30:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult evaluateSignaturesForClass(com.android.tools.r8.graph.DexProgramClass):140 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    31:31:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    31:31:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     31:31:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult evaluateSignaturesForClass(com.android.tools.r8.graph.DexProgramClass):140 -> a
     32:41:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult evaluateSignaturesForClass(com.android.tools.r8.graph.DexProgramClass):140:149 -> a
     42:42:com.android.tools.r8.origin.Origin com.android.tools.r8.graph.DexClass.getOrigin():778:778 -> a
@@ -31930,10 +31962,10 @@
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     56:56:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult lambda$evaluateSignaturesForClass$0(com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$GenericSignatureContextEvaluator,com.android.tools.r8.graph.GenericSignatureContextBuilder$TypeParameterContext,com.android.tools.r8.graph.GenericSignature$MethodTypeSignature):161:161 -> a
     57:58:void lambda$evaluateSignaturesForClass$1(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult):166:167 -> a
-    59:59:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    59:59:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     59:59:void lambda$evaluateSignaturesForClass$1(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult):167 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    60:60:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    60:60:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     60:60:void lambda$evaluateSignaturesForClass$1(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult):167 -> a
     61:71:void lambda$evaluateSignaturesForClass$1(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult):167:177 -> a
     72:72:com.android.tools.r8.origin.Origin com.android.tools.r8.graph.DexClass.getOrigin():778:778 -> a
@@ -31943,10 +31975,10 @@
     74:81:void lambda$evaluateSignaturesForClass$1(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult):174:181 -> a
     82:82:com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult lambda$evaluateSignaturesForClass$2(com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$GenericSignatureContextEvaluator,com.android.tools.r8.graph.GenericSignatureContextBuilder$TypeParameterContext,com.android.tools.r8.graph.GenericSignature$FieldTypeSignature):190:190 -> a
     83:86:void lambda$evaluateSignaturesForClass$3(com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult):193:196 -> a
-    87:87:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    87:87:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     87:87:void lambda$evaluateSignaturesForClass$3(com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult):196 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    88:88:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    88:88:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     88:88:void lambda$evaluateSignaturesForClass$3(com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult):196 -> a
     89:98:void lambda$evaluateSignaturesForClass$3(com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.GenericSignatureCorrectnessHelper$SignatureEvaluationResult):196:205 -> a
     99:99:com.android.tools.r8.origin.Origin com.android.tools.r8.graph.DexClass.getOrigin():778:778 -> a
@@ -32528,10 +32560,10 @@
     112:112:com.android.tools.r8.com.google.common.collect.ImmutableSet rewriteTypes(java.util.Set):708 -> a
     113:115:com.android.tools.r8.com.google.common.collect.ImmutableSet rewriteTypes(java.util.Set):708:710 -> a
     116:132:boolean verifyMappingToOriginalProgram(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication):727:743 -> a
-    133:133:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
+    133:133:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
     133:133:boolean verifyMappingToOriginalProgram(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication):743 -> a
-    134:134:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    134:134:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
+    134:134:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    134:134:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
     134:134:boolean verifyMappingToOriginalProgram(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication):743 -> a
     135:141:boolean verifyMappingToOriginalProgram(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication):746:752 -> a
     142:142:boolean verifyMappingToOriginalProgram(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexApplication):0:0 -> a
@@ -32887,7 +32919,7 @@
     1:1:int computeHashCode():66:66 -> n0
     1:1:int estimatedDexCodeSizeUpperBoundInBytes():56:56 -> r0
     1:1:java.lang.String toString():42:42 -> toString
-com.android.tools.r8.graph.JarApplicationReader -> com.android.tools.r8.internal.Bv:
+com.android.tools.r8.graph.JarApplicationReader -> com.android.tools.r8.internal.Cv:
     com.android.tools.r8.graph.ApplicationReaderMap applicationReaderMap -> e
     java.util.concurrent.ConcurrentHashMap stringCache -> d
     com.android.tools.r8.utils.InternalOptions options -> a
@@ -32966,113 +32998,113 @@
     16:16:void com.android.tools.r8.org.objectweb.asm.ClassReader.<init>(byte[]):166:166 -> a
     16:16:void internalRead(com.android.tools.r8.origin.Origin,byte[]):109 -> a
     16:16:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
-    17:26:void internalRead(com.android.tools.r8.origin.Origin,byte[]):115:124 -> a
-    17:26:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
-    27:39:void internalRead(com.android.tools.r8.origin.Origin,byte[]):122:134 -> a
-    27:39:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
-    40:44:void internalRead(com.android.tools.r8.origin.Origin,byte[]):132:136 -> a
-    40:44:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
-    45:45:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory() -> a
-    45:45:void internalRead(com.android.tools.r8.origin.Origin,byte[]):136 -> a
+    17:29:void internalRead(com.android.tools.r8.origin.Origin,byte[]):115:127 -> a
+    17:29:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
+    30:42:void internalRead(com.android.tools.r8.origin.Origin,byte[]):125:137 -> a
+    30:42:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
+    43:47:void internalRead(com.android.tools.r8.origin.Origin,byte[]):135:139 -> a
+    43:47:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
+    48:48:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    48:48:void internalRead(com.android.tools.r8.origin.Origin,byte[]):139 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    45:45:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
-    46:46:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    46:46:void internalRead(com.android.tools.r8.origin.Origin,byte[]):136 -> a
-    46:46:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
-    47:47:void internalRead(com.android.tools.r8.origin.Origin,byte[]):136:136 -> a
-    47:47:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
-    48:48:void internalRead(com.android.tools.r8.origin.Origin,byte[]):101:101 -> a
     48:48:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
-    49:49:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30:30 -> a
-    49:49:void internalRead(com.android.tools.r8.origin.Origin,byte[]):101 -> a
+    49:49:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    49:49:void internalRead(com.android.tools.r8.origin.Origin,byte[]):139 -> a
     49:49:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
-    50:50:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
-    50:50:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
-    50:50:void internalRead(com.android.tools.r8.origin.Origin,byte[]):101 -> a
+    50:50:void internalRead(com.android.tools.r8.origin.Origin,byte[]):139:139 -> a
     50:50:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
     51:51:void internalRead(com.android.tools.r8.origin.Origin,byte[]):101:101 -> a
     51:51:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
-    52:54:com.android.tools.r8.graph.MethodAccessFlags createMethodAccessFlags(java.lang.String,int):155:157 -> a
-    55:58:void lambda$createAnnotationVisitor$1(java.util.List,int,java.lang.String,com.android.tools.r8.graph.JarApplicationReader,java.util.List,java.util.List):169:169 -> a
-    59:63:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):608:612 -> a
-    59:63:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    64:67:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.DexAnnotationSet.findDuplicateEntryType(java.util.List):78:81 -> a
-    64:67:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):612 -> a
-    64:67:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    68:68:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):614:614 -> a
-    68:68:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    69:69:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":82,"2":83,"3":84}}
-    82:82:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):614:614 -> a
-    82:82:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    83:83:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):614:614 -> a
-    83:83:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    84:84:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):614:614 -> a
-    84:84:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    70:70:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":85,"2":86,"3":87,"4":88}}
-    85:85:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):615:615 -> a
-    85:85:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    86:86:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):615:615 -> a
-    86:86:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    87:87:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):615:615 -> a
-    87:87:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    88:88:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):615:615 -> a
-    88:88:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    71:71:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String):22:22 -> a
-    71:71:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):615 -> a
+    52:52:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30:30 -> a
+    52:52:void internalRead(com.android.tools.r8.origin.Origin,byte[]):101 -> a
+    52:52:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
+    53:53:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
+    53:53:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
+    53:53:void internalRead(com.android.tools.r8.origin.Origin,byte[]):101 -> a
+    53:53:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
+    54:54:void internalRead(com.android.tools.r8.origin.Origin,byte[]):101:101 -> a
+    54:54:void lambda$read$0(com.android.tools.r8.origin.Origin,byte[]):96 -> a
+    55:57:com.android.tools.r8.graph.MethodAccessFlags createMethodAccessFlags(java.lang.String,int):158:160 -> a
+    58:61:void lambda$createAnnotationVisitor$1(java.util.List,int,java.lang.String,com.android.tools.r8.graph.JarApplicationReader,java.util.List,java.util.List):172:172 -> a
+    62:66:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):611:615 -> a
+    62:66:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    67:70:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.DexAnnotationSet.findDuplicateEntryType(java.util.List):78:81 -> a
+    67:70:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):615 -> a
+    67:70:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    71:71:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):617:617 -> a
     71:71:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    72:72:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30:30 -> a
-    72:72:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String):22 -> a
-    72:72:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):615 -> a
-    72:72:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    73:76:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):615:618 -> a
-    73:76:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
-    77:77:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):609:609 -> a
-    77:77:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    72:72:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":85,"2":86,"3":87}}
+    85:85:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):617:617 -> a
+    85:85:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    86:86:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):617:617 -> a
+    86:86:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    87:87:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):617:617 -> a
+    87:87:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    73:73:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":88,"2":89,"3":90,"4":91}}
+    88:88:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):618:618 -> a
+    88:88:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    89:89:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):618:618 -> a
+    89:89:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    90:90:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):618:618 -> a
+    90:90:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    91:91:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):618:618 -> a
+    91:91:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    74:74:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String):22:22 -> a
+    74:74:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):618 -> a
+    74:74:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    75:75:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30:30 -> a
+    75:75:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String):22 -> a
+    75:75:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):618 -> a
+    75:75:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    76:79:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):618:621 -> a
+    76:79:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
+    80:80:com.android.tools.r8.graph.DexAnnotationSet createAnnotationSet(java.util.List,com.android.tools.r8.utils.InternalOptions):612:612 -> a
+    80:80:com.android.tools.r8.graph.DexAnnotationSet access$200(java.util.List,com.android.tools.r8.utils.InternalOptions):73 -> a
     1:1:void read(com.android.tools.r8.origin.Origin,byte[]):96:96 -> b
     2:2:void com.android.tools.r8.utils.ExceptionUtils.withOriginAttachmentHandler(com.android.tools.r8.origin.Origin,java.lang.Runnable):225:225 -> b
     2:2:void read(com.android.tools.r8.origin.Origin,byte[]):96 -> b
-    3:3:com.android.tools.r8.graph.FieldAccessFlags createFieldAccessFlags(int):150:150 -> b
-    4:4:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor createAnnotationVisitor(java.lang.String,boolean,java.util.List,com.android.tools.r8.graph.JarApplicationReader):163:163 -> b
-    5:5:boolean retainCompileTimeAnnotation(java.lang.String,com.android.tools.r8.graph.JarApplicationReader):179:179 -> b
-    5:5:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor createAnnotationVisitor(java.lang.String,boolean,java.util.List,com.android.tools.r8.graph.JarApplicationReader):164 -> b
-    6:6:boolean retainCompileTimeAnnotation(java.lang.String,com.android.tools.r8.graph.JarApplicationReader):178:178 -> b
-    6:6:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor createAnnotationVisitor(java.lang.String,boolean,java.util.List,com.android.tools.r8.graph.JarApplicationReader):164 -> b
-    7:7:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor createAnnotationVisitor(java.lang.String,boolean,java.util.List,com.android.tools.r8.graph.JarApplicationReader):166:166 -> b
-    8:10:com.android.tools.r8.graph.DexEncodedAnnotation createEncodedAnnotation(java.lang.String,java.util.List,java.util.List,com.android.tools.r8.graph.JarApplicationReader):184:184 -> b
-    12:16:com.android.tools.r8.graph.DexEncodedAnnotation createEncodedAnnotation(java.lang.String,java.util.List,java.util.List,com.android.tools.r8.graph.JarApplicationReader):186:190 -> b
+    3:3:com.android.tools.r8.graph.FieldAccessFlags createFieldAccessFlags(int):153:153 -> b
+    4:4:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor createAnnotationVisitor(java.lang.String,boolean,java.util.List,com.android.tools.r8.graph.JarApplicationReader):166:166 -> b
+    5:5:boolean retainCompileTimeAnnotation(java.lang.String,com.android.tools.r8.graph.JarApplicationReader):182:182 -> b
+    5:5:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor createAnnotationVisitor(java.lang.String,boolean,java.util.List,com.android.tools.r8.graph.JarApplicationReader):167 -> b
+    6:6:boolean retainCompileTimeAnnotation(java.lang.String,com.android.tools.r8.graph.JarApplicationReader):181:181 -> b
+    6:6:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor createAnnotationVisitor(java.lang.String,boolean,java.util.List,com.android.tools.r8.graph.JarApplicationReader):167 -> b
+    7:7:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor createAnnotationVisitor(java.lang.String,boolean,java.util.List,com.android.tools.r8.graph.JarApplicationReader):169:169 -> b
+    8:10:com.android.tools.r8.graph.DexEncodedAnnotation createEncodedAnnotation(java.lang.String,java.util.List,java.util.List,com.android.tools.r8.graph.JarApplicationReader):187:187 -> b
+    12:16:com.android.tools.r8.graph.DexEncodedAnnotation createEncodedAnnotation(java.lang.String,java.util.List,java.util.List,com.android.tools.r8.graph.JarApplicationReader):189:193 -> b
 com.android.tools.r8.graph.JarClassFileReader$CreateAnnotationVisitor -> com.android.tools.r8.graph.t2:
     java.util.List values -> e
     java.util.List names -> d
     com.android.tools.r8.graph.JarApplicationReader application -> b
     boolean $assertionsDisabled -> f
     java.util.function.BiConsumer onVisitEnd -> c
-    1:1:void <clinit>():971:971 -> <clinit>
-    1:1:void <init>(com.android.tools.r8.graph.JarApplicationReader,java.util.function.BiConsumer):980:980 -> <init>
-    2:9:void <init>(com.android.tools.r8.graph.JarApplicationReader,java.util.function.BiConsumer):975:982 -> <init>
-    1:2:void visitEnum(java.lang.String,java.lang.String,java.lang.String):992:993 -> a
+    1:1:void <clinit>():974:974 -> <clinit>
+    1:1:void <init>(com.android.tools.r8.graph.JarApplicationReader,java.util.function.BiConsumer):983:983 -> <init>
+    2:9:void <init>(com.android.tools.r8.graph.JarApplicationReader,java.util.function.BiConsumer):978:985 -> <init>
+    1:2:void visitEnum(java.lang.String,java.lang.String,java.lang.String):995:996 -> a
     3:3:com.android.tools.r8.graph.DexField com.android.tools.r8.graph.JarApplicationReader.getField(com.android.tools.r8.graph.DexType,java.lang.String,java.lang.String):94:94 -> a
-    3:3:void visitEnum(java.lang.String,java.lang.String,java.lang.String):993 -> a
+    3:3:void visitEnum(java.lang.String,java.lang.String,java.lang.String):996 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     4:4:com.android.tools.r8.graph.DexField com.android.tools.r8.graph.JarApplicationReader.getField(com.android.tools.r8.graph.DexType,java.lang.String,java.lang.String):94:94 -> a
-    4:4:void visitEnum(java.lang.String,java.lang.String,java.lang.String):993 -> a
-    5:5:void visitEnum(java.lang.String,java.lang.String,java.lang.String):993:993 -> a
-    6:6:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,java.lang.String):998:998 -> a
-    7:9:void lambda$visitAnnotation$0(java.lang.String,java.lang.String,java.util.List,java.util.List):999:999 -> a
-    10:10:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitArray(java.lang.String):1005:1005 -> a
-    11:12:void lambda$visitArray$1(java.lang.String,java.util.List,java.util.List):1006:1007 -> a
-    13:13:void visitEnd():1013:1013 -> a
-    14:19:void addElement(java.lang.String,com.android.tools.r8.graph.DexValue):1018:1023 -> a
-    20:41:com.android.tools.r8.graph.DexValue getDexValue(java.lang.Object):1089:1110 -> a
-    20:41:void visit(java.lang.String,java.lang.Object):987 -> a
-    42:97:com.android.tools.r8.graph.DexValue$DexValueArray getDexValueArray(java.lang.Object):1027:1082 -> a
-    42:97:com.android.tools.r8.graph.DexValue getDexValue(java.lang.Object):1112 -> a
-    42:97:void visit(java.lang.String,java.lang.Object):987 -> a
-    98:98:void visit(java.lang.String,java.lang.Object):987:987 -> a
-    99:99:com.android.tools.r8.graph.DexValue$DexValueArray getDexValueArray(java.lang.Object):1084:1084 -> a
-    99:99:com.android.tools.r8.graph.DexValue getDexValue(java.lang.Object):1112 -> a
-    99:99:void visit(java.lang.String,java.lang.Object):987 -> a
+    4:4:void visitEnum(java.lang.String,java.lang.String,java.lang.String):996 -> a
+    5:5:void visitEnum(java.lang.String,java.lang.String,java.lang.String):996:996 -> a
+    6:6:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,java.lang.String):1001:1001 -> a
+    7:9:void lambda$visitAnnotation$0(java.lang.String,java.lang.String,java.util.List,java.util.List):1002:1002 -> a
+    10:10:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitArray(java.lang.String):1008:1008 -> a
+    11:12:void lambda$visitArray$1(java.lang.String,java.util.List,java.util.List):1009:1010 -> a
+    13:13:void visitEnd():1016:1016 -> a
+    14:19:void addElement(java.lang.String,com.android.tools.r8.graph.DexValue):1021:1026 -> a
+    20:41:com.android.tools.r8.graph.DexValue getDexValue(java.lang.Object):1092:1113 -> a
+    20:41:void visit(java.lang.String,java.lang.Object):990 -> a
+    42:97:com.android.tools.r8.graph.DexValue$DexValueArray getDexValueArray(java.lang.Object):1030:1085 -> a
+    42:97:com.android.tools.r8.graph.DexValue getDexValue(java.lang.Object):1115 -> a
+    42:97:void visit(java.lang.String,java.lang.Object):990 -> a
+    98:98:void visit(java.lang.String,java.lang.Object):990:990 -> a
+    99:99:com.android.tools.r8.graph.DexValue$DexValueArray getDexValueArray(java.lang.Object):1087:1087 -> a
+    99:99:com.android.tools.r8.graph.DexValue getDexValue(java.lang.Object):1115 -> a
+    99:99:void visit(java.lang.String,java.lang.Object):990 -> a
 com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor -> com.android.tools.r8.graph.u2:
     com.android.tools.r8.graph.ClassKind classKind -> d
     com.android.tools.r8.graph.DexType superType -> l
@@ -33103,262 +33135,262 @@
     java.util.List staticFields -> w
     java.util.Set methodSignatures -> B
     com.android.tools.r8.graph.JarApplicationReader application -> e
-    1:1:void <clinit>():193:193 -> <clinit>
-    1:1:void <init>(com.android.tools.r8.origin.Origin,com.android.tools.r8.graph.ClassKind,byte[],com.android.tools.r8.graph.JarApplicationReader,java.util.function.Consumer):232:232 -> <init>
-    2:40:void <init>(com.android.tools.r8.origin.Origin,com.android.tools.r8.graph.ClassKind,byte[],com.android.tools.r8.graph.JarApplicationReader,java.util.function.Consumer):199:237 -> <init>
+    1:1:void <clinit>():196:196 -> <clinit>
+    1:1:void <init>(com.android.tools.r8.origin.Origin,com.android.tools.r8.graph.ClassKind,byte[],com.android.tools.r8.graph.JarApplicationReader,java.util.function.Consumer):235:235 -> <init>
+    2:40:void <init>(com.android.tools.r8.origin.Origin,com.android.tools.r8.graph.ClassKind,byte[],com.android.tools.r8.graph.JarApplicationReader,java.util.function.Consumer):202:240 -> <init>
     long lambda$getChecksumSupplier$0(long,com.android.tools.r8.graph.DexProgramClass) -> a
     com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int,com.android.tools.r8.org.objectweb.asm.TypePath,java.lang.String,boolean) -> a
-    1:1:com.android.tools.r8.graph.JarClassFileReader$ReparseContext access$1000(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> a
-    2:2:boolean access$1376(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,int):193:193 -> a
-    3:6:void visitAttribute(com.android.tools.r8.org.objectweb.asm.Attribute):242:245 -> a
-    7:9:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):252:254 -> a
+    1:1:com.android.tools.r8.graph.JarClassFileReader$ReparseContext access$1000(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> a
+    2:2:boolean access$1376(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,int):196:196 -> a
+    3:6:void visitAttribute(com.android.tools.r8.org.objectweb.asm.Attribute):245:248 -> a
+    7:9:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):255:257 -> a
     10:10:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":794,"2":795,"3":796,"4":797,"5":798}}
-    794:794:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    795:795:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    796:796:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    797:797:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    798:798:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    264:264:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    265:265:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":799,"2":800,"3":801,"4":802,"5":803}}
-    799:799:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    800:800:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    801:801:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    802:802:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    803:803:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    519:519:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    520:520:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":804,"2":805,"3":806,"4":807,"5":808}}
-    804:804:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    805:805:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    806:806:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    807:807:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    808:808:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    774:777:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):254:254 -> a
-    787:793:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):264:264 -> a
-    809:814:void visitOuterClass(java.lang.String,java.lang.String,java.lang.String):275:280 -> a
-    815:816:void visitOuterClass(java.lang.String,java.lang.String,java.lang.String):279:280 -> a
-    817:819:void visitNestHost(java.lang.String):285:287 -> a
-    820:820:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):310:310 -> a
-    821:821:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":826,"2":827,"3":828}}
-    826:826:java.lang.String illegalClassFilePrefix(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String):298:298 -> a
-    826:826:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):310 -> a
-    827:827:java.lang.String illegalClassFilePrefix(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String):298:298 -> a
-    827:827:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):310 -> a
-    828:828:java.lang.String illegalClassFilePrefix(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String):298:298 -> a
-    828:828:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):310 -> a
-    822:822:java.lang.String illegalClassFilePrefix(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String):299:299 -> a
-    822:822:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):310 -> a
-    823:823:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):310:310 -> a
-    824:824:java.lang.String illegalClassFilePostfix(com.android.tools.r8.cf.CfVersion):305:305 -> a
-    824:824:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):312 -> a
-    825:825:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):312:312 -> a
-    829:852:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):348:371 -> a
-    853:853:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
-    853:853:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
-    853:853:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):371 -> a
-    854:858:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):371:375 -> a
-    859:859:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":2013,"2":2014,"3":2015,"4":2016,"5":2017}}
-    2013:2013:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):375:375 -> a
-    2014:2014:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):375:375 -> a
-    2015:2015:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):375:375 -> a
-    2016:2016:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):375:375 -> a
-    2017:2017:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):375:375 -> a
-    1235:1235:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):376:376 -> a
-    1236:1236:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
-    1236:1236:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
-    1236:1236:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):376 -> a
-    1237:1247:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):376:386 -> a
-    1248:1255:com.android.tools.r8.graph.DexTypeList com.android.tools.r8.graph.JarApplicationReader.getTypeListFromNames(java.lang.String[]):68:75 -> a
-    1248:1255:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):386 -> a
-    1256:1257:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):386:387 -> a
-    1258:1258:boolean com.android.tools.r8.utils.InternalOptions.parseSignatureAttribute():639:639 -> a
-    1258:1258:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):387 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":803,"2":804,"3":805,"4":806,"5":807}}
+    803:803:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    804:804:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    805:805:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    806:806:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    807:807:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    267:267:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    268:268:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":808,"2":809,"3":810,"4":811,"5":812}}
+    808:808:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    809:809:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    810:810:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    811:811:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    812:812:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    525:525:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    526:526:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":813,"2":814,"3":815,"4":816,"5":817}}
+    813:813:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    814:814:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    815:815:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    816:816:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    817:817:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    783:786:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):257:257 -> a
+    796:802:void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int):267:267 -> a
+    818:823:void visitOuterClass(java.lang.String,java.lang.String,java.lang.String):278:283 -> a
+    824:825:void visitOuterClass(java.lang.String,java.lang.String,java.lang.String):282:283 -> a
+    826:828:void visitNestHost(java.lang.String):288:290 -> a
+    829:829:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):313:313 -> a
+    830:830:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":835,"2":836,"3":837}}
+    835:835:java.lang.String illegalClassFilePrefix(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String):301:301 -> a
+    835:835:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):313 -> a
+    836:836:java.lang.String illegalClassFilePrefix(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String):301:301 -> a
+    836:836:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):313 -> a
+    837:837:java.lang.String illegalClassFilePrefix(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String):301:301 -> a
+    837:837:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):313 -> a
+    831:831:java.lang.String illegalClassFilePrefix(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String):302:302 -> a
+    831:831:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):313 -> a
+    832:832:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):313:313 -> a
+    833:833:java.lang.String illegalClassFilePostfix(com.android.tools.r8.cf.CfVersion):308:308 -> a
+    833:833:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):315 -> a
+    834:834:java.lang.String illegalClassFileMessage(com.android.tools.r8.graph.ClassAccessFlags,java.lang.String,com.android.tools.r8.cf.CfVersion,java.lang.String):315:315 -> a
+    838:861:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):351:374 -> a
+    862:862:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
+    862:862:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
+    862:862:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):374 -> a
+    863:867:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):374:378 -> a
+    868:868:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":2031,"2":2032,"3":2033,"4":2034,"5":2035}}
+    2031:2031:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):378:378 -> a
+    2032:2032:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):378:378 -> a
+    2033:2033:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):378:378 -> a
+    2034:2034:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):378:378 -> a
+    2035:2035:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):378:378 -> a
+    1247:1247:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):379:379 -> a
+    1248:1248:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
+    1248:1248:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
+    1248:1248:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):379 -> a
+    1249:1259:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):379:389 -> a
+    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: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)"]}
-    1259:1259:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):388:388 -> a
-    1260:1260:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    1260:1260:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):390 -> a
+    1271:1271:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):391:391 -> a
+    1272:1272:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    1272:1272:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):393 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    1261:1261:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    1261:1261:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):390 -> a
-    1262:1262:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):390:390 -> a
-    1263:1263:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):389:389 -> a
-    1264:1264:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):361:361 -> a
-    1265:1265:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":2018,"2":2019,"3":2020}}
-    2018:2018:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):361:361 -> a
-    2019:2019:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):361:361 -> a
-    2020:2020:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):361:361 -> a
-    1626:1631:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):361:366 -> a
-    1632:1632:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):362:362 -> a
-    1633:1633:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
-    1633:1633:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
-    1633:1633:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):362 -> a
-    1634:1634:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):362:362 -> a
-    1635:1635:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):350:350 -> a
-    1636:1636:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":2021,"2":2022,"3":2023}}
-    2021:2021:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):350:350 -> a
-    2022:2022:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):350:350 -> a
-    2023:2023:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):350:350 -> a
-    1986:1986:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):350:350 -> a
-    1987:1987:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
-    1987:1987:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
-    1987:1987:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):350 -> a
-    1988:1988:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):350:350 -> a
-    2024:2024:void visitSource(java.lang.String,java.lang.String):397:397 -> a
-    2025:2028:java.util.List getAnnotations():595:598 -> a
-    2025:2028:void visitSource(java.lang.String,java.lang.String):400 -> a
-    2029:2031:void visitSource(java.lang.String,java.lang.String):400:402 -> a
-    2032:2032:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    2032:2032:void visitSource(java.lang.String,java.lang.String):402 -> a
+    1273:1273:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    1273:1273:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):393 -> a
+    1274:1274:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):393:393 -> a
+    1275:1275:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):392:392 -> a
+    1276:1276:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):364:364 -> a
+    1277:1277:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":2036,"2":2037,"3":2038}}
+    2036:2036:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):364:364 -> a
+    2037:2037:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):364:364 -> a
+    2038:2038:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):364:364 -> a
+    1641:1646:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):364:369 -> a
+    1647:1647:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):365:365 -> a
+    1648:1648:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
+    1648:1648:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
+    1648:1648:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):365 -> a
+    1649:1649:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):365:365 -> a
+    1650:1650:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):353:353 -> a
+    1651:1651:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":2039,"2":2040,"3":2041}}
+    2039:2039:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):353:353 -> a
+    2040:2040:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):353:353 -> a
+    2041:2041:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):353:353 -> a
+    2004:2004:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):353:353 -> a
+    2005:2005:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
+    2005:2005:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
+    2005:2005:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):353 -> a
+    2006:2006:void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):353:353 -> a
+    2042:2042:void visitSource(java.lang.String,java.lang.String):400:400 -> a
+    2043:2046:java.util.List getAnnotations():598:601 -> a
+    2043:2046:void visitSource(java.lang.String,java.lang.String):403 -> a
+    2047:2049:void visitSource(java.lang.String,java.lang.String):403:405 -> a
+    2050:2050:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    2050:2050:void visitSource(java.lang.String,java.lang.String):405 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    2033:2033:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    2033:2033:void visitSource(java.lang.String,java.lang.String):402 -> a
-    2034:2037:com.android.tools.r8.graph.DexAnnotation com.android.tools.r8.graph.DexAnnotation.createSourceDebugExtensionAnnotation(com.android.tools.r8.graph.DexValue,com.android.tools.r8.graph.DexItemFactory):240:243 -> a
-    2034:2037:void visitSource(java.lang.String,java.lang.String):401 -> a
-    2038:2038:void visitSource(java.lang.String,java.lang.String):400:400 -> a
-    2039:2047:com.android.tools.r8.org.objectweb.asm.FieldVisitor visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object):409:417 -> a
-    2048:2055:com.android.tools.r8.org.objectweb.asm.MethodVisitor visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):423:430 -> a
-    2056:2057:void visitEnd():447:448 -> a
-    2058:2058:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    2058:2058:void visitEnd():449 -> a
+    2051:2051:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    2051:2051:void visitSource(java.lang.String,java.lang.String):405 -> a
+    2052:2055:com.android.tools.r8.graph.DexAnnotation com.android.tools.r8.graph.DexAnnotation.createSourceDebugExtensionAnnotation(com.android.tools.r8.graph.DexValue,com.android.tools.r8.graph.DexItemFactory):240:243 -> a
+    2052:2055:void visitSource(java.lang.String,java.lang.String):404 -> a
+    2056:2056:void visitSource(java.lang.String,java.lang.String):403:403 -> a
+    2057:2065:com.android.tools.r8.org.objectweb.asm.FieldVisitor visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object):412:420 -> a
+    2066:2073:com.android.tools.r8.org.objectweb.asm.MethodVisitor visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):426:433 -> a
+    2074:2075:void visitEnd():450:451 -> a
+    2076:2076:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    2076:2076:void visitEnd():452 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    2059:2059:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    2059:2059:void visitEnd():449 -> a
-    2060:2060:void visitEnd():448:448 -> a
-    2061:2064:java.util.List getAnnotations():595:598 -> a
-    2061:2064:void addAnnotation(com.android.tools.r8.graph.DexAnnotation):591 -> a
-    2061:2064:void visitEnd():448 -> a
-    2065:2065:void addAnnotation(com.android.tools.r8.graph.DexAnnotation):591:591 -> a
-    2065:2065:void visitEnd():448 -> a
-    2066:2066:void checkReachabilitySensitivity():561:561 -> a
-    2066:2066:void visitEnd():451 -> a
-    2067:2067:boolean hasReachabilitySensitiveField():572:572 -> a
-    2067:2067:void checkReachabilitySensitivity():561 -> a
-    2067:2067:void visitEnd():451 -> a
-    2068:2068:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    2068:2068:boolean hasReachabilitySensitiveField():572 -> a
+    2077:2077:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    2077:2077:void visitEnd():452 -> a
+    2078:2078:void visitEnd():451:451 -> a
+    2079:2082:java.util.List getAnnotations():598:601 -> a
+    2079:2082:void addAnnotation(com.android.tools.r8.graph.DexAnnotation):594 -> a
+    2079:2082:void visitEnd():451 -> a
+    2083:2083:void addAnnotation(com.android.tools.r8.graph.DexAnnotation):594:594 -> a
+    2083:2083:void visitEnd():451 -> a
+    2084:2084:void checkReachabilitySensitivity():564:564 -> a
+    2084:2084:void visitEnd():454 -> a
+    2085:2085:boolean hasReachabilitySensitiveField():575:575 -> a
+    2085:2085:void checkReachabilitySensitivity():564 -> a
+    2085:2085:void visitEnd():454 -> a
+    2086:2086:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    2086:2086:boolean hasReachabilitySensitiveField():575 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    2068:2068:void checkReachabilitySensitivity():561 -> a
-    2068:2068:void visitEnd():451 -> a
-    2069:2069:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    2069:2069:boolean hasReachabilitySensitiveField():572 -> a
-    2069:2069:void checkReachabilitySensitivity():561 -> a
-    2069:2069:void visitEnd():451 -> a
-    2070:2071:boolean hasReachabilitySensitiveField():572:573 -> a
-    2070:2071:void checkReachabilitySensitivity():561 -> a
-    2070:2071:void visitEnd():451 -> a
-    2072:2072:java.lang.Iterable com.android.tools.r8.com.google.common.collect.Iterables.concat(java.lang.Iterable,java.lang.Iterable):418:418 -> a
-    2072:2072:boolean hasReachabilitySensitiveField():573 -> a
-    2072:2072:void checkReachabilitySensitivity():561 -> a
-    2072:2072:void visitEnd():451 -> a
-    2073:2075:boolean hasReachabilitySensitiveField():573:575 -> a
-    2073:2075:void checkReachabilitySensitivity():561 -> a
-    2073:2075:void visitEnd():451 -> a
-    2076:2076:void checkReachabilitySensitivity():562:562 -> a
-    2076:2076:void visitEnd():451 -> a
-    2077:2077:java.lang.Iterable com.android.tools.r8.com.google.common.collect.Iterables.concat(java.lang.Iterable,java.lang.Iterable):418:418 -> a
-    2077:2077:void checkReachabilitySensitivity():562 -> a
-    2077:2077:void visitEnd():451 -> a
-    2078:2081:void checkReachabilitySensitivity():562:565 -> a
-    2078:2081:void visitEnd():451 -> a
-    2082:2098:void checkRecord():518:534 -> a
-    2082:2098:void visitEnd():452 -> a
-    2099:2099:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
-    2099:2099:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
-    2099:2099:void checkRecord():534 -> a
-    2099:2099:void visitEnd():452 -> a
-    2100:2100:void checkRecord():534:534 -> a
-    2100:2100:void visitEnd():452 -> a
-    2101:2119:void visitEnd():453:471 -> a
-    2120:2120:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    2120:2120:void visitEnd():472 -> a
+    2086:2086:void checkReachabilitySensitivity():564 -> a
+    2086:2086:void visitEnd():454 -> a
+    2087:2087:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    2087:2087:boolean hasReachabilitySensitiveField():575 -> a
+    2087:2087:void checkReachabilitySensitivity():564 -> a
+    2087:2087:void visitEnd():454 -> a
+    2088:2089:boolean hasReachabilitySensitiveField():575:576 -> a
+    2088:2089:void checkReachabilitySensitivity():564 -> a
+    2088:2089:void visitEnd():454 -> a
+    2090:2090:java.lang.Iterable com.android.tools.r8.com.google.common.collect.Iterables.concat(java.lang.Iterable,java.lang.Iterable):418:418 -> a
+    2090:2090:boolean hasReachabilitySensitiveField():576 -> a
+    2090:2090:void checkReachabilitySensitivity():564 -> a
+    2090:2090:void visitEnd():454 -> a
+    2091:2093:boolean hasReachabilitySensitiveField():576:578 -> a
+    2091:2093:void checkReachabilitySensitivity():564 -> a
+    2091:2093:void visitEnd():454 -> a
+    2094:2094:void checkReachabilitySensitivity():565:565 -> a
+    2094:2094:void visitEnd():454 -> a
+    2095:2095:java.lang.Iterable com.android.tools.r8.com.google.common.collect.Iterables.concat(java.lang.Iterable,java.lang.Iterable):418:418 -> a
+    2095:2095:void checkReachabilitySensitivity():565 -> a
+    2095:2095:void visitEnd():454 -> a
+    2096:2099:void checkReachabilitySensitivity():565:568 -> a
+    2096:2099:void visitEnd():454 -> a
+    2100:2116:void checkRecord():521:537 -> a
+    2100:2116:void visitEnd():455 -> a
+    2117:2117:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
+    2117:2117:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
+    2117:2117:void checkRecord():537 -> a
+    2117:2117:void visitEnd():455 -> a
+    2118:2118:void checkRecord():537:537 -> a
+    2118:2118:void visitEnd():455 -> a
+    2119:2137:void visitEnd():456:474 -> a
+    2138:2138:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    2138:2138:void visitEnd():475 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    2121:2121:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    2121:2121:void visitEnd():472 -> a
-    2122:2123:void visitEnd():472:473 -> a
-    2124:2155:void visitEnd():454:485 -> a
-    2156:2164:void com.android.tools.r8.graph.DexClass.replaceInnerClassAttributeForThisClass(com.android.tools.r8.graph.InnerClassAttribute):1077:1085 -> a
-    2156:2164:void visitEnd():486 -> a
-    2165:2173:void visitEnd():487:495 -> a
-    2174:2174:void visitEnd():491:491 -> a
-    2175:2175:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
-    2175:2175:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
-    2175:2175:void visitEnd():491 -> a
-    2176:2187:void visitEnd():491:502 -> a
-    2188:2188:boolean com.android.tools.r8.graph.DexClass.isLibraryClass():0:0 -> a
-    2188:2188:void visitEnd():504 -> a
-    2189:2198:void visitEnd():505:514 -> a
-    2199:2199:void checkRecord():529:529 -> a
-    2199:2199:void visitEnd():452 -> a
-    2200:2200:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
-    2200:2200:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
-    2200:2200:void checkRecord():529 -> a
-    2200:2200:void visitEnd():452 -> a
-    2201:2201:void checkRecord():529:529 -> a
-    2201:2201:void visitEnd():452 -> a
-    2202:2208:com.android.tools.r8.graph.DexProgramClass$ChecksumSupplier getChecksumSupplier(com.android.tools.r8.graph.ClassKind):540:546 -> a
-    2209:2209:void addDefaultAnnotation(java.lang.String,com.android.tools.r8.graph.DexValue):584:584 -> a
-    2209:2209:void access$1600(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,java.lang.String,com.android.tools.r8.graph.DexValue):193 -> a
+    2139:2139:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
+    2139:2139:void visitEnd():475 -> a
+    2140:2141:void visitEnd():475:476 -> a
+    2142:2173:void visitEnd():457:488 -> a
+    2174:2182:void com.android.tools.r8.graph.DexClass.replaceInnerClassAttributeForThisClass(com.android.tools.r8.graph.InnerClassAttribute):1077:1085 -> a
+    2174:2182:void visitEnd():489 -> a
+    2183:2191:void visitEnd():490:498 -> a
+    2192:2192:void visitEnd():494:494 -> a
+    2193:2193:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
+    2193:2193:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
+    2193:2193:void visitEnd():494 -> a
+    2194:2205:void visitEnd():494:505 -> a
+    2206:2206:boolean com.android.tools.r8.graph.DexClass.isLibraryClass():0:0 -> a
+    2206:2206:void visitEnd():507 -> a
+    2207:2216:void visitEnd():508:517 -> a
+    2217:2217:void checkRecord():532:532 -> a
+    2217:2217:void visitEnd():455 -> a
+    2218:2218:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
+    2218:2218:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> a
+    2218:2218:void checkRecord():532 -> a
+    2218:2218:void visitEnd():455 -> a
+    2219:2219:void checkRecord():532:532 -> a
+    2219:2219:void visitEnd():455 -> a
+    2220:2226:com.android.tools.r8.graph.DexProgramClass$ChecksumSupplier getChecksumSupplier(com.android.tools.r8.graph.ClassKind):543:549 -> a
+    2227:2227:void addDefaultAnnotation(java.lang.String,com.android.tools.r8.graph.DexValue):587:587 -> a
+    2227:2227:void access$1600(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,java.lang.String,com.android.tools.r8.graph.DexValue):196 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    2210:2212:void addDefaultAnnotation(java.lang.String,com.android.tools.r8.graph.DexValue):585:587 -> a
-    2210:2212:void access$1600(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,java.lang.String,com.android.tools.r8.graph.DexValue):193 -> a
-    2213:2216:java.util.List getAnnotations():595:598 -> a
-    2213:2216:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):435 -> a
-    2217:2217:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):435:435 -> a
-    1:1:com.android.tools.r8.cf.CfVersion access$1100(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> b
-    2:4:void visitNestMember(java.lang.String):292:294 -> b
-    5:9:com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String,java.lang.String,java.lang.String):318:322 -> b
+    2228:2230:void addDefaultAnnotation(java.lang.String,com.android.tools.r8.graph.DexValue):588:590 -> a
+    2228:2230:void access$1600(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,java.lang.String,com.android.tools.r8.graph.DexValue):196 -> a
+    2231:2234:java.util.List getAnnotations():598:601 -> a
+    2231:2234:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):438 -> a
+    2235:2235:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):438:438 -> a
+    1:1:com.android.tools.r8.cf.CfVersion access$1100(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> b
+    2:4:void visitNestMember(java.lang.String):295:297 -> b
+    5:9:com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String,java.lang.String,java.lang.String):321:325 -> b
     10:10:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> b
-    10:10:com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String,java.lang.String,java.lang.String):324 -> b
+    10:10:com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String,java.lang.String,java.lang.String):327 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     11:11:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> b
-    11:11:com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String,java.lang.String,java.lang.String):324 -> b
-    12:14:com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String,java.lang.String,java.lang.String):324:326 -> b
-    15:18:com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String,java.lang.String,java.lang.String):325:328 -> b
-    19:19:boolean isInANest():602:602 -> b
-    1:1:java.util.Set access$1200(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> c
-    2:3:void visitPermittedSubclass(java.lang.String):333:334 -> c
+    11:11:com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String,java.lang.String,java.lang.String):327 -> b
+    12:14:com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String,java.lang.String,java.lang.String):327:329 -> b
+    15:18:com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String,java.lang.String,java.lang.String):328:331 -> b
+    19:19:boolean isInANest():605:605 -> b
+    1:1:java.util.Set access$1200(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> c
+    2:3:void visitPermittedSubclass(java.lang.String):336:337 -> c
     4:4:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30:30 -> c
-    4:4:void visitPermittedSubclass(java.lang.String):334 -> c
-    5:5:void visitPermittedSubclass(java.lang.String):334:334 -> c
-    1:1:java.util.List access$1400(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> d
-    2:2:void checkName(java.lang.String):550:550 -> d
+    4:4:void visitPermittedSubclass(java.lang.String):337 -> c
+    5:5:void visitPermittedSubclass(java.lang.String):337:337 -> c
+    1:1:java.util.List access$1400(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> d
+    2:2:void checkName(java.lang.String):553:553 -> d
     3:3:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> d
-    3:3:void checkName(java.lang.String):550 -> d
+    3:3:void checkName(java.lang.String):553 -> d
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     4:4:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> d
-    4:4:void checkName(java.lang.String):550 -> d
-    5:6:void checkName(java.lang.String):550:551 -> d
+    4:4:void checkName(java.lang.String):553 -> d
+    5:6:void checkName(java.lang.String):553:554 -> d
     7:14:boolean com.android.tools.r8.graph.DexString.isValidSimpleName(com.android.tools.r8.utils.AndroidApiLevel,java.lang.String):404:411 -> d
-    7:14:void checkName(java.lang.String):551 -> d
-    15:15:void checkName(java.lang.String):552:552 -> d
+    7:14:void checkName(java.lang.String):554 -> d
+    15:15:void checkName(java.lang.String):555:555 -> d
     16:16:void checkName(java.lang.String):0:0 -> d
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":20,"2":21,"3":22,"4":23,"5":24,"6":25}}
-    20:20:void checkName(java.lang.String):552:552 -> d
-    21:21:void checkName(java.lang.String):552:552 -> d
-    22:22:void checkName(java.lang.String):552:552 -> d
-    23:23:void checkName(java.lang.String):552:552 -> d
-    24:24:void checkName(java.lang.String):552:552 -> d
-    25:25:void checkName(java.lang.String):552:552 -> d
+    20:20:void checkName(java.lang.String):555:555 -> d
+    21:21:void checkName(java.lang.String):555:555 -> d
+    22:22:void checkName(java.lang.String):555:555 -> d
+    23:23:void checkName(java.lang.String):555:555 -> d
+    24:24:void checkName(java.lang.String):555:555 -> d
+    25:25:void checkName(java.lang.String):555:555 -> d
     17:17:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String):22:22 -> d
-    17:17:void checkName(java.lang.String):552 -> d
+    17:17:void checkName(java.lang.String):555 -> d
     18:18:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30:30 -> d
     18:18:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String):22 -> d
-    18:18:void checkName(java.lang.String):552 -> d
-    19:19:void checkName(java.lang.String):552:552 -> d
-    1:1:java.util.List access$1500(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> e
-    1:1:com.android.tools.r8.graph.JarApplicationReader access$300(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> f
-    1:1:com.android.tools.r8.origin.Origin access$400(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> g
-    1:1:com.android.tools.r8.graph.DexType access$500(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> h
-    1:1:java.util.Set access$600(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> i
-    1:1:java.util.List access$700(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> j
-    1:1:java.util.List access$800(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> k
-    1:1:com.android.tools.r8.graph.ClassKind access$900(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):193:193 -> l
+    18:18:void checkName(java.lang.String):555 -> d
+    19:19:void checkName(java.lang.String):555:555 -> d
+    1:1:java.util.List access$1500(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> e
+    1:1:com.android.tools.r8.graph.JarApplicationReader access$300(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> f
+    1:1:com.android.tools.r8.origin.Origin access$400(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> g
+    1:1:com.android.tools.r8.graph.DexType access$500(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> h
+    1:1:java.util.Set access$600(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> i
+    1:1:java.util.List access$700(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> j
+    1:1:java.util.List access$800(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> k
+    1:1:com.android.tools.r8.graph.ClassKind access$900(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):196:196 -> l
 com.android.tools.r8.graph.JarClassFileReader$CreateFieldVisitor -> com.android.tools.r8.graph.v2:
     java.lang.String desc -> f
     java.lang.Object value -> g
@@ -33368,51 +33400,51 @@
     int access -> d
     com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor parent -> c
     java.lang.String name -> e
-    1:1:void <clinit>():621:621 -> <clinit>
-    1:1:void <init>(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object):638:638 -> <init>
-    2:24:void <init>(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object):629:651 -> <init>
-    25:31:void <init>(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object):646:652 -> <init>
+    1:1:void <clinit>():624:624 -> <clinit>
+    1:1:void <init>(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object):641:641 -> <init>
+    2:24:void <init>(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object):632:654 -> <init>
+    25:31:void <init>(com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor,int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object):649:655 -> <init>
     com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int,com.android.tools.r8.org.objectweb.asm.TypePath,java.lang.String,boolean) -> a
-    1:2:void visitEnd():669:670 -> a
+    1:2:void visitEnd():672:673 -> a
     3:3:com.android.tools.r8.graph.DexField com.android.tools.r8.graph.JarApplicationReader.getField(com.android.tools.r8.graph.DexType,java.lang.String,java.lang.String):94:94 -> a
-    3:3:void visitEnd():670 -> a
+    3:3:void visitEnd():673 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     4:4:com.android.tools.r8.graph.DexField com.android.tools.r8.graph.JarApplicationReader.getField(com.android.tools.r8.graph.DexType,java.lang.String,java.lang.String):94:94 -> a
-    4:4:void visitEnd():670 -> a
-    5:10:void visitEnd():671:676 -> a
-    11:11:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):703:703 -> a
-    11:11:void visitEnd():676 -> a
+    4:4:void visitEnd():673 -> a
+    5:10:void visitEnd():674:679 -> a
+    11:11:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):706:706 -> a
+    11:11:void visitEnd():679 -> a
     12:12:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    12:12:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):703 -> a
+    12:12:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):706 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    12:12:void visitEnd():676 -> a
+    12:12:void visitEnd():679 -> a
     13:13:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> a
-    13:13:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):703 -> a
-    13:13:void visitEnd():676 -> a
-    14:43:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):704:733 -> a
-    14:43:void visitEnd():676 -> a
+    13:13:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):706 -> a
+    13:13:void visitEnd():679 -> a
+    14:43:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):707:736 -> a
+    14:43:void visitEnd():679 -> a
     44:44:void visitEnd():0:0 -> a
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":65,"2":66,"3":67,"4":68,"5":69}}
-    65:65:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):733:733 -> a
-    65:65:void visitEnd():676 -> a
-    66:66:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):733:733 -> a
-    66:66:void visitEnd():676 -> a
-    67:67:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):733:733 -> a
-    67:67:void visitEnd():676 -> a
-    68:68:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):733:733 -> a
-    68:68:void visitEnd():676 -> a
-    69:69:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):733:733 -> a
-    69:69:void visitEnd():676 -> a
-    45:45:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):733:733 -> a
-    45:45:void visitEnd():676 -> a
-    46:52:void visitEnd():678:684 -> a
+    65:65:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):736:736 -> a
+    65:65:void visitEnd():679 -> a
+    66:66:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):736:736 -> a
+    66:66:void visitEnd():679 -> a
+    67:67:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):736:736 -> a
+    67:67:void visitEnd():679 -> a
+    68:68:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):736:736 -> a
+    68:68:void visitEnd():679 -> a
+    69:69:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):736:736 -> a
+    69:69:void visitEnd():679 -> a
+    45:45:com.android.tools.r8.graph.DexValue getStaticValue(java.lang.Object,com.android.tools.r8.graph.DexType):736:736 -> a
+    45:45:void visitEnd():679 -> a
+    46:52:void visitEnd():681:687 -> a
     53:53:com.android.tools.r8.graph.DexEncodedField$Builder com.android.tools.r8.graph.DexEncodedField$Builder.disableAndroidApiLevelCheck():498:498 -> a
-    53:53:void visitEnd():685 -> a
-    54:63:void visitEnd():686:695 -> a
-    64:64:void visitEnd():693:693 -> a
-    70:73:java.util.List getAnnotations():737:740 -> a
-    70:73:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):657 -> a
-    74:74:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):657:657 -> a
+    53:53:void visitEnd():688 -> a
+    54:63:void visitEnd():689:698 -> a
+    64:64:void visitEnd():696:696 -> a
+    70:73:java.util.List getAnnotations():740:743 -> a
+    70:73:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):660 -> a
+    74:74:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):660:660 -> a
 com.android.tools.r8.graph.JarClassFileReader$CreateMethodVisitor -> com.android.tools.r8.graph.w2:
     java.util.List parameterFlags -> r
     int annotableParameterCount -> o
@@ -33429,82 +33461,82 @@
     com.android.tools.r8.graph.DexMethod method -> t
     java.util.List annotations -> m
     com.android.tools.r8.graph.Code code -> w
-    1:1:void <clinit>():744:744 -> <clinit>
-    1:1:void <init>(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[],com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):768:768 -> <init>
-    2:34:void <init>(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[],com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):749:781 -> <init>
-    35:45:void <init>(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[],com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):780:790 -> <init>
-    46:52:void <init>(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[],com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):785:791 -> <init>
+    1:1:void <clinit>():747:747 -> <clinit>
+    1:1:void <init>(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[],com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):771:771 -> <init>
+    2:34:void <init>(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[],com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):752:784 -> <init>
+    35:45:void <init>(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[],com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):783:793 -> <init>
+    46:52:void <init>(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[],com.android.tools.r8.graph.JarClassFileReader$CreateDexClassVisitor):788:794 -> <init>
     com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitInsnAnnotation(int,com.android.tools.r8.org.objectweb.asm.TypePath,java.lang.String,boolean) -> a
     com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitLocalVariableAnnotation(int,com.android.tools.r8.org.objectweb.asm.TypePath,com.android.tools.r8.org.objectweb.asm.Label[],com.android.tools.r8.org.objectweb.asm.Label[],int[],java.lang.String,boolean) -> a
-    1:1:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotationDefault():801:801 -> a
-    2:3:void lambda$visitAnnotationDefault$0(java.util.List,java.util.List):802:803 -> a
-    4:10:void visitAnnotableParameterCount(int,boolean):816:822 -> a
-    11:22:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitParameterAnnotation(int,java.lang.String,boolean):827:838 -> a
-    23:23:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitParameterAnnotation(int,java.lang.String,boolean):837:837 -> a
-    24:27:java.util.List getAnnotations():960:963 -> a
-    24:27:void addAnnotation(com.android.tools.r8.graph.DexAnnotation):967 -> a
-    28:28:void addAnnotation(com.android.tools.r8.graph.DexAnnotation):967:967 -> a
-    29:32:java.util.List getAnnotations():960:963 -> a
-    29:32:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):796 -> a
-    33:33:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):796:796 -> a
+    1:1:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotationDefault():804:804 -> a
+    2:3:void lambda$visitAnnotationDefault$0(java.util.List,java.util.List):805:806 -> a
+    4:10:void visitAnnotableParameterCount(int,boolean):819:825 -> a
+    11:22:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitParameterAnnotation(int,java.lang.String,boolean):830:841 -> a
+    23:23:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitParameterAnnotation(int,java.lang.String,boolean):840:840 -> a
+    24:27:java.util.List getAnnotations():963:966 -> a
+    24:27:void addAnnotation(com.android.tools.r8.graph.DexAnnotation):970 -> a
+    28:28:void addAnnotation(com.android.tools.r8.graph.DexAnnotation):970:970 -> a
+    29:32:java.util.List getAnnotations():963:966 -> a
+    29:32:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):799 -> a
+    33:33:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):799:799 -> a
     com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitTryCatchAnnotation(int,com.android.tools.r8.org.objectweb.asm.TypePath,java.lang.String,boolean) -> b
-    1:6:void visitParameter(java.lang.String,int):864:869 -> b
+    1:6:void visitParameter(java.lang.String,int):867:872 -> b
     7:7:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> b
-    7:7:void visitParameter(java.lang.String,int):869 -> b
+    7:7:void visitParameter(java.lang.String,int):872 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     8:8:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> b
-    8:8:void visitParameter(java.lang.String,int):869 -> b
-    9:11:void visitParameter(java.lang.String,int):869:871 -> b
-    12:12:void visitCode():876:876 -> b
+    8:8:void visitParameter(java.lang.String,int):872 -> b
+    9:11:void visitParameter(java.lang.String,int):872:874 -> b
+    12:12:void visitCode():879:879 -> b
     com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int,com.android.tools.r8.org.objectweb.asm.TypePath,java.lang.String,boolean) -> c
-    1:3:void visitEnd():888:890 -> c
-    4:5:boolean classRequiresCode():880:881 -> c
-    4:5:void visitEnd():890 -> c
+    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():1943:1943 -> c
-    6:6:boolean classRequiresCode():881 -> c
-    6:6:void visitEnd():890 -> 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)"]}
-    7:9:boolean classRequiresCode():881:883 -> c
-    7:9:void visitEnd():890 -> c
-    10:18:void visitEnd():891:899 -> c
+    7:9:boolean classRequiresCode():884:886 -> c
+    7:9:void visitEnd():893 -> c
+    10:18:void visitEnd():894:902 -> c
     19:19:com.android.tools.r8.graph.ParameterAnnotationsList com.android.tools.r8.graph.ParameterAnnotationsList.create(com.android.tools.r8.graph.DexAnnotationSet[]):72:72 -> c
-    19:19:void visitEnd():901 -> c
-    20:24:void visitEnd():903:907 -> c
-    25:25:void visitEnd():906:906 -> c
-    26:29:java.util.List getAnnotations():960:963 -> c
-    26:29:void visitEnd():909 -> c
-    30:33:void visitEnd():909:912 -> c
+    19:19:void visitEnd():904 -> c
+    20:24:void visitEnd():906:910 -> c
+    25:25:void visitEnd():909:909 -> c
+    26:29:java.util.List getAnnotations():963:966 -> c
+    26:29:void visitEnd():912 -> c
+    30:33:void visitEnd():912:915 -> c
     34:34:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> c
-    34:34:void visitEnd():912 -> c
+    34:34:void visitEnd():915 -> c
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     35:35:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> c
-    35:35:void visitEnd():912 -> c
-    36:56:void visitEnd():909:929 -> c
-    57:57:boolean isReachabilitySensitive():950:950 -> c
-    57:57:void visitEnd():929 -> c
+    35:35:void visitEnd():915 -> c
+    36:56:void visitEnd():912:932 -> c
+    57:57:boolean isReachabilitySensitive():953:953 -> c
+    57:57:void visitEnd():932 -> c
     58:58:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> c
-    58:58:boolean isReachabilitySensitive():950 -> c
+    58:58:boolean isReachabilitySensitive():953 -> c
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    58:58:void visitEnd():929 -> c
+    58:58:void visitEnd():932 -> c
     59:59:com.android.tools.r8.graph.DexItemFactory com.android.tools.r8.graph.JarApplicationReader.getFactory():45:45 -> c
-    59:59:boolean isReachabilitySensitive():950 -> c
-    59:59:void visitEnd():929 -> c
-    60:60:boolean isReachabilitySensitive():950:950 -> c
-    60:60:void visitEnd():929 -> c
-    61:64:java.util.List getAnnotations():960:963 -> c
-    61:64:boolean isReachabilitySensitive():951 -> c
-    61:64:void visitEnd():929 -> c
-    65:66:boolean isReachabilitySensitive():951:952 -> c
-    65:66:void visitEnd():929 -> c
-    67:71:void visitEnd():929:933 -> c
-    72:82:void visitEnd():931:941 -> c
-    83:83:void visitEnd():938:938 -> c
-    84:92:void visitEnd():936:944 -> c
-com.android.tools.r8.graph.JarClassFileReader$ReparseContext -> com.android.tools.r8.internal.Cv:
+    59:59:boolean isReachabilitySensitive():953 -> c
+    59:59:void visitEnd():932 -> c
+    60:60:boolean isReachabilitySensitive():953:953 -> c
+    60:60:void visitEnd():932 -> c
+    61:64:java.util.List getAnnotations():963:966 -> c
+    61:64:boolean isReachabilitySensitive():954 -> c
+    61:64:void visitEnd():932 -> c
+    65:66:boolean isReachabilitySensitive():954:955 -> c
+    65:66:void visitEnd():932 -> c
+    67:71:void visitEnd():932:936 -> c
+    72:82:void visitEnd():934:944 -> c
+    83:83:void visitEnd():941:941 -> c
+    84:92:void visitEnd():939:947 -> c
+com.android.tools.r8.graph.JarClassFileReader$ReparseContext -> com.android.tools.r8.internal.Dv:
     com.android.tools.r8.graph.DexClass owner -> b
     byte[] classCache -> a
     java.util.List codeList -> c
-    1:8:void <init>():1116:1123 -> <init>
+    1:8:void <init>():1119:1126 -> <init>
 com.android.tools.r8.graph.LazyCfCode -> com.android.tools.r8.graph.C2:
     com.android.tools.r8.graph.CfCode code -> f
     com.android.tools.r8.graph.JarApplicationReader application -> e
@@ -33575,7 +33607,7 @@
     com.android.tools.r8.graph.DexClass clazz -> c
     1:7:void <init>(com.android.tools.r8.graph.DexClass,java.util.function.BiFunction,com.android.tools.r8.graph.JarApplicationReader,boolean,com.android.tools.r8.origin.Origin,com.android.tools.r8.graph.LazyCfCode$DebugParsingOptions):330:336 -> <init>
     1:11:com.android.tools.r8.org.objectweb.asm.MethodVisitor visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[]):342:352 -> a
-com.android.tools.r8.graph.LazyCfCode$DebugParsingOptions -> com.android.tools.r8.internal.fB:
+com.android.tools.r8.graph.LazyCfCode$DebugParsingOptions -> com.android.tools.r8.internal.gB:
     boolean lineInfo -> a
     boolean localInfo -> b
     int asmReaderOptions -> c
@@ -34474,9 +34506,9 @@
     2:4:void addProgramClassPotentiallyOverridingNonProgramClass(com.android.tools.r8.graph.DexProgramClass):307:309 -> b
     com.android.tools.r8.graph.DexApplication$Builder self() -> d
     1:5:com.android.tools.r8.graph.LazyLoadedDexApplication build():314:318 -> e
-com.android.tools.r8.graph.LibraryClass -> com.android.tools.r8.internal.wB:
+com.android.tools.r8.graph.LibraryClass -> com.android.tools.r8.internal.xB:
     1:1:com.android.tools.r8.graph.DexClass asDexClass():11:11 -> e
-com.android.tools.r8.graph.LibraryDefinition -> com.android.tools.r8.internal.yB:
+com.android.tools.r8.graph.LibraryDefinition -> com.android.tools.r8.internal.zB:
     1:1:com.android.tools.r8.graph.ProgramDerivedContext asProgramDerivedContext(com.android.tools.r8.graph.ProgramDerivedContext):21:21 -> a
 com.android.tools.r8.graph.LibraryField -> com.android.tools.r8.graph.F2:
     boolean $assertionsDisabled -> f
@@ -34520,7 +34552,7 @@
     32:33:void com.android.tools.r8.utils.WorkList.addIfNotSeen(java.lang.Object[]):82:83 -> a
     32:33:boolean isMethodKeptInSuperTypeOrIsLibrary(com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.AppInfoWithClassHierarchy):79 -> a
     32:33:com.android.tools.r8.graph.LookupResult$LookupResultSuccess$LookupResultCollectionState computeCollectionState(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.AppInfoWithClassHierarchy):57 -> a
-com.android.tools.r8.graph.LookupLambdaTarget -> com.android.tools.r8.internal.mD:
+com.android.tools.r8.graph.LookupLambdaTarget -> com.android.tools.r8.internal.nD:
     com.android.tools.r8.graph.DexClassAndMethod method -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():9:9 -> <clinit>
@@ -34576,13 +34608,13 @@
     3:3:com.android.tools.r8.graph.LookupResult$LookupResultSuccess$Builder addMethodCausingFailure(com.android.tools.r8.graph.DexEncodedMethod):178:178 -> a
     4:4:com.android.tools.r8.graph.LookupResult$LookupResultSuccess$Builder setState(com.android.tools.r8.graph.LookupResult$LookupResultSuccess$LookupResultCollectionState):183:183 -> a
     5:5:com.android.tools.r8.graph.LookupResult$LookupResultSuccess build():188:188 -> a
-com.android.tools.r8.graph.LookupTarget -> com.android.tools.r8.internal.oD:
+com.android.tools.r8.graph.LookupTarget -> com.android.tools.r8.internal.pD:
     void accept(java.util.function.Consumer,java.util.function.Consumer) -> a
     com.android.tools.r8.graph.DexClassAndMethod asMethodTarget() -> j
     boolean isMethodTarget() -> m
     boolean isLambdaTarget() -> n
     com.android.tools.r8.graph.LookupLambdaTarget asLambdaTarget() -> o
-com.android.tools.r8.graph.MemberResolutionResult -> com.android.tools.r8.internal.kE:
+com.android.tools.r8.graph.MemberResolutionResult -> com.android.tools.r8.internal.lE:
     1:1:void <init>():9:9 -> <init>
     com.android.tools.r8.utils.OptionalBool isAccessibleFrom(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppInfoWithClassHierarchy) -> a
     1:1:com.android.tools.r8.utils.OptionalBool isAccessibleFrom(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):25:25 -> a
@@ -34702,7 +34734,7 @@
     1:2:com.android.tools.r8.graph.AccessFlags$BuilderBase com.android.tools.r8.graph.AccessFlags$BuilderBase.setSynthetic():373:374 -> g
     1:2:com.android.tools.r8.graph.AccessFlags$BuilderBase setSynthetic():0 -> g
       # {"id":"com.android.tools.r8.synthesized"}
-com.android.tools.r8.graph.MethodAccessInfoCollection -> com.android.tools.r8.internal.CE:
+com.android.tools.r8.graph.MethodAccessInfoCollection -> com.android.tools.r8.internal.DE:
     java.util.Map directInvokes -> a
     java.util.Map interfaceInvokes -> b
     java.util.Map staticInvokes -> c
@@ -34728,7 +34760,7 @@
     2:2:void forEachStaticInvoke(java.util.function.BiConsumer):72:72 -> c
     1:1:void forEachSuperInvoke(java.util.function.BiConsumer):76:76 -> d
     1:1:void forEachVirtualInvoke(java.util.function.BiConsumer):84:84 -> e
-com.android.tools.r8.graph.MethodAccessInfoCollection$Builder -> com.android.tools.r8.internal.yE:
+com.android.tools.r8.graph.MethodAccessInfoCollection$Builder -> com.android.tools.r8.internal.zE:
     java.util.Map directInvokes -> a
     java.util.Map interfaceInvokes -> b
     java.util.Map staticInvokes -> c
@@ -34780,13 +34812,13 @@
     1:1:boolean registerInvokeStaticInContext(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):200:200 -> h
     1:1:boolean registerInvokeSuperInContext(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):208:208 -> i
     1:1:boolean registerInvokeVirtualInContext(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):216:216 -> j
-com.android.tools.r8.graph.MethodAccessInfoCollection$ConcurrentBuilder -> com.android.tools.r8.internal.zE:
+com.android.tools.r8.graph.MethodAccessInfoCollection$ConcurrentBuilder -> com.android.tools.r8.internal.AE:
     1:1:void <init>(com.android.tools.r8.graph.MethodAccessInfoCollection$1):237:237 -> <init>
     2:2:void <init>():241:241 -> <init>
-com.android.tools.r8.graph.MethodAccessInfoCollection$IdentityBuilder -> com.android.tools.r8.internal.AE:
+com.android.tools.r8.graph.MethodAccessInfoCollection$IdentityBuilder -> com.android.tools.r8.internal.BE:
     1:1:void <init>(com.android.tools.r8.graph.MethodAccessInfoCollection$1):245:245 -> <init>
     2:2:void <init>():249:249 -> <init>
-com.android.tools.r8.graph.MethodAccessInfoCollection$Modifier -> com.android.tools.r8.internal.BE:
+com.android.tools.r8.graph.MethodAccessInfoCollection$Modifier -> com.android.tools.r8.internal.CE:
     1:1:void <init>(java.util.Map,java.util.Map,java.util.Map,java.util.Map,java.util.Map,com.android.tools.r8.graph.MethodAccessInfoCollection$1):253:253 -> <init>
     2:2:void <init>(java.util.Map,java.util.Map,java.util.Map,java.util.Map,java.util.Map):261:261 -> <init>
     1:5:void addAll(com.android.tools.r8.graph.MethodAccessInfoCollection):265:269 -> a
@@ -35600,11 +35632,11 @@
     1:2:com.android.tools.r8.graph.ProgramMethod getResolvedProgramMethod():213:214 -> o
     boolean isSingleResolution() -> q
     1:1:boolean isVirtualTarget():261:261 -> r
-com.android.tools.r8.graph.NamingLensComparable -> com.android.tools.r8.internal.zG:
+com.android.tools.r8.graph.NamingLensComparable -> com.android.tools.r8.internal.AG:
     1:1:int compareToWithNamingLens(com.android.tools.r8.graph.NamingLensComparable,com.android.tools.r8.naming.NamingLens):13:13 -> a
     2:3:int com.android.tools.r8.utils.structural.CompareToVisitorWithNamingLens.run(java.lang.Object,java.lang.Object,com.android.tools.r8.naming.NamingLens,com.android.tools.r8.utils.structural.StructuralItem$CompareToAccept):23:24 -> a
     2:3:int compareToWithNamingLens(com.android.tools.r8.graph.NamingLensComparable,com.android.tools.r8.naming.NamingLens):13 -> a
-com.android.tools.r8.graph.NestHostClassAttribute -> com.android.tools.r8.internal.JG:
+com.android.tools.r8.graph.NestHostClassAttribute -> com.android.tools.r8.internal.KG:
     com.android.tools.r8.graph.DexType nestHost -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():13:13 -> <clinit>
@@ -35615,7 +35647,7 @@
     3:3:com.android.tools.r8.graph.DexType getNestHost():26:26 -> a
     4:5:void write(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.naming.NamingLens):34:35 -> a
     1:1:com.android.tools.r8.utils.structural.StructuralMapping getStructuralMapping():45:45 -> n
-com.android.tools.r8.graph.NestMemberClassAttribute -> com.android.tools.r8.internal.KG:
+com.android.tools.r8.graph.NestMemberClassAttribute -> com.android.tools.r8.internal.LG:
     com.android.tools.r8.graph.DexType nestMember -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():15:15 -> <clinit>
@@ -35856,7 +35888,7 @@
     2:4:void <init>(boolean,com.android.tools.r8.shaking.GraphReporter):298:300 -> <init>
     1:1:boolean access$300(com.android.tools.r8.graph.ObjectAllocationInfoCollectionImpl$Builder$Data):293:293 -> a
     1:1:com.android.tools.r8.shaking.GraphReporter access$400(com.android.tools.r8.graph.ObjectAllocationInfoCollectionImpl$Builder$Data):293:293 -> b
-com.android.tools.r8.graph.ObjectToOffsetMapping -> com.android.tools.r8.internal.xK:
+com.android.tools.r8.graph.ObjectToOffsetMapping -> com.android.tools.r8.internal.yK:
     com.android.tools.r8.ir.conversion.LensCodeRewriterUtils lensCodeRewriter -> e
     boolean $assertionsDisabled -> p
     com.android.tools.r8.graph.AppView appView -> b
@@ -35932,12 +35964,12 @@
     1:1:java.util.Collection getStrings():306:306 -> m
     1:1:java.util.Collection getTypes():294:294 -> n
     1:1:boolean hasJumboStrings():318:318 -> o
-com.android.tools.r8.graph.ObjectToOffsetMapping$1 -> com.android.tools.r8.internal.vK:
+com.android.tools.r8.graph.ObjectToOffsetMapping$1 -> com.android.tools.r8.internal.wK:
     com.android.tools.r8.graph.ObjectToOffsetMapping val$mapping -> e
     1:1:void <init>(com.android.tools.r8.graph.ObjectToOffsetMapping,com.android.tools.r8.naming.NamingLens,java.util.function.ToIntFunction,java.util.function.ToIntFunction,com.android.tools.r8.graph.ObjectToOffsetMapping):121:121 -> <init>
     1:1:int visitDexField(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.DexField):125:125 -> a
     2:4:int visitDexMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):130:130 -> a
-com.android.tools.r8.graph.ObjectToOffsetMapping$ProgramClassDepthsMemoized -> com.android.tools.r8.internal.wK:
+com.android.tools.r8.graph.ObjectToOffsetMapping$ProgramClassDepthsMemoized -> com.android.tools.r8.internal.xK:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap depthOfClasses -> b
     com.android.tools.r8.graph.AppInfo appInfo -> a
     1:1:void <init>(com.android.tools.r8.graph.AppInfo):214:214 -> <init>
@@ -35963,7 +35995,7 @@
     23:23:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.graph.DexDefinitionSupplier.programDefinitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexProgramClass):59:59 -> a
     23:23:int getDepth(com.android.tools.r8.graph.DexProgramClass):237 -> a
     24:27:int getDepth(com.android.tools.r8.graph.DexProgramClass):238:241 -> a
-com.android.tools.r8.graph.OffsetToObjectMapping -> com.android.tools.r8.internal.GK:
+com.android.tools.r8.graph.OffsetToObjectMapping -> com.android.tools.r8.internal.HK:
     com.android.tools.r8.graph.DexProto[] protos -> c
     com.android.tools.r8.graph.DexMethodHandle[] methodHandles -> h
     boolean $assertionsDisabled -> i
@@ -36057,9 +36089,9 @@
     1:1:com.android.tools.r8.graph.ParameterAnnotationsList empty():55:55 -> o0
     1:7:com.android.tools.r8.graph.ParameterAnnotationsList withFakeThisParameter():210:216 -> p0
     1:1:int size():153:153 -> size
-com.android.tools.r8.graph.PinnedPredicate -> com.android.tools.r8.internal.bM:
+com.android.tools.r8.graph.PinnedPredicate -> com.android.tools.r8.internal.cM:
     boolean isPinned(com.android.tools.r8.graph.DexDefinition) -> a
-com.android.tools.r8.graph.ProgramClassVisitor -> com.android.tools.r8.internal.cN:
+com.android.tools.r8.graph.ProgramClassVisitor -> com.android.tools.r8.internal.dN:
     com.android.tools.r8.graph.DexApplication application -> a
     java.util.Set visited -> b
     1:1:void <init>(com.android.tools.r8.graph.DexApplication):32:32 -> <init>
@@ -36076,7 +36108,7 @@
     27:28:void accept(com.android.tools.r8.graph.DexClass):61:62 -> a
     29:30:void run(com.android.tools.r8.graph.DexProgramClass[]):66:67 -> a
     void visit(com.android.tools.r8.graph.DexClass) -> b
-com.android.tools.r8.graph.ProgramDefinition -> com.android.tools.r8.internal.eN:
+com.android.tools.r8.graph.ProgramDefinition -> com.android.tools.r8.internal.fN:
     com.android.tools.r8.graph.ProgramDerivedContext asProgramDerivedContext(com.android.tools.r8.graph.ProgramDerivedContext) -> a
     com.android.tools.r8.graph.DexProgramClass getContextClass() -> a
     1:1:com.android.tools.r8.graph.DexClass getContextClass():11:11 -> a
@@ -36088,9 +36120,9 @@
     com.android.tools.r8.graph.ProgramDefinition asProgramDefinition() -> f
     boolean isProgramDefinition() -> g
     1:1:void clearAllAnnotations():38:38 -> z
-com.android.tools.r8.graph.ProgramDerivedContext -> com.android.tools.r8.internal.fN:
+com.android.tools.r8.graph.ProgramDerivedContext -> com.android.tools.r8.internal.gN:
     1:1:boolean isProgramContext():12:12 -> B
-com.android.tools.r8.graph.ProgramDexCode -> com.android.tools.r8.internal.gN:
+com.android.tools.r8.graph.ProgramDexCode -> com.android.tools.r8.internal.hN:
     com.android.tools.r8.graph.DexWritableCode code -> a
     com.android.tools.r8.graph.ProgramMethod method -> b
     1:3:void <init>(com.android.tools.r8.graph.DexWritableCode,com.android.tools.r8.graph.ProgramMethod):12:14 -> <init>
@@ -36111,7 +36143,7 @@
     1:1:com.android.tools.r8.kotlin.KotlinFieldLevelInfo getKotlinInfo():74:74 -> e0
     1:1:com.android.tools.r8.kotlin.KotlinMemberLevelInfo getKotlinInfo():10 -> e0
     1:1:com.android.tools.r8.graph.DexClass getHolder():10:10 -> q
-com.android.tools.r8.graph.ProgramMember -> com.android.tools.r8.internal.jN:
+com.android.tools.r8.graph.ProgramMember -> com.android.tools.r8.internal.kN:
     1:1:void clearKotlinInfo():31:31 -> T
     com.android.tools.r8.graph.DexProgramClass getHolder() -> b
     com.android.tools.r8.kotlin.KotlinMemberLevelInfo getKotlinInfo() -> e0
@@ -36173,9 +36205,9 @@
     1:1:com.android.tools.r8.kotlin.KotlinMethodLevelInfo getKotlinInfo():172:172 -> e0
     1:1:com.android.tools.r8.kotlin.KotlinMemberLevelInfo getKotlinInfo():22 -> e0
     1:1:com.android.tools.r8.graph.DexClass getHolder():22:22 -> q
-com.android.tools.r8.graph.ProgramOrClasspathClass -> com.android.tools.r8.internal.pN:
+com.android.tools.r8.graph.ProgramOrClasspathClass -> com.android.tools.r8.internal.qN:
     com.android.tools.r8.graph.DexClass asDexClass() -> e
-com.android.tools.r8.graph.ProgramPackage -> com.android.tools.r8.internal.qN:
+com.android.tools.r8.graph.ProgramPackage -> com.android.tools.r8.internal.rN:
     java.util.Set classes -> c
     java.lang.String packageDescriptor -> b
     boolean $assertionsDisabled -> d
@@ -36203,11 +36235,11 @@
     2:2:java.lang.String com.android.tools.r8.graph.ProgramPackage.getPackageName():52:52 -> toString
     2:2:java.lang.String toString():78 -> toString
     3:3:java.lang.String toString():78:78 -> toString
-com.android.tools.r8.graph.ProgramPackageCollection -> com.android.tools.r8.internal.rN:
+com.android.tools.r8.graph.ProgramPackageCollection -> com.android.tools.r8.internal.sN:
     java.util.Map packages -> b
     1:2:void <init>(java.util.Map):15:16 -> <init>
     1:1:java.util.Iterator iterator():49:49 -> iterator
-com.android.tools.r8.graph.PrunedItems -> com.android.tools.r8.internal.UP:
+com.android.tools.r8.graph.PrunedItems -> com.android.tools.r8.internal.VP:
     com.android.tools.r8.graph.DexApplication prunedApp -> a
     java.util.Set noLongerSyntheticItems -> c
     java.util.Set removedClasses -> d
@@ -36234,7 +36266,7 @@
     1:1:boolean hasRemovedMethods():95:95 -> k
     1:4:boolean isEmpty():48:51 -> l
     1:1:com.android.tools.r8.graph.PrunedItems$Builder toBuilder():40:40 -> m
-com.android.tools.r8.graph.PrunedItems$Builder -> com.android.tools.r8.internal.TP:
+com.android.tools.r8.graph.PrunedItems$Builder -> com.android.tools.r8.internal.UP:
     com.android.tools.r8.graph.DexApplication prunedApp -> a
     java.util.Set noLongerSyntheticItems -> c
     java.util.Set removedClasses -> d
@@ -36254,7 +36286,7 @@
     9:9:com.android.tools.r8.graph.PrunedItems build():180:180 -> a
     1:1:com.android.tools.r8.graph.PrunedItems$Builder setRemovedClasses(java.util.Set):170:170 -> b
     1:1:com.android.tools.r8.graph.PrunedItems$Builder setRemovedMethods(java.util.Set):175:175 -> c
-com.android.tools.r8.graph.RewrittenPrototypeDescriptionMethodOptimizationInfoFixer -> com.android.tools.r8.internal.ZT:
+com.android.tools.r8.graph.RewrittenPrototypeDescriptionMethodOptimizationInfoFixer -> com.android.tools.r8.internal.aU:
     com.android.tools.r8.graph.proto.RewrittenPrototypeDescription prototypeChanges -> a
     1:1:void com.android.tools.r8.ir.optimize.info.MethodOptimizationInfoFixer.<init>():18:18 -> <init>
     1:1:void <init>(com.android.tools.r8.graph.proto.RewrittenPrototypeDescription):29 -> <init>
@@ -36314,7 +36346,7 @@
     1:1:java.util.BitSet fixupNonNullParamOnNormalExits(java.util.BitSet):111:111 -> b
     1:1:java.util.BitSet fixupNonNullParamOrThrow(java.util.BitSet):120:120 -> c
     1:1:java.util.BitSet fixupUnusedArguments(java.util.BitSet):158:158 -> d
-com.android.tools.r8.graph.SmaliWriter -> com.android.tools.r8.internal.wV:
+com.android.tools.r8.graph.SmaliWriter -> com.android.tools.r8.internal.xV:
     1:1:void <init>(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.utils.InternalOptions):20:20 -> <init>
     1:10:java.lang.String smali(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions):25:34 -> a
     11:17:java.lang.String smali(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.utils.InternalOptions):26:32 -> a
@@ -36322,11 +36354,11 @@
     1:3:void writeClassFooter(com.android.tools.r8.graph.DexProgramClass,java.io.PrintStream):62:64 -> b
     4:6:void writeMethod(com.android.tools.r8.graph.ProgramMethod,java.io.PrintStream):69:71 -> b
     1:13:void writeClassHeader(com.android.tools.r8.graph.DexProgramClass,java.io.PrintStream):43:55 -> c
-com.android.tools.r8.graph.SortedProgramPackage -> com.android.tools.r8.internal.FV:
+com.android.tools.r8.graph.SortedProgramPackage -> com.android.tools.r8.internal.GV:
     1:1:void <init>(java.lang.String):12:12 -> <init>
     1:1:int lambda$new$0(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexProgramClass):12:12 -> a
     1:1:java.util.Set lambda$new$1():12:12 -> d
-com.android.tools.r8.graph.SortedProgramPackageCollection -> com.android.tools.r8.internal.GV:
+com.android.tools.r8.graph.SortedProgramPackageCollection -> com.android.tools.r8.internal.HV:
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():9:9 -> <clinit>
     1:1:void <init>():12:12 -> <init>
@@ -36421,7 +36453,7 @@
     555:555:java.lang.String toString():275:275 -> toString
     556:556:java.lang.String toString():275:275 -> toString
     557:557:java.lang.String toString():275:275 -> toString
-com.android.tools.r8.graph.SuccessfulMemberResolutionResult -> com.android.tools.r8.internal.JX:
+com.android.tools.r8.graph.SuccessfulMemberResolutionResult -> com.android.tools.r8.internal.KX:
     com.android.tools.r8.graph.DexClass getInitialResolutionHolder() -> a
     com.android.tools.r8.graph.DexEncodedMember getResolvedMember() -> b
     com.android.tools.r8.graph.DexClassAndMember getResolutionPair() -> c
@@ -36526,7 +36558,7 @@
     2:2:void lambda$getInstructionBuilders$0(com.android.tools.r8.ir.conversion.IRBuilder):284 -> d
     1:1:void lambda$getInstructionBuilders$1(com.android.tools.r8.ir.conversion.IRBuilder):284:284 -> e
     1:1:java.util.List getInstructionBuilders():284:284 -> f
-com.android.tools.r8.graph.ThrowingInitClassLens -> com.android.tools.r8.internal.AY:
+com.android.tools.r8.graph.ThrowingInitClassLens -> com.android.tools.r8.internal.BY:
     com.android.tools.r8.graph.ThrowingInitClassLens INSTANCE -> a
     1:1:void <clinit>():11:11 -> <clinit>
     1:1:void <init>():13:13 -> <init>
@@ -36768,9 +36800,9 @@
     1:1:void <init>(java.lang.String,int):20:20 -> <init>
 com.android.tools.r8.graph.UseRegistryWithResult -> com.android.tools.r8.internal.u10:
     java.lang.Object result -> e
-    1:18:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.Definition,java.lang.Object):0:17 -> <init>
+    1:2:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.Definition,java.lang.Object):16:17 -> <init>
+    1:2:void setResult(java.lang.Object):25:26 -> a
     1:1:java.lang.Object getResult():21:21 -> f
-    1:27:void setResult(java.lang.Object):0:26 -> g
 com.android.tools.r8.graph.analysis.ApiModelAnalysis -> com.android.tools.r8.internal.j2:
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.androidapi.ComputedApiLevel minApiLevel -> c
@@ -36917,7 +36949,7 @@
     1:1:void <init>(com.android.tools.r8.graph.AppView,java.util.Map,com.android.tools.r8.graph.analysis.InitializedClassesInInstanceMethodsAnalysis$1):21:21 -> <init>
     2:4:void <init>(com.android.tools.r8.graph.AppView,java.util.Map):27:29 -> <init>
     1:18:boolean isClassDefinitelyLoadedInInstanceMethod(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod):34:51 -> a
-com.android.tools.r8.graph.analysis.InvokeVirtualToInterfaceVerifyErrorWorkaround -> com.android.tools.r8.internal.dv:
+com.android.tools.r8.graph.analysis.InvokeVirtualToInterfaceVerifyErrorWorkaround -> com.android.tools.r8.internal.ev:
     com.android.tools.r8.shaking.Enqueuer enqueuer -> b
     com.android.tools.r8.utils.InternalOptions options -> c
     com.android.tools.r8.graph.DexType androidHardwareCamera2CameraDeviceType -> a
@@ -36994,10 +37026,10 @@
     1:4:com.android.tools.r8.graph.bytecodemetadata.BytecodeMetadataProvider$Builder addMetadata(com.android.tools.r8.ir.code.Instruction,java.util.function.Consumer):57:60 -> a
     5:11:com.android.tools.r8.graph.bytecodemetadata.BytecodeMetadataProvider build():65:71 -> a
     12:12:void lambda$build$0(java.util.Map,com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.graph.bytecodemetadata.BytecodeInstructionMetadata$Builder):70:70 -> a
-com.android.tools.r8.graph.classmerging.MergedClasses -> com.android.tools.r8.internal.pE:
+com.android.tools.r8.graph.classmerging.MergedClasses -> com.android.tools.r8.internal.qE:
     boolean hasBeenMergedIntoDifferentType(com.android.tools.r8.graph.DexType) -> a
     boolean verifyAllSourcesPruned(com.android.tools.r8.graph.AppView) -> a
-com.android.tools.r8.graph.classmerging.MergedClassesCollection -> com.android.tools.r8.internal.qE:
+com.android.tools.r8.graph.classmerging.MergedClassesCollection -> com.android.tools.r8.internal.rE:
     java.util.List collection -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():15:15 -> <clinit>
@@ -37505,12 +37537,12 @@
     83:83:void com.android.tools.r8.horizontalclassmerging.ClassMerger.appendClassIdField():220:220 -> a
     83:83:void com.android.tools.r8.horizontalclassmerging.ClassMerger.mergeFields(com.android.tools.r8.graph.PrunedItems$Builder):305 -> a
     83:83:void mergeGroup(com.android.tools.r8.graph.PrunedItems$Builder,com.android.tools.r8.horizontalclassmerging.SyntheticArgumentClass,com.android.tools.r8.horizontalclassmerging.code.SyntheticInitializerConverter$Builder,java.util.function.Consumer):336 -> a
-    84:84:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    84:84:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     84:84:void com.android.tools.r8.horizontalclassmerging.ClassMerger.appendClassIdField():220 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     84:84:void com.android.tools.r8.horizontalclassmerging.ClassMerger.mergeFields(com.android.tools.r8.graph.PrunedItems$Builder):305 -> a
     84:84:void mergeGroup(com.android.tools.r8.graph.PrunedItems$Builder,com.android.tools.r8.horizontalclassmerging.SyntheticArgumentClass,com.android.tools.r8.horizontalclassmerging.code.SyntheticInitializerConverter$Builder,java.util.function.Consumer):336 -> a
-    85:85:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    85:85:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     85:85:void com.android.tools.r8.horizontalclassmerging.ClassMerger.appendClassIdField():220 -> a
     85:85:void com.android.tools.r8.horizontalclassmerging.ClassMerger.mergeFields(com.android.tools.r8.graph.PrunedItems$Builder):305 -> a
     85:85:void mergeGroup(com.android.tools.r8.graph.PrunedItems$Builder,com.android.tools.r8.horizontalclassmerging.SyntheticArgumentClass,com.android.tools.r8.horizontalclassmerging.code.SyntheticInitializerConverter$Builder,java.util.function.Consumer):336 -> a
@@ -37691,7 +37723,7 @@
     64:64:com.android.tools.r8.shaking.KeepInfoCollection com.android.tools.r8.shaking.KeepInfoCollection$MutableKeepInfoCollection.mutate(java.util.function.Consumer):507:507 -> a
     64:64:void run(com.android.tools.r8.shaking.RuntimeTypeCheckInfo,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):138 -> a
     65:67:void run(com.android.tools.r8.shaking.RuntimeTypeCheckInfo,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):142:142 -> a
-    68:68:void com.android.tools.r8.graph.AppView.rewriteWithLensAndApplication(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication):748:748 -> a
+    68:68:void com.android.tools.r8.graph.AppView.rewriteWithLensAndApplication(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication):768:768 -> a
     68:68:void run(com.android.tools.r8.shaking.RuntimeTypeCheckInfo,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):142 -> a
     69:82:void run(com.android.tools.r8.shaking.RuntimeTypeCheckInfo,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):144:157 -> a
     83:86:void run(com.android.tools.r8.shaking.RuntimeTypeCheckInfo,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):156:159 -> a
@@ -38169,7 +38201,7 @@
     99:104:void lambda$create$5(java.util.Map,com.android.tools.r8.graph.AppView,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap,com.android.tools.r8.horizontalclassmerging.HorizontalClassMergerGraphLens$Builder,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode,com.android.tools.r8.graph.ProgramMethod):94:99 -> a
     105:105:com.android.tools.r8.horizontalclassmerging.InstanceInitializerMerger$Builder lambda$create$4(com.android.tools.r8.graph.AppView,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap,com.android.tools.r8.horizontalclassmerging.HorizontalClassMergerGraphLens$Builder,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode,com.android.tools.r8.graph.DexProto):97:97 -> a
     106:107:void forEach(java.util.function.Consumer):122:123 -> a
-com.android.tools.r8.horizontalclassmerging.MergeGroup -> com.android.tools.r8.internal.oE:
+com.android.tools.r8.horizontalclassmerging.MergeGroup -> com.android.tools.r8.internal.pE:
     com.android.tools.r8.utils.collections.BidirectionalManyToOneMap instanceFieldMap -> e
     com.android.tools.r8.graph.DexProgramClass target -> d
     boolean $assertionsDisabled -> f
@@ -38219,10 +38251,10 @@
     18:18:void selectTarget(com.android.tools.r8.graph.AppView):185 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     19:19:void selectTarget(com.android.tools.r8.graph.AppView):185:185 -> b
-    20:20:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> b
+    20:20:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> b
     20:20:void selectTarget(com.android.tools.r8.graph.AppView):189 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    21:21:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> b
+    21:21:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> b
     21:21:void selectTarget(com.android.tools.r8.graph.AppView):189 -> b
     22:22:void selectTarget(com.android.tools.r8.graph.AppView):189:189 -> b
     23:24:void com.android.tools.r8.horizontalclassmerging.MergeGroup.setTarget(com.android.tools.r8.graph.DexProgramClass):193:194 -> b
@@ -38264,23 +38296,23 @@
     1:1:int size():227:227 -> size
     1:1:java.lang.Object[] toArray():260:260 -> toArray
     2:2:java.lang.Object[] toArray(java.lang.Object[]):265:265 -> toArray
-com.android.tools.r8.horizontalclassmerging.MultiClassPolicy -> com.android.tools.r8.internal.bG:
+com.android.tools.r8.horizontalclassmerging.MultiClassPolicy -> com.android.tools.r8.internal.cG:
     1:1:void <init>():9:9 -> <init>
     java.util.Collection apply(com.android.tools.r8.horizontalclassmerging.MergeGroup) -> a
     com.android.tools.r8.horizontalclassmerging.MultiClassPolicy asMultiClassPolicy() -> a
     boolean isMultiClassPolicy() -> g
-com.android.tools.r8.horizontalclassmerging.MultiClassPolicyWithPreprocessing -> com.android.tools.r8.internal.cG:
+com.android.tools.r8.horizontalclassmerging.MultiClassPolicyWithPreprocessing -> com.android.tools.r8.internal.dG:
     1:1:void <init>():11:11 -> <init>
     java.util.Collection apply(com.android.tools.r8.horizontalclassmerging.MergeGroup,java.lang.Object) -> a
     java.lang.Object preprocess(java.util.Collection,java.util.concurrent.ExecutorService) -> a
     com.android.tools.r8.horizontalclassmerging.MultiClassPolicyWithPreprocessing asMultiClassPolicyWithPreprocessing() -> b
     boolean isMultiClassPolicyWithPreprocessing() -> h
-com.android.tools.r8.horizontalclassmerging.MultiClassSameReferencePolicy -> com.android.tools.r8.internal.dG:
+com.android.tools.r8.horizontalclassmerging.MultiClassSameReferencePolicy -> com.android.tools.r8.internal.eG:
     1:1:void <init>():12:12 -> <init>
     java.lang.Object getMergeKey(com.android.tools.r8.graph.DexProgramClass) -> a
     1:9:java.util.Collection apply(com.android.tools.r8.horizontalclassmerging.MergeGroup):16:24 -> a
     10:10:com.android.tools.r8.horizontalclassmerging.MergeGroup lambda$apply$0(java.lang.Object):20:20 -> a
-com.android.tools.r8.horizontalclassmerging.Policy -> com.android.tools.r8.internal.gM:
+com.android.tools.r8.horizontalclassmerging.Policy -> com.android.tools.r8.internal.hM:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():14:14 -> <clinit>
     1:1:void <init>():14:14 -> <init>
@@ -38300,7 +38332,7 @@
     boolean isMultiClassPolicyWithPreprocessing() -> h
     boolean isSingleClassPolicy() -> i
     boolean shouldSkipPolicy() -> j
-com.android.tools.r8.horizontalclassmerging.PolicyExecutor -> com.android.tools.r8.internal.hM:
+com.android.tools.r8.horizontalclassmerging.PolicyExecutor -> com.android.tools.r8.internal.iM:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():20:20 -> <clinit>
     1:8:void applySingleClassPolicy(com.android.tools.r8.horizontalclassmerging.SingleClassPolicy,java.util.LinkedList):23:30 -> a
@@ -38319,7 +38351,7 @@
     1:1:void lambda$applyMultiClassPolicyWithPreprocessing$3(com.android.tools.r8.horizontalclassmerging.MergeGroup,com.android.tools.r8.horizontalclassmerging.MergeGroup):67:67 -> b
     2:2:void com.android.tools.r8.horizontalclassmerging.MergeGroup.applyMetadataFrom(com.android.tools.r8.horizontalclassmerging.MergeGroup):58:58 -> b
     2:2:void lambda$applyMultiClassPolicyWithPreprocessing$3(com.android.tools.r8.horizontalclassmerging.MergeGroup,com.android.tools.r8.horizontalclassmerging.MergeGroup):67 -> b
-com.android.tools.r8.horizontalclassmerging.PolicyScheduler -> com.android.tools.r8.internal.iM:
+com.android.tools.r8.horizontalclassmerging.PolicyScheduler -> com.android.tools.r8.internal.jM:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():63:63 -> <clinit>
     1:1:java.util.List getPolicies(com.android.tools.r8.graph.AppView,com.android.tools.r8.horizontalclassmerging.IRCodeProvider,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode,com.android.tools.r8.shaking.RuntimeTypeCheckInfo):71:71 -> a
@@ -38360,12 +38392,12 @@
     52:63:boolean verifySingleClassPoliciesIrrelevantForMergingSynthetics(com.android.tools.r8.graph.AppView,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode,com.android.tools.r8.com.google.common.collect.ImmutableList$Builder):140:151 -> a
     64:70:boolean verifyPolicyOrderingConstraints(java.util.List):242:248 -> a
     71:71:boolean lambda$verifyPolicyOrderingConstraints$0(com.android.tools.r8.horizontalclassmerging.Policy):244:244 -> a
-com.android.tools.r8.horizontalclassmerging.SingleClassPolicy -> com.android.tools.r8.internal.gV:
+com.android.tools.r8.horizontalclassmerging.SingleClassPolicy -> com.android.tools.r8.internal.hV:
     1:1:void <init>():9:9 -> <init>
     boolean canMerge(com.android.tools.r8.graph.DexProgramClass) -> a
     com.android.tools.r8.horizontalclassmerging.SingleClassPolicy asSingleClassPolicy() -> c
     boolean isSingleClassPolicy() -> i
-com.android.tools.r8.horizontalclassmerging.SubtypingForrestForClasses -> com.android.tools.r8.internal.IX:
+com.android.tools.r8.horizontalclassmerging.SubtypingForrestForClasses -> com.android.tools.r8.internal.JX:
     java.util.Map subtypeMap -> c
     com.android.tools.r8.graph.AppView appView -> a
     java.util.Collection roots -> b
@@ -38395,12 +38427,12 @@
     3:3:java.util.Collection com.android.tools.r8.horizontalclassmerging.SubtypingForrestForClasses.getSubtypesFor(com.android.tools.r8.graph.DexProgramClass):68:68 -> b
     3:3:java.lang.Object traverseNodeDepthFirst(com.android.tools.r8.graph.DexProgramClass,java.lang.Object,java.util.function.BiFunction):74 -> b
     4:4:java.lang.Object traverseNodeDepthFirst(com.android.tools.r8.graph.DexProgramClass,java.lang.Object,java.util.function.BiFunction):74:74 -> b
-com.android.tools.r8.horizontalclassmerging.SyntheticArgumentClass -> com.android.tools.r8.internal.bY:
+com.android.tools.r8.horizontalclassmerging.SyntheticArgumentClass -> com.android.tools.r8.internal.cY:
     java.util.List syntheticClassTypes -> a
     1:1:void <init>(java.util.List,com.android.tools.r8.horizontalclassmerging.SyntheticArgumentClass$1):33:33 -> <init>
     2:3:void <init>(java.util.List):37:38 -> <init>
     1:1:java.util.List getArgumentClasses():42:42 -> a
-com.android.tools.r8.horizontalclassmerging.SyntheticArgumentClass$Builder -> com.android.tools.r8.internal.aY:
+com.android.tools.r8.horizontalclassmerging.SyntheticArgumentClass$Builder -> com.android.tools.r8.internal.bY:
     com.android.tools.r8.graph.AppView appView -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():45:45 -> <clinit>
@@ -38701,7 +38733,7 @@
     9:9:boolean com.android.tools.r8.utils.TraversalContinuation.shouldBreak():83:83 -> a
     9:9:void registerReachableDefinitions(com.android.tools.r8.graph.UseRegistry):49 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-com.android.tools.r8.horizontalclassmerging.code.SyntheticInitializerConverter -> com.android.tools.r8.internal.hY:
+com.android.tools.r8.horizontalclassmerging.code.SyntheticInitializerConverter -> com.android.tools.r8.internal.iY:
     com.android.tools.r8.graph.AppView appView -> a
     java.util.List instanceInitializers -> d
     java.util.List classInitializers -> c
@@ -38731,7 +38763,7 @@
     10:12:void lambda$convertInstanceInitializers$1(com.android.tools.r8.ir.conversion.IRConverter,com.android.tools.r8.graph.ProgramMethod):62 -> b
     13:13:void com.android.tools.r8.horizontalclassmerging.code.SyntheticInitializerConverter.processMethod(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.IRConverter):81:81 -> b
     13:13:void lambda$convertInstanceInitializers$1(com.android.tools.r8.ir.conversion.IRConverter,com.android.tools.r8.graph.ProgramMethod):62 -> b
-com.android.tools.r8.horizontalclassmerging.code.SyntheticInitializerConverter$Builder -> com.android.tools.r8.internal.gY:
+com.android.tools.r8.horizontalclassmerging.code.SyntheticInitializerConverter$Builder -> com.android.tools.r8.internal.hY:
     com.android.tools.r8.graph.AppView appView -> a
     java.util.List instanceInitializers -> d
     java.util.List classInitializers -> c
@@ -38767,16 +38799,16 @@
     com.android.tools.r8.utils.InternalOptions$HorizontalClassMergerOptions options -> b
     1:3:void <init>(com.android.tools.r8.graph.AppView):19:21 -> <init>
     1:1:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):26:26 -> a
-    2:2:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
+    2:2:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
     2:2:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):26 -> a
-    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
+    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
     3:3:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):26 -> a
     4:4:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):29:29 -> a
-    5:5:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
+    5:5:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
     5:5:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):29 -> a
-    6:6:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    6:6:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
+    6:6:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    6:6:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
     6:6:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):29 -> a
     1:1:java.lang.String getName():37:37 -> e
 com.android.tools.r8.horizontalclassmerging.policies.FinalizeMergeGroup -> com.android.tools.r8.internal.Ik:
@@ -38792,7 +38824,7 @@
     18:19:void lambda$verifyAlreadyFinalized$2(java.util.Set,com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.graph.DexEncodedField):70:71 -> a
     1:9:boolean verifyAlreadyFinalized(com.android.tools.r8.horizontalclassmerging.MergeGroup):60:68 -> b
     1:1:java.lang.String getName():51:51 -> e
-com.android.tools.r8.horizontalclassmerging.policies.LimitClassGroups -> com.android.tools.r8.internal.OB:
+com.android.tools.r8.horizontalclassmerging.policies.LimitClassGroups -> com.android.tools.r8.internal.PB:
     int maxGroupSize -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():16:16 -> <clinit>
@@ -38807,7 +38839,7 @@
     20:20:java.util.Collection apply(com.android.tools.r8.horizontalclassmerging.MergeGroup):28:28 -> a
     1:1:java.lang.String getName():58:58 -> e
     boolean isIdentityForInterfaceGroups() -> f
-com.android.tools.r8.horizontalclassmerging.policies.LimitInterfaceGroups -> com.android.tools.r8.internal.PB:
+com.android.tools.r8.horizontalclassmerging.policies.LimitInterfaceGroups -> com.android.tools.r8.internal.QB:
     int maxGroupSize -> b
     1:2:void <init>(com.android.tools.r8.graph.AppView):22:23 -> <init>
     1:6:java.util.Collection apply(com.android.tools.r8.horizontalclassmerging.MergeGroup):29:34 -> a
@@ -38820,7 +38852,7 @@
     25:25:java.util.Collection apply(com.android.tools.r8.horizontalclassmerging.MergeGroup):35 -> a
     26:26:java.util.Collection apply(com.android.tools.r8.horizontalclassmerging.MergeGroup):37:37 -> a
     1:1:java.lang.String getName():61:61 -> e
-com.android.tools.r8.horizontalclassmerging.policies.MinimizeInstanceFieldCasts -> com.android.tools.r8.internal.jF:
+com.android.tools.r8.horizontalclassmerging.policies.MinimizeInstanceFieldCasts -> com.android.tools.r8.internal.kF:
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():20:20 -> <clinit>
     1:1:void <init>():20:20 -> <init>
@@ -38832,7 +38864,7 @@
     42:42:void addExact(com.android.tools.r8.graph.DexProgramClass,java.util.Map):63:63 -> a
     1:1:void lambda$apply$0(java.util.Map,com.android.tools.r8.graph.DexProgramClass):26:26 -> b
     1:1:java.lang.String getName():76:76 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoAnnotationClasses -> com.android.tools.r8.internal.UG:
+com.android.tools.r8.horizontalclassmerging.policies.NoAnnotationClasses -> com.android.tools.r8.internal.VG:
     1:1:void <init>():10:10 -> <init>
     1:1:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
     1:1:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):13 -> a
@@ -38840,13 +38872,13 @@
     2:2:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
     2:2:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):13 -> a
     1:1:java.lang.String getName():18:18 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoCheckDiscard -> com.android.tools.r8.internal.VG:
+com.android.tools.r8.horizontalclassmerging.policies.NoCheckDiscard -> com.android.tools.r8.internal.WG:
     com.android.tools.r8.shaking.KeepInfoCollection keepInfo -> b
     com.android.tools.r8.utils.InternalOptions options -> c
     1:3:void <init>(com.android.tools.r8.graph.AppView):19:21 -> <init>
     1:1:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):26:26 -> a
     1:1:java.lang.String getName():31:31 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoClassAnnotationCollisions -> com.android.tools.r8.internal.WG:
+com.android.tools.r8.horizontalclassmerging.policies.NoClassAnnotationCollisions -> com.android.tools.r8.internal.XG:
     1:1:void com.android.tools.r8.horizontalclassmerging.policies.AtMostOneClassThatMatchesPolicy.<init>():18:18 -> <init>
     1:1:void <init>():9 -> <init>
     1:2:java.util.Collection com.android.tools.r8.horizontalclassmerging.policies.AtMostOneClassThatMatchesPolicy.apply(com.android.tools.r8.horizontalclassmerging.MergeGroup):23:24 -> a
@@ -38874,7 +38906,7 @@
     21:24:java.util.Collection com.android.tools.r8.horizontalclassmerging.policies.AtMostOneClassThatMatchesPolicy.apply(com.android.tools.r8.horizontalclassmerging.MergeGroup):0 -> a
       # {"id":"com.android.tools.r8.synthesized"}
     1:1:java.lang.String getName():18:18 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles -> com.android.tools.r8.internal.ZG:
+com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles -> com.android.tools.r8.internal.aH:
     java.util.Map allGroups -> c
     com.android.tools.r8.horizontalclassmerging.policies.deadlock.SingleCallerInformation singleCallerInformation -> d
     com.android.tools.r8.graph.AppView appView -> b
@@ -38925,7 +38957,7 @@
     1:1:void clear():263:263 -> d
     1:1:java.lang.String getName():268:268 -> e
     1:2:boolean shouldSkipPolicy():286:287 -> j
-com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles$Tracer -> com.android.tools.r8.internal.YG:
+com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles$Tracer -> com.android.tools.r8.internal.ZG:
     com.android.tools.r8.horizontalclassmerging.MergeGroup group -> a
     com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles this$0 -> h
     java.util.Set seenClassInitializers -> c
@@ -38957,7 +38989,7 @@
     5:6:void com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles$Tracer.clearSeen():316:317 -> c
     5:6:void trace():393 -> c
     1:4:void recordClassInitializerReachableFromTracingRoots(com.android.tools.r8.graph.DexProgramClass):343:346 -> d
-com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles$Tracer$TracerUseRegistry -> com.android.tools.r8.internal.XG:
+com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles$Tracer$TracerUseRegistry -> com.android.tools.r8.internal.YG:
     com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles$Tracer this$1 -> e
     1:2:void <init>(com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles$Tracer,com.android.tools.r8.graph.ProgramMethod):409:410 -> <init>
     void registerCheckCast(com.android.tools.r8.graph.DexType,boolean) -> a
@@ -39116,13 +39148,13 @@
     21:21:void com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles$Tracer$TracerUseRegistry.triggerClassInitializerIfNotAlreadyTriggeredInContext(com.android.tools.r8.graph.DexProgramClass):429:429 -> g
     21:21:void com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerCycles$Tracer$TracerUseRegistry.triggerClassInitializerIfNotAlreadyTriggeredInContext(com.android.tools.r8.graph.DexType):423 -> g
     21:21:void registerStaticFieldWrite(com.android.tools.r8.graph.DexField):565 -> g
-com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerWithObservableSideEffects -> com.android.tools.r8.internal.aH:
+com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerWithObservableSideEffects -> com.android.tools.r8.internal.bH:
     1:1:void <init>():16:16 -> <init>
     1:5:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):20:24 -> a
     6:7:boolean com.android.tools.r8.horizontalclassmerging.policies.NoClassInitializerWithObservableSideEffects.isKotlinLambda(com.android.tools.r8.graph.DexProgramClass):28:29 -> a
     6:7:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):24 -> a
     1:1:java.lang.String getName():34:34 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoConstructorCollisions -> com.android.tools.r8.internal.bH:
+com.android.tools.r8.horizontalclassmerging.policies.NoConstructorCollisions -> com.android.tools.r8.internal.cH:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> c
     com.android.tools.r8.graph.AppView appView -> b
     boolean $assertionsDisabled -> d
@@ -39147,7 +39179,7 @@
     31:41:java.util.Set preprocess(java.util.Collection,java.util.concurrent.ExecutorService):97:107 -> b
     42:56:com.android.tools.r8.graph.DexType rewriteType(com.android.tools.r8.graph.DexType,java.util.Map):129:143 -> b
     1:1:java.lang.String getName():149:149 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoDeadEnumLiteMaps -> com.android.tools.r8.internal.cH:
+com.android.tools.r8.horizontalclassmerging.policies.NoDeadEnumLiteMaps -> com.android.tools.r8.internal.dH:
     java.util.Set deadEnumLiteMaps -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():17:17 -> <clinit>
@@ -39155,7 +39187,7 @@
     8:8:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):26:26 -> <init>
     1:1:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):32:32 -> a
     1:1:java.lang.String getName():37:37 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoDeadLocks -> com.android.tools.r8.internal.dH:
+com.android.tools.r8.horizontalclassmerging.policies.NoDeadLocks -> com.android.tools.r8.internal.eH:
     com.android.tools.r8.graph.AppView appView -> b
     1:2:void <init>(com.android.tools.r8.graph.AppView):20:21 -> <init>
     1:1:boolean com.android.tools.r8.horizontalclassmerging.policies.NoDeadLocks.isSynchronizationClass(com.android.tools.r8.graph.DexProgramClass):25:25 -> a
@@ -39170,7 +39202,7 @@
     5:7:boolean lambda$apply$0(java.util.Collection,com.android.tools.r8.graph.DexProgramClass):36:38 -> a
     8:32:java.util.Collection apply(com.android.tools.r8.horizontalclassmerging.MergeGroup):31:55 -> a
     1:1:java.lang.String getName():62:62 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoDefaultInterfaceMethodCollisions -> com.android.tools.r8.internal.fH:
+com.android.tools.r8.horizontalclassmerging.policies.NoDefaultInterfaceMethodCollisions -> com.android.tools.r8.internal.gH:
     com.android.tools.r8.graph.AppView appView -> b
     com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode mode -> c
     1:3:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):79:81 -> <init>
@@ -39225,13 +39257,13 @@
     1:1:boolean lambda$computeInheritedDefaultMethodsPerProgramType$6(com.android.tools.r8.graph.DexType):265:265 -> d
     1:1:java.lang.String getName():349:349 -> e
     1:1:boolean shouldSkipPolicy():354:354 -> j
-com.android.tools.r8.horizontalclassmerging.policies.NoDefaultInterfaceMethodCollisions$InterfaceInfo -> com.android.tools.r8.internal.eH:
+com.android.tools.r8.horizontalclassmerging.policies.NoDefaultInterfaceMethodCollisions$InterfaceInfo -> com.android.tools.r8.internal.fH:
     java.util.Map inheritedDefaultMethods -> a
     java.util.Map defaultMethodsInheritedBySubclasses -> b
     1:3:void <init>(java.util.Map,java.util.Map):369:371 -> <init>
     1:1:java.util.Map getDefaultMethodsInheritedBySubclasses():379:379 -> a
     1:1:java.util.Map getInheritedDefaultMethods():375:375 -> b
-com.android.tools.r8.horizontalclassmerging.policies.NoDefaultInterfaceMethodMerging -> com.android.tools.r8.internal.gH:
+com.android.tools.r8.horizontalclassmerging.policies.NoDefaultInterfaceMethodMerging -> com.android.tools.r8.internal.hH:
     com.android.tools.r8.utils.InternalOptions options -> c
     com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode mode -> b
     1:3:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):35:37 -> <init>
@@ -39248,7 +39280,7 @@
     33:33:void addClassToGroup(com.android.tools.r8.graph.DexProgramClass,java.util.Map):72:72 -> a
     1:1:java.lang.String getName():77:77 -> e
     1:1:boolean shouldSkipPolicy():82:82 -> j
-com.android.tools.r8.horizontalclassmerging.policies.NoDifferentApiReferenceLevel -> com.android.tools.r8.internal.hH:
+com.android.tools.r8.horizontalclassmerging.policies.NoDifferentApiReferenceLevel -> com.android.tools.r8.internal.iH:
     com.android.tools.r8.graph.AppView appView -> c
     boolean $assertionsDisabled -> e
     com.android.tools.r8.androidapi.AndroidApiLevelCompute apiLevelCompute -> b
@@ -39269,7 +39301,7 @@
     5:9:java.lang.Object getMergeKey(com.android.tools.r8.graph.DexProgramClass):15 -> a
     1:1:java.lang.String getName():36:36 -> e
     1:1:boolean shouldSkipPolicy():31:31 -> j
-com.android.tools.r8.horizontalclassmerging.policies.NoDirectRuntimeTypeChecks -> com.android.tools.r8.internal.iH:
+com.android.tools.r8.horizontalclassmerging.policies.NoDirectRuntimeTypeChecks -> com.android.tools.r8.internal.jH:
     com.android.tools.r8.synthesis.SyntheticItems syntheticItems -> d
     com.android.tools.r8.utils.InternalOptions options -> b
     boolean $assertionsDisabled -> e
@@ -39277,10 +39309,10 @@
     1:1:void <clinit>():15:15 -> <clinit>
     1:5:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode,com.android.tools.r8.shaking.RuntimeTypeCheckInfo):26:30 -> <init>
     1:2:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):35:36 -> a
-    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
+    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
     3:3:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):36 -> a
-    4:4:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    4:4:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
+    4:4:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    4:4:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
     4:4:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):36 -> a
     5:5:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):36:36 -> a
     6:6:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):0:0 -> a
@@ -39291,7 +39323,7 @@
     43:46:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):37:40 -> a
     1:1:java.lang.String getName():45:45 -> e
     1:1:boolean shouldSkipPolicy():50:50 -> j
-com.android.tools.r8.horizontalclassmerging.policies.NoEnums -> com.android.tools.r8.internal.jH:
+com.android.tools.r8.horizontalclassmerging.policies.NoEnums -> com.android.tools.r8.internal.kH:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap cache -> c
     com.android.tools.r8.graph.AppView appView -> b
     1:1:void <init>(com.android.tools.r8.graph.AppView):20:20 -> <init>
@@ -39300,12 +39332,12 @@
     5:17:boolean isEnumSubtype(com.android.tools.r8.graph.DexClass):46:58 -> a
     1:1:void clear():26:26 -> d
     1:1:java.lang.String getName():31:31 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoFailedResolutionTargets -> com.android.tools.r8.internal.kH:
+com.android.tools.r8.horizontalclassmerging.policies.NoFailedResolutionTargets -> com.android.tools.r8.internal.lH:
     java.util.Set failedResolutionHolders -> b
     1:4:void <init>(com.android.tools.r8.graph.AppView):21:24 -> <init>
     1:1:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):35:35 -> a
     1:1:java.lang.String getName():30:30 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoIllegalInlining -> com.android.tools.r8.internal.lH:
+com.android.tools.r8.horizontalclassmerging.policies.NoIllegalInlining -> com.android.tools.r8.internal.mH:
     com.android.tools.r8.graph.AppView appView -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():18:18 -> <clinit>
@@ -39320,7 +39352,7 @@
     20:20:boolean com.android.tools.r8.horizontalclassmerging.policies.NoIllegalInlining.disallowInlining(com.android.tools.r8.graph.ProgramMethod):46 -> a
     20:20:boolean lambda$canMerge$0(com.android.tools.r8.graph.ProgramMethod):57 -> a
     1:1:java.lang.String getName():62:62 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoIndirectRuntimeTypeChecks -> com.android.tools.r8.internal.mH:
+com.android.tools.r8.horizontalclassmerging.policies.NoIndirectRuntimeTypeChecks -> com.android.tools.r8.internal.nH:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap cache -> d
     com.android.tools.r8.graph.AppView appView -> b
     com.android.tools.r8.shaking.RuntimeTypeCheckInfo runtimeTypeCheckInfo -> c
@@ -39346,15 +39378,15 @@
     7:13:com.android.tools.r8.graph.DexTypeList com.android.tools.r8.graph.DexTypeList.getSorted():162:168 -> b
     7:13:com.android.tools.r8.graph.DexTypeList getMergeKey(com.android.tools.r8.graph.DexProgramClass):40 -> b
     1:1:java.lang.String getName():81:81 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoInnerClasses -> com.android.tools.r8.internal.nH:
+com.android.tools.r8.horizontalclassmerging.policies.NoInnerClasses -> com.android.tools.r8.internal.oH:
     1:1:void <init>():10:10 -> <init>
     1:1:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):15:15 -> a
     1:1:java.lang.String getName():20:20 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoInstanceFieldAnnotations -> com.android.tools.r8.internal.oH:
+com.android.tools.r8.horizontalclassmerging.policies.NoInstanceFieldAnnotations -> com.android.tools.r8.internal.pH:
     1:1:void <init>():11:11 -> <init>
     1:2:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):15:16 -> a
     1:1:java.lang.String getName():25:25 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoInstanceInitializerMerging -> com.android.tools.r8.internal.pH:
+com.android.tools.r8.horizontalclassmerging.policies.NoInstanceInitializerMerging -> com.android.tools.r8.internal.qH:
     com.android.tools.r8.graph.AppView appView -> b
     com.android.tools.r8.horizontalclassmerging.IRCodeProvider codeProvider -> c
     boolean $assertionsDisabled -> d
@@ -39390,14 +39422,14 @@
     1:1:java.util.Optional lambda$apply$0(com.android.tools.r8.horizontalclassmerging.MergeGroup,com.android.tools.r8.utils.collections.ProgramMethodMap,com.android.tools.r8.graph.ProgramMethod):100:100 -> b
     1:1:java.lang.String getName():257:257 -> e
     boolean isIdentityForInterfaceGroups() -> f
-com.android.tools.r8.horizontalclassmerging.policies.NoInterfaces -> com.android.tools.r8.internal.qH:
+com.android.tools.r8.horizontalclassmerging.policies.NoInterfaces -> com.android.tools.r8.internal.rH:
     com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode mode -> b
     com.android.tools.r8.utils.InternalOptions$HorizontalClassMergerOptions options -> c
     1:3:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):19:21 -> <init>
     1:1:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):26:26 -> a
     1:1:java.lang.String getName():36:36 -> e
     1:1:boolean shouldSkipPolicy():31:31 -> j
-com.android.tools.r8.horizontalclassmerging.policies.NoKeepRules -> com.android.tools.r8.internal.rH:
+com.android.tools.r8.horizontalclassmerging.policies.NoKeepRules -> com.android.tools.r8.internal.sH:
     com.android.tools.r8.shaking.KeepInfoCollection keepInfo -> c
     com.android.tools.r8.graph.AppView appView -> b
     java.util.Set dontMergeTypes -> e
@@ -39409,7 +39441,7 @@
     10:10:void processClass(com.android.tools.r8.graph.DexProgramClass):42:42 -> b
     11:19:void processClass(com.android.tools.r8.graph.DexProgramClass):40:48 -> b
     1:1:java.lang.String getName():59:59 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoKotlinMetadata -> com.android.tools.r8.internal.sH:
+com.android.tools.r8.horizontalclassmerging.policies.NoKotlinMetadata -> com.android.tools.r8.internal.tH:
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():11:11 -> <clinit>
     1:1:void <init>():13:13 -> <init>
@@ -39419,26 +39451,26 @@
     4:4:boolean lambda$verifyNoUnexpectedKotlinMemberInfo$0(com.android.tools.r8.graph.DexEncodedMember):29:29 -> a
     1:3:boolean verifyNoUnexpectedKotlinMemberInfo(com.android.tools.r8.graph.DexProgramClass):28:28 -> b
     1:1:java.lang.String getName():35:35 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoNativeMethods -> com.android.tools.r8.internal.tH:
+com.android.tools.r8.horizontalclassmerging.policies.NoNativeMethods -> com.android.tools.r8.internal.uH:
     1:1:void <init>():12:12 -> <init>
     1:1:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):15:15 -> a
     2:2:boolean com.android.tools.r8.com.google.common.collect.Iterables.any(java.lang.Iterable,com.android.tools.r8.com.google.common.base.Predicate):608:608 -> a
     2:2:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):15 -> a
     1:1:java.lang.String getName():20:20 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoServiceLoaders -> com.android.tools.r8.internal.uH:
+com.android.tools.r8.horizontalclassmerging.policies.NoServiceLoaders -> com.android.tools.r8.internal.vH:
     com.android.tools.r8.graph.AppView appView -> b
     java.util.Set allServiceImplementations -> c
     1:3:void <init>(com.android.tools.r8.graph.AppView):18:20 -> <init>
     1:2:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):25:26 -> a
     1:1:java.lang.String getName():31:31 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoVerticallyMergedClasses -> com.android.tools.r8.internal.vH:
+com.android.tools.r8.horizontalclassmerging.policies.NoVerticallyMergedClasses -> com.android.tools.r8.internal.wH:
     com.android.tools.r8.graph.AppView appView -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():13:13 -> <clinit>
     1:5:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):16:20 -> <init>
     1:4:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):25:28 -> a
     1:1:java.lang.String getName():33:33 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoVirtualMethodMerging -> com.android.tools.r8.internal.wH:
+com.android.tools.r8.horizontalclassmerging.policies.NoVirtualMethodMerging -> com.android.tools.r8.internal.xH:
     com.android.tools.r8.graph.AppView appView -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():33:33 -> <clinit>
@@ -39471,7 +39503,7 @@
     59:59:boolean hasNonAbstractDefinitionInSuperInterface(java.lang.Iterable,com.android.tools.r8.graph.ProgramMethod):118 -> a
     60:65:boolean lambda$hasNonAbstractDefinitionInSuperInterface$1(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.DexType):121:126 -> a
     1:1:java.lang.String getName():132:132 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NoWeakerAccessPrivileges -> com.android.tools.r8.internal.xH:
+com.android.tools.r8.horizontalclassmerging.policies.NoWeakerAccessPrivileges -> com.android.tools.r8.internal.yH:
     java.util.Map inheritedInterfaceMethodsCache -> d
     com.android.tools.r8.optimize.argumentpropagation.utils.ProgramClassesBidirectedGraph graph -> b
     java.util.Map nonPublicVirtualMethodSignaturesCache -> e
@@ -39512,12 +39544,12 @@
     3:3:void lambda$getOrComputeNonPublicVirtualMethodSignaturesInComponent$3(com.android.tools.r8.utils.collections.DexMethodSignatureSet,com.android.tools.r8.graph.DexClass):161:161 -> c
     1:3:void clear():190:192 -> d
     1:1:java.lang.String getName():197:197 -> e
-com.android.tools.r8.horizontalclassmerging.policies.NotMatchedByNoHorizontalClassMerging -> com.android.tools.r8.internal.TH:
+com.android.tools.r8.horizontalclassmerging.policies.NotMatchedByNoHorizontalClassMerging -> com.android.tools.r8.internal.UH:
     com.android.tools.r8.graph.AppView appView -> b
     1:2:void <init>(com.android.tools.r8.graph.AppView):16:17 -> <init>
     1:1:boolean canMerge(com.android.tools.r8.graph.DexProgramClass):22:22 -> a
     1:1:java.lang.String getName():27:27 -> e
-com.android.tools.r8.horizontalclassmerging.policies.OnlyDirectlyConnectedOrUnrelatedInterfaces -> com.android.tools.r8.internal.LK:
+com.android.tools.r8.horizontalclassmerging.policies.OnlyDirectlyConnectedOrUnrelatedInterfaces -> com.android.tools.r8.internal.MK:
     java.util.Map committed -> d
     com.android.tools.r8.graph.AppView appView -> b
     boolean $assertionsDisabled -> e
@@ -39537,7 +39569,7 @@
     1:1:void clear():155:155 -> d
     1:1:java.lang.String getName():160:160 -> e
     1:1:boolean shouldSkipPolicy():170:170 -> j
-com.android.tools.r8.horizontalclassmerging.policies.OnlyDirectlyConnectedOrUnrelatedInterfaces$MergeGroupWithInfo -> com.android.tools.r8.internal.KK:
+com.android.tools.r8.horizontalclassmerging.policies.OnlyDirectlyConnectedOrUnrelatedInterfaces$MergeGroupWithInfo -> com.android.tools.r8.internal.LK:
     com.android.tools.r8.horizontalclassmerging.MergeGroup group -> a
     java.util.Set superInterfaces -> c
     java.util.Set subInterfaces -> d
@@ -39550,7 +39582,7 @@
     19:19:com.android.tools.r8.horizontalclassmerging.MergeGroup getGroup():208:208 -> a
     1:1:boolean lambda$add$1(com.android.tools.r8.graph.DexProgramClass):203:203 -> b
     2:19:boolean isSafeToAddSubAndSuperInterfaces(com.android.tools.r8.graph.DexProgramClass,java.util.Set,java.util.Set):216:233 -> b
-com.android.tools.r8.horizontalclassmerging.policies.PreserveMethodCharacteristics -> com.android.tools.r8.internal.HM:
+com.android.tools.r8.horizontalclassmerging.policies.PreserveMethodCharacteristics -> com.android.tools.r8.internal.IM:
     com.android.tools.r8.graph.AppView appView -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():30:30 -> <clinit>
@@ -39561,7 +39593,7 @@
     6:16:java.util.Collection apply(com.android.tools.r8.horizontalclassmerging.MergeGroup):145:155 -> a
     17:17:boolean lambda$apply$0(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.policies.PreserveMethodCharacteristics$TargetGroup):143:143 -> a
     1:1:java.lang.String getName():34:34 -> e
-com.android.tools.r8.horizontalclassmerging.policies.PreserveMethodCharacteristics$MethodCharacteristics -> com.android.tools.r8.internal.FM:
+com.android.tools.r8.horizontalclassmerging.policies.PreserveMethodCharacteristics$MethodCharacteristics -> com.android.tools.r8.internal.GM:
     com.android.tools.r8.utils.OptionalBool isLibraryMethodOverride -> c
     com.android.tools.r8.graph.MethodAccessFlags accessFlags -> a
     boolean isAssumeNoSideEffectsMethod -> b
@@ -39576,14 +39608,14 @@
     6:6:com.android.tools.r8.horizontalclassmerging.policies.PreserveMethodCharacteristics$MethodCharacteristics create(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexEncodedMethod):64:64 -> a
     1:5:boolean equals(java.lang.Object):81:85 -> equals
     1:6:int hashCode():69:69 -> hashCode
-com.android.tools.r8.horizontalclassmerging.policies.PreserveMethodCharacteristics$TargetGroup -> com.android.tools.r8.internal.GM:
+com.android.tools.r8.horizontalclassmerging.policies.PreserveMethodCharacteristics$TargetGroup -> com.android.tools.r8.internal.HM:
     com.android.tools.r8.horizontalclassmerging.MergeGroup group -> a
     java.util.Map methodMap -> b
     1:4:void <init>():101:104 -> <init>
     1:1:com.android.tools.r8.horizontalclassmerging.MergeGroup getGroup():107:107 -> a
     2:16:boolean tryAdd(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):111:125 -> a
     17:17:boolean isSubjectToMethodMerging(com.android.tools.r8.graph.DexEncodedMethod):130:130 -> a
-com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions -> com.android.tools.r8.internal.PM:
+com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions -> com.android.tools.r8.internal.QM:
     com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$ParentClassSignaturesCache parentClassMethodsCache -> e
     com.android.tools.r8.graph.AppView appView -> b
     com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$ReservedInterfaceSignaturesFor reservedInterfaceSignaturesFor -> f
@@ -39611,44 +39643,44 @@
     1:1:com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$InterfaceDefaultSignaturesCache access$600(com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions):52:52 -> b
     1:1:com.android.tools.r8.graph.ImmediateProgramSubtypingInfo access$700(com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions):52:52 -> c
     1:1:java.lang.String getName():66:66 -> e
-com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$DexClassSignaturesCache -> com.android.tools.r8.internal.IM:
+com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$DexClassSignaturesCache -> com.android.tools.r8.internal.JM:
     com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions this$0 -> b
     1:1:void <init>(com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions):85:85 -> <init>
     2:2:void <init>(com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions,com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$1):85:85 -> <init>
     1:2:com.android.tools.r8.utils.collections.DexMethodSignatureSet getOrComputeSignatures(com.android.tools.r8.graph.DexType):88:89 -> a
-com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$DispatchSignature -> com.android.tools.r8.internal.JM:
+com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$DispatchSignature -> com.android.tools.r8.internal.KM:
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():139:139 -> <clinit>
     1:1:void <init>():139:139 -> <init>
-com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$InterfaceDefaultSignaturesCache -> com.android.tools.r8.internal.KM:
+com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$InterfaceDefaultSignaturesCache -> com.android.tools.r8.internal.LM:
     1:1:void <init>(com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions):93:93 -> <init>
     2:2:void <init>(com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions,com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$1):93:93 -> <init>
     1:2:void process(com.android.tools.r8.graph.DexClass,com.android.tools.r8.utils.collections.DexMethodSignatureSet):97:98 -> a
-com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$MethodCategory -> com.android.tools.r8.internal.LM:
+com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$MethodCategory -> com.android.tools.r8.internal.MM:
     com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$MethodCategory KEEP_ABSENT -> c
     com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$MethodCategory CLASS_HIERARCHY_SAFE -> b
     1:2:void <clinit>():135:136 -> <clinit>
     1:1:void <init>(java.lang.String,int):134:134 -> <init>
-com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$ParentClassSignaturesCache -> com.android.tools.r8.internal.MM:
+com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$ParentClassSignaturesCache -> com.android.tools.r8.internal.NM:
     com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions this$0 -> c
     1:1:void <init>(com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions):102:102 -> <init>
     2:2:void <init>(com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions,com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$1):102:102 -> <init>
     1:5:void process(com.android.tools.r8.graph.DexClass,com.android.tools.r8.utils.collections.DexMethodSignatureSet):106:110 -> a
-com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$ReservedInterfaceSignaturesFor -> com.android.tools.r8.internal.NM:
+com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$ReservedInterfaceSignaturesFor -> com.android.tools.r8.internal.OM:
     com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions this$0 -> b
     1:1:void <init>(com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions):116:116 -> <init>
     2:2:void <init>(com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions,com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$1):116:116 -> <init>
     1:1:void process(com.android.tools.r8.graph.DexClass,com.android.tools.r8.utils.collections.DexMethodSignatureSet):116:116 -> a
     2:2:void process(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.utils.collections.DexMethodSignatureSet):121:121 -> a
     3:6:void process(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.utils.collections.DexMethodSignatureSet):120:123 -> a
-com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$SignaturesCache -> com.android.tools.r8.internal.OM:
+com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$SignaturesCache -> com.android.tools.r8.internal.PM:
     java.util.Map memoizedSignatures -> a
     1:2:void <init>():69:70 -> <init>
     3:3:void <init>(com.android.tools.r8.horizontalclassmerging.policies.PreventClassMethodAndDefaultMethodCollisions$1):69:69 -> <init>
     void process(com.android.tools.r8.graph.DexClass,com.android.tools.r8.utils.collections.DexMethodSignatureSet) -> a
     1:1:com.android.tools.r8.utils.collections.DexMethodSignatureSet getOrComputeSignatures(com.android.tools.r8.graph.DexClass):73:73 -> a
     2:3:com.android.tools.r8.utils.collections.DexMethodSignatureSet lambda$getOrComputeSignatures$0(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass):76:77 -> a
-com.android.tools.r8.horizontalclassmerging.policies.RespectPackageBoundaries -> com.android.tools.r8.internal.gT:
+com.android.tools.r8.horizontalclassmerging.policies.RespectPackageBoundaries -> com.android.tools.r8.internal.hT:
     com.android.tools.r8.graph.AppView appView -> b
     1:2:void <init>(com.android.tools.r8.graph.AppView):28:29 -> <init>
     1:1:com.android.tools.r8.utils.TraversalContinuation lambda$shouldRestrictMergingAcrossPackageBoundary$0(com.android.tools.r8.graph.ProgramMethod):71:71 -> a
@@ -39678,7 +39710,7 @@
     59:59:boolean shouldRestrictMergingAcrossPackageBoundary(com.android.tools.r8.graph.DexProgramClass):79 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     1:1:java.lang.String getName():127:127 -> e
-com.android.tools.r8.horizontalclassmerging.policies.SameFeatureSplit -> com.android.tools.r8.internal.kU:
+com.android.tools.r8.horizontalclassmerging.policies.SameFeatureSplit -> com.android.tools.r8.internal.lU:
     com.android.tools.r8.graph.AppView appView -> b
     1:2:void <init>(com.android.tools.r8.graph.AppView):16:17 -> <init>
     1:4:com.android.tools.r8.FeatureSplit com.android.tools.r8.horizontalclassmerging.policies.SameFeatureSplit.getMergeKey(com.android.tools.r8.graph.DexProgramClass):22:25 -> a
@@ -39687,14 +39719,14 @@
     5:5:com.android.tools.r8.FeatureSplit com.android.tools.r8.horizontalclassmerging.policies.SameFeatureSplit.getMergeKey(com.android.tools.r8.graph.DexProgramClass):25 -> a
     5:5:java.lang.Object getMergeKey(com.android.tools.r8.graph.DexProgramClass):13 -> a
     1:1:java.lang.String getName():30:30 -> e
-com.android.tools.r8.horizontalclassmerging.policies.SameInstanceFields -> com.android.tools.r8.internal.mU:
+com.android.tools.r8.horizontalclassmerging.policies.SameInstanceFields -> com.android.tools.r8.internal.nU:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode mode -> c
     1:3:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):26:28 -> <init>
     1:9:com.android.tools.r8.com.google.common.collect.Multiset com.android.tools.r8.horizontalclassmerging.policies.SameInstanceFields.getMergeKey(com.android.tools.r8.graph.DexProgramClass):33:41 -> a
     1:9:java.lang.Object getMergeKey(com.android.tools.r8.graph.DexProgramClass):21 -> a
     1:1:java.lang.String getName():48:48 -> e
-com.android.tools.r8.horizontalclassmerging.policies.SameInstanceFields$InstanceFieldInfo -> com.android.tools.r8.internal.lU:
+com.android.tools.r8.horizontalclassmerging.policies.SameInstanceFields$InstanceFieldInfo -> com.android.tools.r8.internal.mU:
     com.android.tools.r8.graph.DexType type -> b
     com.android.tools.r8.graph.FieldAccessFlags accessFlags -> a
     1:6:void <init>(com.android.tools.r8.graph.FieldAccessFlags,com.android.tools.r8.graph.DexType):56:61 -> <init>
@@ -39703,41 +39735,41 @@
     5:6:com.android.tools.r8.horizontalclassmerging.policies.SameInstanceFields$InstanceFieldInfo toInfoWithRelaxedType(com.android.tools.r8.graph.DexItemFactory):80:81 -> a
     1:5:boolean equals(java.lang.Object):86:90 -> equals
     1:1:int hashCode():95:95 -> hashCode
-com.android.tools.r8.horizontalclassmerging.policies.SameMainDexGroup -> com.android.tools.r8.internal.nU:
+com.android.tools.r8.horizontalclassmerging.policies.SameMainDexGroup -> com.android.tools.r8.internal.oU:
     com.android.tools.r8.shaking.MainDexInfo mainDexInfo -> b
     com.android.tools.r8.synthesis.SyntheticItems synthetics -> c
     1:3:void <init>(com.android.tools.r8.graph.AppView):20:22 -> <init>
     1:2:com.android.tools.r8.shaking.MainDexInfo$MainDexGroup com.android.tools.r8.horizontalclassmerging.policies.SameMainDexGroup.getMergeKey(com.android.tools.r8.graph.DexProgramClass):27:28 -> a
     1:2:java.lang.Object getMergeKey(com.android.tools.r8.graph.DexProgramClass):15 -> a
     1:1:java.lang.String getName():34:34 -> e
-com.android.tools.r8.horizontalclassmerging.policies.SameNestHost -> com.android.tools.r8.internal.oU:
+com.android.tools.r8.horizontalclassmerging.policies.SameNestHost -> com.android.tools.r8.internal.pU:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     1:2:void <init>(com.android.tools.r8.graph.AppView):18:19 -> <init>
     1:1:com.android.tools.r8.graph.DexType com.android.tools.r8.horizontalclassmerging.policies.SameNestHost.getMergeKey(com.android.tools.r8.graph.DexProgramClass):24:24 -> a
     1:1:java.lang.Object getMergeKey(com.android.tools.r8.graph.DexProgramClass):14 -> a
     1:1:java.lang.String getName():29:29 -> e
-com.android.tools.r8.horizontalclassmerging.policies.SameParentClass -> com.android.tools.r8.internal.pU:
+com.android.tools.r8.horizontalclassmerging.policies.SameParentClass -> com.android.tools.r8.internal.qU:
     1:1:void <init>():11:11 -> <init>
     1:1:com.android.tools.r8.graph.DexType com.android.tools.r8.horizontalclassmerging.policies.SameParentClass.getMergeKey(com.android.tools.r8.graph.DexProgramClass):15:15 -> a
     1:1:java.lang.Object getMergeKey(com.android.tools.r8.graph.DexProgramClass):11 -> a
     1:1:java.lang.String getName():20:20 -> e
-com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy -> com.android.tools.r8.internal.kY:
+com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy -> com.android.tools.r8.internal.lY:
     com.android.tools.r8.synthesis.SyntheticItems syntheticItems -> c
     com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode mode -> b
     1:3:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):25:27 -> <init>
     1:1:com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy$ClassKind com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy.getMergeKey(com.android.tools.r8.graph.DexProgramClass):33:33 -> a
     1:1:java.lang.Object getMergeKey(com.android.tools.r8.graph.DexProgramClass):15 -> a
-    2:2:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
+    2:2:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
     2:2:com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy$ClassKind com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy.getMergeKey(com.android.tools.r8.graph.DexProgramClass):33 -> a
     2:2:java.lang.Object getMergeKey(com.android.tools.r8.graph.DexProgramClass):15 -> a
-    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
+    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
     3:3:com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy$ClassKind com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy.getMergeKey(com.android.tools.r8.graph.DexProgramClass):33 -> a
     3:3:java.lang.Object getMergeKey(com.android.tools.r8.graph.DexProgramClass):15 -> a
     4:8:com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy$ClassKind com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy.getMergeKey(com.android.tools.r8.graph.DexProgramClass):34:38 -> a
     4:8:java.lang.Object getMergeKey(com.android.tools.r8.graph.DexProgramClass):15 -> a
     1:1:java.lang.String getName():43:43 -> e
-com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy$ClassKind -> com.android.tools.r8.internal.jY:
+com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy$ClassKind -> com.android.tools.r8.internal.kY:
     com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy$ClassKind SYNTHETIC -> b
     com.android.tools.r8.horizontalclassmerging.policies.SyntheticItemsPolicy$ClassKind NOT_SYNTHETIC -> c
     1:2:void <clinit>():18:19 -> <clinit>
@@ -39755,14 +39787,14 @@
     30:30:java.lang.String getName():26:26 -> e
     27:27:java.lang.String getName():26:26 -> e
     1:1:boolean shouldSkipPolicy():31:31 -> j
-com.android.tools.r8.horizontalclassmerging.policies.deadlock.SingleCallerInformation -> com.android.tools.r8.internal.fV:
+com.android.tools.r8.horizontalclassmerging.policies.deadlock.SingleCallerInformation -> com.android.tools.r8.internal.gV:
     java.util.Map singleClinitCallers -> b
     com.android.tools.r8.utils.collections.ProgramMethodMap singleCallers -> a
     1:3:void <init>(com.android.tools.r8.utils.collections.ProgramMethodMap,java.util.Map):42:44 -> <init>
     1:1:com.android.tools.r8.horizontalclassmerging.policies.deadlock.SingleCallerInformation$Builder builder(com.android.tools.r8.graph.AppView):48:48 -> a
     2:2:com.android.tools.r8.graph.ProgramMethod getSingleCaller(com.android.tools.r8.graph.ProgramMethod):52:52 -> a
     3:3:com.android.tools.r8.graph.ProgramMethod getSingleClassInitializerCaller(com.android.tools.r8.graph.DexProgramClass):56:56 -> a
-com.android.tools.r8.horizontalclassmerging.policies.deadlock.SingleCallerInformation$Builder -> com.android.tools.r8.internal.eV:
+com.android.tools.r8.horizontalclassmerging.policies.deadlock.SingleCallerInformation$Builder -> com.android.tools.r8.internal.fV:
     java.util.Map clinitCallers -> c
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.utils.collections.ProgramMethodMap callers -> b
@@ -39775,7 +39807,7 @@
     13:13:void lambda$build$2(java.util.Map,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod):86:86 -> a
     14:14:void lambda$build$3(java.util.Map,com.android.tools.r8.graph.DexProgramClass,java.util.Optional):86:86 -> a
     15:15:void processMethod(com.android.tools.r8.graph.ProgramMethod):91:91 -> a
-com.android.tools.r8.horizontalclassmerging.policies.deadlock.SingleCallerInformation$Builder$InvokeExtractor -> com.android.tools.r8.internal.dV:
+com.android.tools.r8.horizontalclassmerging.policies.deadlock.SingleCallerInformation$Builder$InvokeExtractor -> com.android.tools.r8.internal.eV:
     com.android.tools.r8.horizontalclassmerging.policies.deadlock.SingleCallerInformation$Builder this$0 -> f
     com.android.tools.r8.graph.AppView appView -> e
     boolean $assertionsDisabled -> g
@@ -39923,7 +39955,7 @@
     7:7:java.util.List wrapInspections(java.util.Collection):21:21 -> a
     8:13:void runInspections(java.util.List,java.util.Collection):32:37 -> a
     1:2:void forEachClass(java.util.function.Consumer):49:50 -> forEachClass
-com.android.tools.r8.inspector.internal.MethodInspectorImpl -> com.android.tools.r8.internal.LE:
+com.android.tools.r8.inspector.internal.MethodInspectorImpl -> com.android.tools.r8.internal.ME:
     com.android.tools.r8.inspector.internal.ClassInspectorImpl parent -> a
     com.android.tools.r8.references.MethodReference reference -> c
     com.android.tools.r8.graph.DexEncodedMethod method -> b
@@ -40051,117 +40083,117 @@
 com.android.tools.r8.internal.ApiLevelException$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.g2:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:6:java.lang.String com.android.tools.r8.ApiLevelException$$InternalSyntheticOutline$128$8070fe10555e1c79bfb7f4e2706650b727cc4dbc5f8918e1eca3a7095790ada6$0.m(java.lang.String,java.lang.String,java.lang.String):0:5 -> a
+    1:6:java.lang.String com.android.tools.r8.ApiLevelException$$InternalSyntheticOutline$192$8070fe10555e1c79bfb7f4e2706650b727cc4dbc5f8918e1eca3a7095790ada6$0.m(java.lang.String,java.lang.String,java.lang.String):0:5 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.ApiLevelException$$ExternalSyntheticOutline1 -> com.android.tools.r8.internal.h2:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:3:java.lang.StringBuilder com.android.tools.r8.ApiLevelException$$InternalSyntheticOutline$128$8070fe10555e1c79bfb7f4e2706650b727cc4dbc5f8918e1eca3a7095790ada6$1.m(java.lang.String):0:2 -> a
+    1:3:java.lang.StringBuilder com.android.tools.r8.ApiLevelException$$InternalSyntheticOutline$192$8070fe10555e1c79bfb7f4e2706650b727cc4dbc5f8918e1eca3a7095790ada6$1.m(java.lang.String):0:2 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.ApiReferenceStubber$ReferencesToApiLevelUseRegistry$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.k2:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:3:com.android.tools.r8.graph.DexType com.android.tools.r8.androidapi.ApiReferenceStubber$ReferencesToApiLevelUseRegistry$$InternalSyntheticOutline$128$fa4d2f1aaebefe56a72bd0d8d45ffdaa11db5a921b4ae78a58021043b9c16d22$0.m(com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.DexType):0:2 -> a
+    1:3:com.android.tools.r8.graph.DexType com.android.tools.r8.androidapi.ApiReferenceStubber$ReferencesToApiLevelUseRegistry$$InternalSyntheticOutline$192$fa4d2f1aaebefe56a72bd0d8d45ffdaa11db5a921b4ae78a58021043b9c16d22$0.m(com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.DexType):0:2 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.AppServices$Builder$DataResourceProviderVisitor$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.o2:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:3:java.lang.StringBuilder com.android.tools.r8.graph.AppServices$Builder$DataResourceProviderVisitor$$InternalSyntheticOutline$128$1b9a9c3997290883e73a01d40bf4d3e6803f9ca951c5774170dba710a59428cb$0.m(com.android.tools.r8.graph.DexType,java.lang.StringBuilder,java.lang.String):0:2 -> a
+    1:3:java.lang.StringBuilder com.android.tools.r8.graph.AppServices$Builder$DataResourceProviderVisitor$$InternalSyntheticOutline$192$1b9a9c3997290883e73a01d40bf4d3e6803f9ca951c5774170dba710a59428cb$0.m(com.android.tools.r8.graph.DexType,java.lang.StringBuilder,java.lang.String):0:2 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.ApplicationReader$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.r2:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:4:java.lang.String com.android.tools.r8.dex.ApplicationReader$$InternalSyntheticOutline$128$9f54f232c90535949cbd79764f24cb98be32503bebdfcbf91538e9404314da22$0.m(com.android.tools.r8.graph.DexType,java.lang.StringBuilder,java.lang.String):0:3 -> a
+    1:4:java.lang.String com.android.tools.r8.dex.ApplicationReader$$InternalSyntheticOutline$192$9f54f232c90535949cbd79764f24cb98be32503bebdfcbf91538e9404314da22$0.m(com.android.tools.r8.graph.DexType,java.lang.StringBuilder,java.lang.String):0:3 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.ArchiveClassFileProvider$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.G2:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:5:java.lang.String com.android.tools.r8.ArchiveClassFileProvider$$InternalSyntheticOutline$128$fcf1b6b975830033929cccf6ad2b54a77cab1d87d8c3fcbcd1f412b054bd8dde$0.m(java.lang.String,java.lang.String):0:4 -> a
+    1:5:java.lang.String com.android.tools.r8.ArchiveClassFileProvider$$InternalSyntheticOutline$192$fcf1b6b975830033929cccf6ad2b54a77cab1d87d8c3fcbcd1f412b054bd8dde$0.m(java.lang.String,java.lang.String):0:4 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.AvailableApiExceptions$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.Y3:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:6:void com.android.tools.r8.androidapi.AvailableApiExceptions$$InternalSyntheticOutline$128$20e6908fb16c2dd8ad959b1c1a6646d5062d52ffebb6111c792ca6515e114c85$0.m(com.android.tools.r8.graph.DexItemFactory,java.lang.String,java.util.Set,java.lang.String,java.lang.String):0:5 -> a
+    1:6:void com.android.tools.r8.androidapi.AvailableApiExceptions$$InternalSyntheticOutline$192$20e6908fb16c2dd8ad959b1c1a6646d5062d52ffebb6111c792ca6515e114c85$0.m(com.android.tools.r8.graph.DexItemFactory,java.lang.String,java.util.Set,java.lang.String,java.lang.String):0:5 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.BackportedMethodListCommand$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.a4:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:3:java.lang.String com.android.tools.r8.BackportedMethodListCommand$$InternalSyntheticOutline$128$7b25eb1be35d851e67f562f9da6a58cac1f92adedb289ac8c30b03bb2cd9fef7$0.m(java.lang.StringBuilder,java.lang.String,java.lang.String):0:2 -> a
+    1:3:java.lang.String com.android.tools.r8.BackportedMethodListCommand$$InternalSyntheticOutline$192$7b25eb1be35d851e67f562f9da6a58cac1f92adedb289ac8c30b03bb2cd9fef7$0.m(java.lang.StringBuilder,java.lang.String,java.lang.String):0:2 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.BackportedMethodListCommand$Builder$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.b4:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:5:java.lang.String com.android.tools.r8.BackportedMethodListCommand$Builder$$InternalSyntheticOutline$128$74531d99dd9e8c41302dc64bf7c1ad28bdce38f5e1cbae1669b2746d1cca7f73$0.m(java.lang.String,int):0:4 -> a
+    1:5:java.lang.String com.android.tools.r8.BackportedMethodListCommand$Builder$$InternalSyntheticOutline$192$74531d99dd9e8c41302dc64bf7c1ad28bdce38f5e1cbae1669b2746d1cca7f73$0.m(java.lang.String,int):0:4 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.BaseCompilerCommandParser$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.n4:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:7:java.lang.String com.android.tools.r8.BaseCompilerCommandParser$$InternalSyntheticOutline$128$146f7b3d6ff8af7ce0bd70dfaecb3106d94f9b5e09cb4e5860f363a40e03fcc0$0.m(java.lang.String,java.lang.String,java.lang.String,java.lang.String):0:6 -> a
+    1:7:java.lang.String com.android.tools.r8.BaseCompilerCommandParser$$InternalSyntheticOutline$192$146f7b3d6ff8af7ce0bd70dfaecb3106d94f9b5e09cb4e5860f363a40e03fcc0$0.m(java.lang.String,java.lang.String,java.lang.String,java.lang.String):0:6 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.BasicBlock$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.u4:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:3:com.android.tools.r8.ir.code.BasicBlock com.android.tools.r8.ir.code.BasicBlock$$InternalSyntheticOutline$128$b6dd67f260863294e1347834de9654f6bdbe9ba876ac452b76d49eee6a2321aa$0.m(com.android.tools.r8.ir.code.BasicBlock):0:2 -> a
+    1:3:com.android.tools.r8.ir.code.BasicBlock com.android.tools.r8.ir.code.BasicBlock$$InternalSyntheticOutline$192$b6dd67f260863294e1347834de9654f6bdbe9ba876ac452b76d49eee6a2321aa$0.m(com.android.tools.r8.ir.code.BasicBlock):0:2 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.BisectState$Range$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.d5:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:3:java.lang.String com.android.tools.r8.bisect.BisectState$Range$$InternalSyntheticOutline$128$ce08529379ee2f531b289ce75fde83cc622d5b95d2bff129f3fff11db0ec6f8a$0.m(java.lang.StringBuilder,int,java.lang.String):0:2 -> a
+    1:3:java.lang.String com.android.tools.r8.bisect.BisectState$Range$$InternalSyntheticOutline$192$ce08529379ee2f531b289ce75fde83cc622d5b95d2bff129f3fff11db0ec6f8a$0.m(java.lang.StringBuilder,int,java.lang.String):0:2 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.CfConstClass$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.V6:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:5:java.lang.String com.android.tools.r8.cf.code.CfConstClass$$InternalSyntheticOutline$128$37c66abd9d2a2dc03f27fba98790669ca793ab689546056e468f3d38bbb416c6$0.m(java.lang.String,com.android.tools.r8.graph.DexType):0:4 -> a
+    1:5:java.lang.String com.android.tools.r8.cf.code.CfConstClass$$InternalSyntheticOutline$192$37c66abd9d2a2dc03f27fba98790669ca793ab689546056e468f3d38bbb416c6$0.m(java.lang.String,com.android.tools.r8.graph.DexType):0:4 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.CfSourceCode$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.u8:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:6:java.lang.String com.android.tools.r8.ir.conversion.CfSourceCode$$InternalSyntheticOutline$128$438dbc8eceffdeb61d226aaaed697fac8e37ed1b14c877d9379a82f963ca1ee0$0.m(java.lang.String,int,java.lang.String):0:5 -> a
+    1:6:java.lang.String com.android.tools.r8.ir.conversion.CfSourceCode$$InternalSyntheticOutline$192$438dbc8eceffdeb61d226aaaed697fac8e37ed1b14c877d9379a82f963ca1ee0$0.m(java.lang.String,int,java.lang.String):0:5 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.CheckCast$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.p9:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:3:void com.android.tools.r8.code.CheckCast$$InternalSyntheticOutline$128$8425e8646f19f78a5cc679701fe1b8f81b89b53aa664c2c48409b2d425a4b181$0.m(com.android.tools.r8.dex.IndexedItemCollection,com.android.tools.r8.graph.DexType):0:2 -> a
+    1:3:void com.android.tools.r8.code.CheckCast$$InternalSyntheticOutline$192$8425e8646f19f78a5cc679701fe1b8f81b89b53aa664c2c48409b2d425a4b181$0.m(com.android.tools.r8.dex.IndexedItemCollection,com.android.tools.r8.graph.DexType):0:2 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.ConstructorConstructor$$ExternalSyntheticThrowCCEIfNotNull0 -> com.android.tools.r8.internal.Gd:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    void com.android.tools.r8.com.google.gson.internal.ConstructorConstructor$$InternalSyntheticThrowCCEIfNotNull$127$4ee754c26fbc3f996201df800e46dee27e7d8abedcd7bc440ac96ce5f6dddcb4$0.m(java.lang.Object) -> a
+    void com.android.tools.r8.com.google.gson.internal.ConstructorConstructor$$InternalSyntheticThrowCCEIfNotNull$191$4ee754c26fbc3f996201df800e46dee27e7d8abedcd7bc440ac96ce5f6dddcb4$0.m(java.lang.Object) -> a
       # {"id":"com.android.tools.r8.synthesized"}
 com.android.tools.r8.internal.DexFileMergerHelper$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.Mg:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:3:java.lang.StringBuilder com.android.tools.r8.DexFileMergerHelper$$InternalSyntheticOutline$128$9c9cadf1489a20b6e2f21254b49c29d5709cced0f7609f978195acf1f013b7c9$0.m(java.lang.String):0:2 -> a
+    1:3:java.lang.StringBuilder com.android.tools.r8.DexFileMergerHelper$$InternalSyntheticOutline$192$9c9cadf1489a20b6e2f21254b49c29d5709cced0f7609f978195acf1f013b7c9$0.m(java.lang.String):0:2 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.DexOutputBuffer$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.ph:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:5:java.lang.StringBuilder com.android.tools.r8.dex.DexOutputBuffer$$InternalSyntheticOutline$128$2fa3327658a3747aa1eac19934d5e19eadcfd88a0fe905e3e2553d0deedbdab7$0.m(java.lang.String,int,java.lang.String):0:4 -> a
+    1:5:java.lang.StringBuilder com.android.tools.r8.dex.DexOutputBuffer$$InternalSyntheticOutline$192$2fa3327658a3747aa1eac19934d5e19eadcfd88a0fe905e3e2553d0deedbdab7$0.m(java.lang.String,int,java.lang.String):0:4 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
 com.android.tools.r8.internal.GenerateLintFiles$HTMLBuilder$$ExternalSyntheticOutline0 -> com.android.tools.r8.internal.Tl:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
-    1:3:java.lang.String com.android.tools.r8.GenerateLintFiles$HTMLBuilder$$InternalSyntheticOutline$128$ed6e21f6b1f6064d1f7d01ae8ade57a5452d19bf2d8e818564c5d5284e989760$0.m(java.lang.String,int,int):0:2 -> a
+    1:3:java.lang.String com.android.tools.r8.GenerateLintFiles$HTMLBuilder$$InternalSyntheticOutline$192$ed6e21f6b1f6064d1f7d01ae8ade57a5452d19bf2d8e818564c5d5284e989760$0.m(java.lang.String,int,int):0:2 -> a
       # {"id":"com.android.tools.r8.synthesized"}
       # {"id":"com.android.tools.r8.outline"}
-com.android.tools.r8.internal.Intrinsics$$ExternalSyntheticCheckNotZero0 -> com.android.tools.r8.internal.zu:
+com.android.tools.r8.internal.Intrinsics$$ExternalSyntheticCheckNotZero0 -> com.android.tools.r8.internal.Au:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
     1:1:void com.android.tools.r8.jetbrains.kotlin.jvm.internal.Intrinsics.throwParameterIsNullNPE(java.lang.String):140:140 -> a
@@ -40488,12 +40520,12 @@
     com.android.tools.r8.ir.analysis.constant.ConstRangeLatticeElement asConstRange() -> b
     1:1:com.android.tools.r8.ir.code.Value getConstRange():44:44 -> c
     1:1:java.lang.String toString():40:40 -> toString
-com.android.tools.r8.ir.analysis.constant.LatticeElement -> com.android.tools.r8.internal.bB:
+com.android.tools.r8.ir.analysis.constant.LatticeElement -> com.android.tools.r8.internal.cB:
     1:1:void <init>():6:6 -> <init>
     com.android.tools.r8.ir.analysis.constant.ConstLatticeElement asConst() -> a
     com.android.tools.r8.ir.analysis.constant.LatticeElement meet(com.android.tools.r8.ir.analysis.constant.LatticeElement) -> a
     com.android.tools.r8.ir.analysis.constant.ConstRangeLatticeElement asConstRange() -> b
-com.android.tools.r8.ir.analysis.constant.SparseConditionalConstantPropagation -> com.android.tools.r8.internal.NV:
+com.android.tools.r8.ir.analysis.constant.SparseConditionalConstantPropagation -> com.android.tools.r8.internal.OV:
     java.util.Deque ssaEdges -> d
     java.util.Map mapping -> c
     com.android.tools.r8.graph.AppView appView -> a
@@ -41445,10 +41477,10 @@
     4:4:void com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoCollection$Builder.recordInitializationInfo(com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfo):59:59 -> b
     4:4:void recordInstanceFieldIsInitializedWithInfo(com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfo):221 -> b
     1:11:void analyzeParentConstructorCall():169:179 -> e
-com.android.tools.r8.ir.analysis.fieldvalueanalysis.KnownFieldSet -> com.android.tools.r8.internal.fz:
+com.android.tools.r8.ir.analysis.fieldvalueanalysis.KnownFieldSet -> com.android.tools.r8.internal.gz:
     com.android.tools.r8.ir.analysis.fieldvalueanalysis.ConcreteMutableFieldSet asConcreteFieldSet() -> a
     boolean contains(com.android.tools.r8.graph.DexEncodedField) -> a
-com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValueAnalysis -> com.android.tools.r8.internal.vW:
+com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValueAnalysis -> com.android.tools.r8.internal.wW:
     com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$Builder builder -> i
     boolean $assertionsDisabled -> k
     java.util.Map computedValues -> j
@@ -41576,7 +41608,7 @@
     94:94:boolean com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValueAnalysis.valuesArrayIndexMatchesOrdinal(int,com.android.tools.r8.ir.analysis.value.objectstate.ObjectState):364:364 -> c
     94:94:com.android.tools.r8.ir.analysis.value.SingleFieldValue internalComputeSingleEnumFieldValueForValuesArray(com.android.tools.r8.ir.code.Value):284 -> c
     95:136:com.android.tools.r8.ir.analysis.value.SingleFieldValue internalComputeSingleEnumFieldValueForValuesArray(com.android.tools.r8.ir.code.Value):287:328 -> c
-com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues -> com.android.tools.r8.internal.BW:
+com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues -> com.android.tools.r8.internal.CW:
     1:1:void <init>():15:15 -> <init>
     com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EnumStaticFieldValues asEnumStaticFieldValues() -> a
     1:1:com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$Builder builder(com.android.tools.r8.graph.DexProgramClass):26:26 -> a
@@ -41584,25 +41616,25 @@
     2:2:com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$Builder builder(com.android.tools.r8.graph.DexProgramClass):26 -> a
     3:3:com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$Builder com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EmptyStaticValues.builder():114:114 -> a
     3:3:com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$Builder builder(com.android.tools.r8.graph.DexProgramClass):26 -> a
-com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$Builder -> com.android.tools.r8.internal.wW:
+com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$Builder -> com.android.tools.r8.internal.xW:
     1:1:void <init>():29:29 -> <init>
     com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues build() -> a
     void recordStaticField(com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.ir.analysis.value.AbstractValue,com.android.tools.r8.graph.DexItemFactory) -> a
-com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EmptyStaticValues -> com.android.tools.r8.internal.yW:
+com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EmptyStaticValues -> com.android.tools.r8.internal.zW:
     com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EmptyStaticValues INSTANCE -> a
     1:1:void <clinit>():105:105 -> <clinit>
     1:1:void <init>():107:107 -> <init>
     1:1:com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EmptyStaticValues getInstance():110:110 -> b
-com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EmptyStaticValues$Builder -> com.android.tools.r8.internal.xW:
+com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EmptyStaticValues$Builder -> com.android.tools.r8.internal.yW:
     1:1:void <init>():117:117 -> <init>
     void recordStaticField(com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.ir.analysis.value.AbstractValue,com.android.tools.r8.graph.DexItemFactory) -> a
     1:1:com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues build():127:127 -> a
-com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EnumStaticFieldValues -> com.android.tools.r8.internal.AW:
+com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EnumStaticFieldValues -> com.android.tools.r8.internal.BW:
     com.android.tools.r8.com.google.common.collect.ImmutableMap enumAbstractValues -> a
     1:2:void <init>(com.android.tools.r8.com.google.common.collect.ImmutableMap):42:43 -> <init>
     com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EnumStaticFieldValues asEnumStaticFieldValues() -> a
     1:1:com.android.tools.r8.ir.analysis.value.objectstate.ObjectState getObjectStateForPossiblyPinnedField(com.android.tools.r8.graph.DexField):100:100 -> a
-com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EnumStaticFieldValues$Builder -> com.android.tools.r8.internal.zW:
+com.android.tools.r8.ir.analysis.fieldvalueanalysis.StaticFieldValues$EnumStaticFieldValues$Builder -> com.android.tools.r8.internal.AW:
     com.android.tools.r8.com.google.common.collect.ImmutableMap$Builder enumObjectStateBuilder -> a
     com.android.tools.r8.ir.analysis.value.AbstractValue valuesCandidateAbstractValue -> b
     boolean $assertionsDisabled -> c
@@ -41647,7 +41679,7 @@
     1:1:void <init>():16:16 -> <init>
     boolean isFailedTransferResult() -> a
     1:1:com.android.tools.r8.ir.analysis.framework.intraprocedural.AbstractState asAbstractState():20:20 -> c
-com.android.tools.r8.ir.analysis.framework.intraprocedural.IntraproceduralDataflowAnalysis -> com.android.tools.r8.internal.yu:
+com.android.tools.r8.ir.analysis.framework.intraprocedural.IntraproceduralDataflowAnalysis -> com.android.tools.r8.internal.zu:
     java.util.Map blockExitStates -> c
     java.util.Map blockEntryStatesCache -> d
     boolean $assertionsDisabled -> e
@@ -41744,13 +41776,13 @@
     4:4:com.android.tools.r8.ir.analysis.inlining.SimpleInliningArgumentConstraint withArgumentIndex(int,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory):27:27 -> a
     5:5:com.android.tools.r8.ir.analysis.inlining.EqualToNumberSimpleInliningConstraint com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory.createEqualToNumberConstraint(int,long):94:94 -> a
     5:5:com.android.tools.r8.ir.analysis.inlining.SimpleInliningArgumentConstraint withArgumentIndex(int,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory):27 -> a
-com.android.tools.r8.ir.analysis.inlining.NeverSimpleInliningConstraint -> com.android.tools.r8.internal.NG:
+com.android.tools.r8.ir.analysis.inlining.NeverSimpleInliningConstraint -> com.android.tools.r8.internal.OG:
     com.android.tools.r8.ir.analysis.inlining.NeverSimpleInliningConstraint INSTANCE -> b
     1:1:void <clinit>():15:15 -> <clinit>
     1:1:void <init>():17:17 -> <init>
     com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint fixupAfterParametersChanged(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.proto.ArgumentInfoCollection,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory) -> a
     boolean isSatisfied(com.android.tools.r8.ir.code.InvokeMethod) -> a
-com.android.tools.r8.ir.analysis.inlining.NotEqualToNumberSimpleInliningConstraint -> com.android.tools.r8.internal.SH:
+com.android.tools.r8.ir.analysis.inlining.NotEqualToNumberSimpleInliningConstraint -> com.android.tools.r8.internal.TH:
     boolean $assertionsDisabled -> e
     1:1:void <clinit>():7:7 -> <clinit>
     1:1:void <init>(int,long):10:10 -> <init>
@@ -41759,7 +41791,7 @@
     4:4:com.android.tools.r8.ir.analysis.inlining.SimpleInliningArgumentConstraint withArgumentIndex(int,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory):27:27 -> a
     5:5:com.android.tools.r8.ir.analysis.inlining.NotEqualToNumberSimpleInliningConstraint com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory.createNotEqualToNumberConstraint(int,long):89:89 -> a
     5:5:com.android.tools.r8.ir.analysis.inlining.SimpleInliningArgumentConstraint withArgumentIndex(int,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory):27 -> a
-com.android.tools.r8.ir.analysis.inlining.NullSimpleInliningConstraint -> com.android.tools.r8.internal.ZH:
+com.android.tools.r8.ir.analysis.inlining.NullSimpleInliningConstraint -> com.android.tools.r8.internal.aI:
     com.android.tools.r8.ir.analysis.type.Nullability nullability -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():20:20 -> <clinit>
@@ -41784,7 +41816,7 @@
     29:29:com.android.tools.r8.ir.analysis.inlining.SimpleInliningArgumentConstraint com.android.tools.r8.ir.analysis.inlining.NullSimpleInliningConstraint.withArgumentIndex(int,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory):87:87 -> a
     29:29:com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint fixupAfterParametersChanged(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.proto.ArgumentInfoCollection,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory):63 -> a
     30:43:boolean isSatisfied(com.android.tools.r8.ir.code.InvokeMethod):68:81 -> a
-com.android.tools.r8.ir.analysis.inlining.NumberSimpleInliningConstraint -> com.android.tools.r8.internal.iI:
+com.android.tools.r8.ir.analysis.inlining.NumberSimpleInliningConstraint -> com.android.tools.r8.internal.jI:
     long rawValue -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():16:16 -> <clinit>
@@ -41803,14 +41835,14 @@
     15:21:com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint fixupAfterParametersChanged(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.proto.ArgumentInfoCollection,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory):43:49 -> a
     22:24:boolean isSatisfied(com.android.tools.r8.ir.code.InvokeMethod):54:56 -> a
     1:1:long getRawValue():26:26 -> i
-com.android.tools.r8.ir.analysis.inlining.SimpleInliningArgumentConstraint -> com.android.tools.r8.internal.WU:
+com.android.tools.r8.ir.analysis.inlining.SimpleInliningArgumentConstraint -> com.android.tools.r8.internal.XU:
     int argumentIndex -> b
     1:2:void <init>(int):14:15 -> <init>
     com.android.tools.r8.ir.analysis.inlining.SimpleInliningArgumentConstraint withArgumentIndex(int,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory) -> a
     1:1:com.android.tools.r8.ir.code.Value getArgument(com.android.tools.r8.ir.code.InvokeMethod):19:19 -> b
     boolean isArgumentConstraint() -> d
     1:1:int getArgumentIndex():23:23 -> h
-com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint -> com.android.tools.r8.internal.XU:
+com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint -> com.android.tools.r8.internal.YU:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():14:14 -> <clinit>
     1:1:void <init>():14:14 -> <init>
@@ -41859,7 +41891,7 @@
     boolean isConjunction() -> e
     boolean isDisjunction() -> f
     boolean isNever() -> g
-com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintAnalysis -> com.android.tools.r8.internal.ZU:
+com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintAnalysis -> com.android.tools.r8.internal.aV:
     com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory factory -> a
     java.util.Set seen -> d
     com.android.tools.r8.utils.InternalOptions options -> c
@@ -41954,10 +41986,10 @@
     1:1:com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint lambda$analyzeInstructionsInBlock$1(com.android.tools.r8.ir.code.If,int):144:144 -> b
     2:2:com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintAnalysis.analyzeInstructionsInBlock(com.android.tools.r8.ir.code.BasicBlock,int):76:76 -> b
     2:2:com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint lambda$analyzeInstructionsInBlock$1(com.android.tools.r8.ir.code.If,int):144 -> b
-com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintAnalysis$1 -> com.android.tools.r8.internal.YU:
+com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintAnalysis$1 -> com.android.tools.r8.internal.ZU:
     int[] $SwitchMap$com$android$tools$r8$ir$code$If$Type -> a
     1:1:void <clinit>():172:172 -> <clinit>
-com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintConjunction -> com.android.tools.r8.internal.aV:
+com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintConjunction -> com.android.tools.r8.internal.bV:
     java.util.List constraints -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():16:16 -> <clinit>
@@ -41987,7 +42019,7 @@
     57:58:com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint lambda$fixupAfterParametersChanged$0(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.proto.ArgumentInfoCollection,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint):81:82 -> a
     59:59:boolean com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint.isAlways():0:0 -> a
     59:59:com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint lambda$fixupAfterParametersChanged$0(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.proto.ArgumentInfoCollection,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint):82 -> a
-com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintDisjunction -> com.android.tools.r8.internal.bV:
+com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintDisjunction -> com.android.tools.r8.internal.cV:
     java.util.List constraints -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():16:16 -> <clinit>
@@ -42017,7 +42049,7 @@
     57:57:boolean com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint.isNever():0:0 -> a
     57:57:com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint lambda$fixupAfterParametersChanged$0(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.proto.ArgumentInfoCollection,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory,com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraint):82 -> a
     com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintDisjunction asDisjunction() -> b
-com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory -> com.android.tools.r8.internal.cV:
+com.android.tools.r8.ir.analysis.inlining.SimpleInliningConstraintFactory -> com.android.tools.r8.internal.dV:
     com.android.tools.r8.ir.analysis.inlining.EqualToBooleanSimpleInliningConstraint[] lowEqualToTrueConstraints -> b
     com.android.tools.r8.ir.analysis.inlining.EqualToBooleanSimpleInliningConstraint[] lowEqualToFalseConstraints -> a
     com.android.tools.r8.ir.analysis.inlining.NullSimpleInliningConstraint[] lowEqualToNullConstraints -> d
@@ -42036,7 +42068,7 @@
     10:10:com.android.tools.r8.ir.analysis.inlining.SimpleInliningArgumentConstraint lambda$createArgumentConstraint$2(java.util.function.Supplier,java.lang.Integer):101:101 -> a
     1:1:com.android.tools.r8.ir.analysis.inlining.EqualToBooleanSimpleInliningConstraint lambda$createEqualToBooleanConstraint$0(int,boolean):67:67 -> b
     2:2:com.android.tools.r8.ir.analysis.inlining.NullSimpleInliningConstraint lambda$createNullConstraint$1(int,com.android.tools.r8.ir.analysis.type.Nullability):84:84 -> b
-com.android.tools.r8.ir.analysis.modeling.LibraryMethodReadSetModeling -> com.android.tools.r8.internal.IB:
+com.android.tools.r8.ir.analysis.modeling.LibraryMethodReadSetModeling -> com.android.tools.r8.internal.JB:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():15:15 -> <clinit>
     1:9:com.android.tools.r8.ir.analysis.fieldvalueanalysis.AbstractFieldSet getModeledReadSetOrUnknown(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.InvokeMethod):19:27 -> a
@@ -42452,10 +42484,10 @@
     76:79:void com.android.tools.r8.ir.analysis.proto.GeneratedMessageLiteShrinker.rewriteDynamicMethod(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode):265:268 -> a
     76:79:void run(com.android.tools.r8.ir.code.IRCode):112 -> a
     80:80:void run(com.android.tools.r8.ir.code.IRCode):113:113 -> a
-    81:81:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    81:81:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     81:81:void run(com.android.tools.r8.ir.code.IRCode):113 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    82:82:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    82:82:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     82:82:void run(com.android.tools.r8.ir.code.IRCode):113 -> a
     83:83:void run(com.android.tools.r8.ir.code.IRCode):114:114 -> a
     84:90:void optimizeNewMutableInstance(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode):119:125 -> a
@@ -42527,7 +42559,7 @@
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     202:202:boolean com.android.tools.r8.ir.analysis.proto.ProtoReferences.isMessageInfoConstructionMethod(com.android.tools.r8.graph.DexMethod):199:199 -> a
     202:202:com.android.tools.r8.ir.code.InvokeMethod getNewMessageInfoInvoke(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.analysis.proto.ProtoReferences):327 -> a
-com.android.tools.r8.ir.analysis.proto.ProtoEnqueuerUseRegistry -> com.android.tools.r8.internal.pP:
+com.android.tools.r8.ir.analysis.proto.ProtoEnqueuerUseRegistry -> com.android.tools.r8.internal.qP:
     com.android.tools.r8.ir.analysis.proto.ProtoReferences references -> i
     com.android.tools.r8.shaking.EnqueuerUseRegistryFactory FACTORY -> j
     1:1:void <clinit>():25:25 -> <clinit>
@@ -42552,7 +42584,7 @@
     9:15:void registerStaticFieldRead(com.android.tools.r8.graph.DexField):81 -> e
     16:19:void registerStaticFieldRead(com.android.tools.r8.graph.DexField):82:85 -> e
     1:1:com.android.tools.r8.shaking.EnqueuerUseRegistryFactory getFactory():39:39 -> g
-com.android.tools.r8.ir.analysis.proto.ProtoEnumSwitchMapRemover -> com.android.tools.r8.internal.qP:
+com.android.tools.r8.ir.analysis.proto.ProtoEnumSwitchMapRemover -> com.android.tools.r8.internal.rP:
     com.android.tools.r8.ir.analysis.proto.ProtoReferences references -> a
     java.util.Map staticFieldValuesMap -> b
     java.util.Map staticFieldValuesMapDelayed -> c
@@ -42571,7 +42603,7 @@
     12:16:com.android.tools.r8.ir.analysis.value.SingleNumberValue getOrdinal(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.graph.DexEncodedField):57 -> a
     17:25:com.android.tools.r8.ir.analysis.value.SingleNumberValue getOrdinal(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.graph.DexEncodedField):60:68 -> a
     26:31:com.android.tools.r8.ir.analysis.value.SingleNumberValue getOrdinal(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.graph.DexEncodedField):67:72 -> a
-com.android.tools.r8.ir.analysis.proto.ProtoInliningReasonStrategy -> com.android.tools.r8.internal.vP:
+com.android.tools.r8.ir.analysis.proto.ProtoInliningReasonStrategy -> com.android.tools.r8.internal.wP:
     com.android.tools.r8.ir.analysis.proto.ProtoReferences references -> b
     com.android.tools.r8.ir.optimize.inliner.InliningReasonStrategy parent -> a
     boolean $assertionsDisabled -> c
@@ -42627,7 +42659,7 @@
     43:43:com.android.tools.r8.ir.optimize.Inliner$Reason computeInliningReason(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.DefaultInliningOracle,com.android.tools.r8.ir.conversion.MethodProcessor):52 -> a
     44:47:com.android.tools.r8.ir.optimize.Inliner$Reason com.android.tools.r8.ir.analysis.proto.ProtoInliningReasonStrategy.computeInliningReasonForDynamicMethod(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod):85:88 -> a
     44:47:com.android.tools.r8.ir.optimize.Inliner$Reason computeInliningReason(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.DefaultInliningOracle,com.android.tools.r8.ir.conversion.MethodProcessor):52 -> a
-com.android.tools.r8.ir.analysis.proto.ProtoReferences -> com.android.tools.r8.internal.OP:
+com.android.tools.r8.ir.analysis.proto.ProtoReferences -> com.android.tools.r8.internal.PP:
     com.android.tools.r8.graph.DexType generatedMessageLiteExtendableMessageType -> l
     com.android.tools.r8.graph.DexType generatedMessageLiteBuilderType -> j
     com.android.tools.r8.graph.DexType methodToInvokeType -> n
@@ -42698,26 +42730,26 @@
     4:4:boolean com.android.tools.r8.graph.DexString.startsWith(com.android.tools.r8.graph.DexString):444:444 -> b
     4:4:boolean isFindLiteExtensionByNumberMethod(com.android.tools.r8.graph.DexMethod):184 -> b
     5:5:boolean isFindLiteExtensionByNumberMethod(com.android.tools.r8.graph.DexMethod):184:184 -> b
-com.android.tools.r8.ir.analysis.proto.ProtoReferences$GeneratedExtensionMethods -> com.android.tools.r8.internal.JP:
+com.android.tools.r8.ir.analysis.proto.ProtoReferences$GeneratedExtensionMethods -> com.android.tools.r8.internal.KP:
     com.android.tools.r8.graph.DexMethod constructorWithClass -> b
     com.android.tools.r8.graph.DexMethod constructor -> a
     1:1:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.ir.analysis.proto.ProtoReferences$1):206:206 -> <init>
     2:6:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):211:215 -> <init>
     7:19:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):213:225 -> <init>
     20:20:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):223:223 -> <init>
-com.android.tools.r8.ir.analysis.proto.ProtoReferences$GeneratedMessageLiteBuilderMethods -> com.android.tools.r8.internal.KP:
+com.android.tools.r8.ir.analysis.proto.ProtoReferences$GeneratedMessageLiteBuilderMethods -> com.android.tools.r8.internal.LP:
     com.android.tools.r8.graph.DexMethod constructorMethod -> a
     1:1:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.ir.analysis.proto.ProtoReferences$1):307:307 -> <init>
     2:6:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):311:315 -> <init>
     7:7:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):313:313 -> <init>
-com.android.tools.r8.ir.analysis.proto.ProtoReferences$GeneratedMessageLiteExtendableBuilderMethods -> com.android.tools.r8.internal.LP:
+com.android.tools.r8.ir.analysis.proto.ProtoReferences$GeneratedMessageLiteExtendableBuilderMethods -> com.android.tools.r8.internal.MP:
     com.android.tools.r8.graph.DexMethod constructorMethod -> b
     com.android.tools.r8.graph.DexMethod buildPartialMethod -> a
     1:1:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.ir.analysis.proto.ProtoReferences$1):324:324 -> <init>
     2:6:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):329:333 -> <init>
     7:14:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):331:338 -> <init>
     15:15:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):336:336 -> <init>
-com.android.tools.r8.ir.analysis.proto.ProtoReferences$GeneratedMessageLiteMethods -> com.android.tools.r8.internal.MP:
+com.android.tools.r8.ir.analysis.proto.ProtoReferences$GeneratedMessageLiteMethods -> com.android.tools.r8.internal.NP:
     com.android.tools.r8.graph.DexMethod newSingularGeneratedExtension -> e
     com.android.tools.r8.graph.DexMethod newRepeatedGeneratedExtension -> d
     com.android.tools.r8.graph.DexMethod dynamicMethodBridgeMethodWithObject -> c
@@ -42730,7 +42762,7 @@
     23:31:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):265:273 -> <init>
     32:47:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):271:286 -> <init>
     48:48:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):284:284 -> <init>
-com.android.tools.r8.ir.analysis.proto.ProtoReferences$MethodToInvokeMembers -> com.android.tools.r8.internal.NP:
+com.android.tools.r8.ir.analysis.proto.ProtoReferences$MethodToInvokeMembers -> com.android.tools.r8.internal.OP:
     com.android.tools.r8.graph.DexField newMutableInstanceField -> f
     com.android.tools.r8.graph.DexField newBuilderField -> e
     com.android.tools.r8.graph.DexField setMemoizedIsInitializedField -> g
@@ -42740,7 +42772,7 @@
     com.android.tools.r8.graph.DexField getMemoizedIsInitializedField -> c
     1:1:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.ir.analysis.proto.ProtoReferences$1):349:349 -> <init>
     2:19:void <init>(com.android.tools.r8.ir.analysis.proto.ProtoReferences,com.android.tools.r8.graph.DexItemFactory):359:376 -> <init>
-com.android.tools.r8.ir.analysis.proto.ProtoShrinker -> com.android.tools.r8.internal.PP:
+com.android.tools.r8.ir.analysis.proto.ProtoShrinker -> com.android.tools.r8.internal.QP:
     com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldTypeFactory factory -> b
     com.android.tools.r8.ir.analysis.proto.ProtoEnumSwitchMapRemover protoEnumSwitchMapRemover -> g
     com.android.tools.r8.ir.analysis.proto.GeneratedMessageLiteBuilderShrinker generatedMessageLiteBuilderShrinker -> e
@@ -42754,24 +42786,14 @@
     1:1:void <clinit>():17:17 -> <clinit>
     1:1:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.proto.ProtoReferences):30:30 -> <init>
     2:28:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.proto.ProtoReferences):28:54 -> <init>
-    1:7:com.android.tools.r8.ir.analysis.proto.ProtoShrinker create(com.android.tools.r8.graph.AppView):58:64 -> a
-    8:8:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
-    8:8:com.android.tools.r8.ir.analysis.proto.ProtoShrinker create(com.android.tools.r8.graph.AppView):66 -> a
-    9:13:com.android.tools.r8.ir.analysis.proto.ProtoShrinker create(com.android.tools.r8.graph.AppView):66:70 -> a
-    14:14:void com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.disable():1642:1642 -> a
-    14:14:com.android.tools.r8.ir.analysis.proto.ProtoShrinker create(com.android.tools.r8.graph.AppView):70 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    15:18:void com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions.disable():1643:1646 -> a
-    15:18:com.android.tools.r8.ir.analysis.proto.ProtoShrinker create(com.android.tools.r8.graph.AppView):70 -> a
-    19:19:com.android.tools.r8.ir.analysis.proto.ProtoShrinker create(com.android.tools.r8.graph.AppView):74:74 -> a
-    20:20:java.util.Set getDeadProtoTypes():78:78 -> a
-    21:23:boolean verifyDeadProtoTypesNotReferenced(com.android.tools.r8.dex.VirtualFile):88:90 -> a
-    24:24:void com.android.tools.r8.utils.InternalOptions.checkAssertionsEnabled():965:965 -> a
-    24:24:void setDeadProtoTypes(java.util.Set):83 -> a
-    25:25:void setDeadProtoTypes(java.util.Set):84:84 -> a
-    26:26:void com.android.tools.r8.utils.InternalOptions.checkAssertionsEnabled():966:966 -> a
-    26:26:void setDeadProtoTypes(java.util.Set):83 -> a
-com.android.tools.r8.ir.analysis.proto.ProtoUtils -> com.android.tools.r8.internal.SP:
+    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 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 setDeadProtoTypes(java.util.Set):83 -> a
+com.android.tools.r8.ir.analysis.proto.ProtoUtils -> com.android.tools.r8.internal.TP:
     boolean $assertionsDisabled -> a
     int $r8$clinit -> b
     1:1:void <clinit>():11:11 -> <clinit>
@@ -42782,7 +42804,7 @@
     3:3:boolean com.android.tools.r8.ir.analysis.proto.ProtoReferences.isMessageInfoConstructionMethod(com.android.tools.r8.graph.DexMethod):199:199 -> a
     3:3:com.android.tools.r8.ir.code.Value getInfoValueFromMessageInfoConstructionInvoke(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.analysis.proto.ProtoReferences):17 -> a
     4:6:com.android.tools.r8.ir.code.Value getInfoValueFromMessageInfoConstructionInvoke(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.analysis.proto.ProtoReferences):17:19 -> a
-com.android.tools.r8.ir.analysis.proto.RawMessageInfoDecoder -> com.android.tools.r8.internal.bQ:
+com.android.tools.r8.ir.analysis.proto.RawMessageInfoDecoder -> com.android.tools.r8.internal.cQ:
     com.android.tools.r8.ir.analysis.proto.ProtoReferences references -> b
     com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldTypeFactory factory -> a
     boolean $assertionsDisabled -> c
@@ -42873,7 +42895,7 @@
     4:19:com.android.tools.r8.utils.ThrowingIterator createObjectIterator(com.android.tools.r8.ir.code.Value):309:324 -> b
     20:20:com.android.tools.r8.utils.ThrowingIterator createObjectIterator(com.android.tools.r8.ir.code.Value):317:317 -> b
     21:21:com.android.tools.r8.utils.ThrowingIterator createObjectIterator(com.android.tools.r8.ir.code.Value):306:306 -> b
-com.android.tools.r8.ir.analysis.proto.RawMessageInfoDecoder$1 -> com.android.tools.r8.internal.YP:
+com.android.tools.r8.ir.analysis.proto.RawMessageInfoDecoder$1 -> com.android.tools.r8.internal.ZP:
     com.android.tools.r8.utils.ThrowingCharIterator charIterator -> a
     1:3:void <init>(com.android.tools.r8.graph.DexString):259:261 -> <init>
     1:1:boolean hasNext():265:265 -> a
@@ -42885,7 +42907,7 @@
     9:9:int nextInt():291:291 -> b
     10:10:int nextInt():280:280 -> b
     11:11:int nextInt():271:271 -> b
-com.android.tools.r8.ir.analysis.proto.RawMessageInfoDecoder$2 -> com.android.tools.r8.internal.ZP:
+com.android.tools.r8.ir.analysis.proto.RawMessageInfoDecoder$2 -> com.android.tools.r8.internal.aQ:
     com.android.tools.r8.ir.code.Value val$objectsValue -> c
     com.android.tools.r8.ir.code.InstructionIterator val$instructionIterator -> b
     int expectedNextIndex -> a
@@ -42900,10 +42922,10 @@
     16:16:java.lang.Object next():324 -> b
     17:17:com.android.tools.r8.ir.code.Value com.android.tools.r8.ir.analysis.proto.RawMessageInfoDecoder$2.next():346:346 -> b
     17:17:java.lang.Object next():324 -> b
-com.android.tools.r8.ir.analysis.proto.RawMessageInfoDecoder$InvalidRawMessageInfoException -> com.android.tools.r8.internal.aQ:
+com.android.tools.r8.ir.analysis.proto.RawMessageInfoDecoder$InvalidRawMessageInfoException -> com.android.tools.r8.internal.bQ:
     1:1:void <init>():369:369 -> <init>
     2:2:void <init>(com.android.tools.r8.ir.analysis.proto.RawMessageInfoDecoder$1):369:369 -> <init>
-com.android.tools.r8.ir.analysis.proto.RawMessageInfoEncoder -> com.android.tools.r8.internal.cQ:
+com.android.tools.r8.ir.analysis.proto.RawMessageInfoEncoder -> com.android.tools.r8.internal.dQ:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> a
     1:2:void <init>(com.android.tools.r8.graph.DexItemFactory):24:25 -> <init>
     1:1:com.android.tools.r8.graph.DexString encodeInfo(com.android.tools.r8.ir.analysis.proto.schema.ProtoMessageInfo):29:29 -> a
@@ -42944,7 +42966,7 @@
     81:81:java.lang.String toString():37:37 -> toString
     82:82:java.lang.String toString():37:37 -> toString
     76:76:java.lang.String toString():37:37 -> toString
-com.android.tools.r8.ir.analysis.proto.schema.LiveProtoFieldObject -> com.android.tools.r8.internal.xC:
+com.android.tools.r8.ir.analysis.proto.schema.LiveProtoFieldObject -> com.android.tools.r8.internal.yC:
     com.android.tools.r8.graph.DexField field -> a
     1:2:void <init>(com.android.tools.r8.graph.DexField):23:24 -> <init>
     com.android.tools.r8.ir.analysis.proto.schema.LiveProtoFieldObject asLiveProtoFieldObject() -> a
@@ -42968,7 +42990,7 @@
     57:57:java.lang.String toString():54:54 -> toString
     58:58:java.lang.String toString():54:54 -> toString
     55:55:java.lang.String toString():54:54 -> toString
-com.android.tools.r8.ir.analysis.proto.schema.ProtoEnqueuerExtension -> com.android.tools.r8.internal.oP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoEnqueuerExtension -> com.android.tools.r8.internal.pP:
     com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldTypeFactory factory -> c
     java.util.Set dynamicMethodsWithTracedProtoObjects -> h
     com.android.tools.r8.graph.AppView appView -> a
@@ -43134,7 +43156,7 @@
     1:25:void populateExtensionGraph(com.android.tools.r8.shaking.Enqueuer):225:249 -> b
     26:26:java.util.Set lambda$populateExtensionGraphWithExtensionFieldDefinition$3(com.android.tools.r8.graph.DexType):361:361 -> b
     1:7:java.util.Map collectExtensionFields():257:263 -> c
-com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldInfo -> com.android.tools.r8.internal.rP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldInfo -> com.android.tools.r8.internal.sP:
     com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldType type -> b
     java.util.List objects -> d
     boolean $assertionsDisabled -> e
@@ -43201,11 +43223,11 @@
     1:1:com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldType getType():65:65 -> d
     1:1:boolean hasAuxData():43:43 -> e
     1:15:java.lang.String toString():202:216 -> toString
-com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldObject -> com.android.tools.r8.internal.sP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldObject -> com.android.tools.r8.internal.tP:
     1:1:void <init>():7:7 -> <init>
     com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldObject asProtoFieldObject() -> b
     boolean isProtoFieldObject() -> f
-com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldType -> com.android.tools.r8.internal.tP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldType -> com.android.tools.r8.internal.uP:
     boolean isMapFieldWithProto2EnumValue -> e
     boolean hasHasBit -> f
     boolean $assertionsDisabled -> g
@@ -43233,7 +43255,7 @@
     1:1:boolean isValid():134:134 -> k
     1:1:boolean needsIsInitializedCheck():139:139 -> l
     1:14:int serialize():159:172 -> m
-com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldTypeFactory -> com.android.tools.r8.internal.uP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldTypeFactory -> com.android.tools.r8.internal.vP:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceMap fieldTypes -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():10:10 -> <clinit>
@@ -43242,7 +43264,7 @@
     2:16:com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldType com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldType.fromFieldIdWithExtraBits(int):56:70 -> a
     2:16:com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldType createField(int):17 -> a
     17:18:com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldType createField(int):18:19 -> a
-com.android.tools.r8.ir.analysis.proto.schema.ProtoMessageInfo -> com.android.tools.r8.internal.yP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoMessageInfo -> com.android.tools.r8.internal.zP:
     java.util.LinkedList hasBitsObjects -> d
     java.util.LinkedList oneOfObjects -> e
     int flags -> b
@@ -43263,7 +43285,7 @@
     1:1:int numberOfHasBitsObjects():245:245 -> j
     1:1:int numberOfOneOfObjects():249:249 -> k
     1:9:java.lang.String toString():254:262 -> toString
-com.android.tools.r8.ir.analysis.proto.schema.ProtoMessageInfo$Builder -> com.android.tools.r8.internal.wP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoMessageInfo$Builder -> com.android.tools.r8.internal.xP:
     java.util.LinkedList hasBitsObjects -> d
     java.util.LinkedList oneOfObjects -> e
     boolean $assertionsDisabled -> f
@@ -43308,10 +43330,10 @@
     91:98:void removeUnusedSharedData():165:172 -> c
     99:99:void removeUnusedSharedData():171:171 -> c
     100:101:void removeUnusedSharedData():84:85 -> c
-com.android.tools.r8.ir.analysis.proto.schema.ProtoMessageInfo$ProtoMessageInfoBuilderException -> com.android.tools.r8.internal.xP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoMessageInfo$ProtoMessageInfoBuilderException -> com.android.tools.r8.internal.yP:
     1:1:void <init>(com.android.tools.r8.ir.analysis.proto.schema.ProtoMessageInfo$1):180:180 -> <init>
     2:2:void <init>():181:181 -> <init>
-com.android.tools.r8.ir.analysis.proto.schema.ProtoObject -> com.android.tools.r8.internal.EP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoObject -> com.android.tools.r8.internal.FP:
     1:1:void <init>():11:11 -> <init>
     com.android.tools.r8.ir.analysis.proto.schema.LiveProtoFieldObject asLiveProtoFieldObject() -> a
     com.android.tools.r8.ir.code.Instruction buildIR(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode) -> a
@@ -43320,7 +43342,7 @@
     com.android.tools.r8.ir.analysis.proto.schema.ProtoTypeObject asProtoTypeObject() -> d
     boolean isDeadProtoFieldObject() -> e
     boolean isProtoFieldObject() -> f
-com.android.tools.r8.ir.analysis.proto.schema.ProtoObjectFromInvokeStatic -> com.android.tools.r8.internal.FP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoObjectFromInvokeStatic -> com.android.tools.r8.internal.GP:
     com.android.tools.r8.graph.DexMethod method -> a
     1:2:void <init>(com.android.tools.r8.graph.DexMethod):21:22 -> <init>
     1:3:com.android.tools.r8.ir.code.Instruction buildIR(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode):27:29 -> a
@@ -43328,7 +43350,7 @@
     4:4:com.android.tools.r8.ir.code.Instruction buildIR(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode):28 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     5:5:com.android.tools.r8.ir.code.Instruction buildIR(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode):30:30 -> a
-com.android.tools.r8.ir.analysis.proto.schema.ProtoObjectFromStaticGet -> com.android.tools.r8.internal.GP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoObjectFromStaticGet -> com.android.tools.r8.internal.HP:
     com.android.tools.r8.graph.DexField field -> a
     1:2:void <init>(com.android.tools.r8.graph.DexField):20:21 -> <init>
     1:2:com.android.tools.r8.ir.code.Instruction buildIR(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode):30:31 -> a
@@ -43338,7 +43360,7 @@
     4:4:com.android.tools.r8.ir.code.Instruction buildIR(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode):32:32 -> a
     com.android.tools.r8.ir.analysis.proto.schema.ProtoObjectFromStaticGet asProtoObjectFromStaticGet() -> c
     1:1:com.android.tools.r8.graph.DexField getField():25:25 -> g
-com.android.tools.r8.ir.analysis.proto.schema.ProtoOneOfFieldType -> com.android.tools.r8.internal.HP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoOneOfFieldType -> com.android.tools.r8.internal.IP:
     boolean $assertionsDisabled -> h
     1:1:void <clinit>():9:9 -> <clinit>
     1:1:void <init>(int,boolean,boolean,boolean,boolean,boolean):20:20 -> <init>
@@ -43350,7 +43372,7 @@
     boolean isRepeated() -> h
     boolean isSingular() -> j
     1:1:boolean isValid():60:60 -> k
-com.android.tools.r8.ir.analysis.proto.schema.ProtoOneOfObjectPair -> com.android.tools.r8.internal.IP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoOneOfObjectPair -> com.android.tools.r8.internal.JP:
     com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldObject oneOfCaseObject -> b
     com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldObject oneOfObject -> a
     1:3:void <init>(com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldObject,com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldObject):15:17 -> <init>
@@ -43358,7 +43380,7 @@
     2:3:void forEach(java.util.function.Consumer):29:30 -> a
     1:1:com.android.tools.r8.ir.analysis.proto.schema.ProtoFieldObject getOneOfObject():21:21 -> b
     1:1:java.util.stream.Stream stream():34:34 -> c
-com.android.tools.r8.ir.analysis.proto.schema.ProtoTypeObject -> com.android.tools.r8.internal.QP:
+com.android.tools.r8.ir.analysis.proto.schema.ProtoTypeObject -> com.android.tools.r8.internal.RP:
     com.android.tools.r8.graph.DexType type -> a
     1:2:void <init>(com.android.tools.r8.graph.DexType):16:17 -> <init>
     1:1:com.android.tools.r8.ir.code.Instruction buildIR(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode):26:26 -> a
@@ -43836,14 +43858,14 @@
     1:1:com.android.tools.r8.ir.analysis.type.FloatTypeElement getInstance():10:10 -> F
     1:1:int hashCode():25:25 -> hashCode
     1:1:java.lang.String toString():20:20 -> toString
-com.android.tools.r8.ir.analysis.type.IntTypeElement -> com.android.tools.r8.internal.Rt:
+com.android.tools.r8.ir.analysis.type.IntTypeElement -> com.android.tools.r8.internal.St:
     com.android.tools.r8.ir.analysis.type.IntTypeElement INSTANCE -> e
     1:1:void <clinit>():7:7 -> <clinit>
     1:1:void <init>():6:6 -> <init>
     1:1:com.android.tools.r8.ir.analysis.type.IntTypeElement getInstance():10:10 -> F
     1:1:int hashCode():25:25 -> hashCode
     1:1:java.lang.String toString():20:20 -> toString
-com.android.tools.r8.ir.analysis.type.InterfaceCollection -> com.android.tools.r8.internal.St:
+com.android.tools.r8.ir.analysis.type.InterfaceCollection -> com.android.tools.r8.internal.Tt:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap interfaces -> a
     com.android.tools.r8.ir.analysis.type.InterfaceCollection EMPTY -> b
     boolean $assertionsDisabled -> c
@@ -43868,7 +43890,7 @@
     1:1:boolean isEmpty():98:98 -> f
     1:1:int size():102:102 -> g
     1:1:int hashCode():119:119 -> hashCode
-com.android.tools.r8.ir.analysis.type.InterfaceCollection$Builder -> com.android.tools.r8.internal.St$a:
+com.android.tools.r8.ir.analysis.type.InterfaceCollection$Builder -> com.android.tools.r8.internal.Tt$a:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap interfaces -> a
     1:1:void <init>(com.android.tools.r8.ir.analysis.type.InterfaceCollection$1):34:34 -> <init>
     2:2:void <init>():37:37 -> <init>
@@ -43876,14 +43898,14 @@
     1:1:com.android.tools.r8.ir.analysis.type.InterfaceCollection$Builder addInterface(com.android.tools.r8.graph.DexType,boolean):51:51 -> a
     2:2:java.lang.Boolean lambda$addInterface$0(boolean,com.android.tools.r8.graph.DexType,java.lang.Boolean):55:55 -> a
     3:6:com.android.tools.r8.ir.analysis.type.InterfaceCollection build():60:63 -> a
-com.android.tools.r8.ir.analysis.type.LongTypeElement -> com.android.tools.r8.internal.lD:
+com.android.tools.r8.ir.analysis.type.LongTypeElement -> com.android.tools.r8.internal.mD:
     com.android.tools.r8.ir.analysis.type.LongTypeElement INSTANCE -> e
     1:1:void <clinit>():8:8 -> <clinit>
     1:1:void <init>():6:6 -> <init>
     1:1:com.android.tools.r8.ir.analysis.type.LongTypeElement getInstance():11:11 -> F
     1:1:int hashCode():26:26 -> hashCode
     1:1:java.lang.String toString():21:21 -> toString
-com.android.tools.r8.ir.analysis.type.NotNullDynamicType -> com.android.tools.r8.internal.UH:
+com.android.tools.r8.ir.analysis.type.NotNullDynamicType -> com.android.tools.r8.internal.VH:
     com.android.tools.r8.ir.analysis.type.NotNullDynamicType INSTANCE -> c
     boolean $assertionsDisabled -> d
     1:3:void <clinit>():21:23 -> <clinit>
@@ -43896,7 +43918,7 @@
     1:1:int hashCode():71:71 -> hashCode
     boolean isNotNullType() -> k
     1:1:com.android.tools.r8.ir.analysis.type.NotNullDynamicType get():28:28 -> o
-com.android.tools.r8.ir.analysis.type.Nullability -> com.android.tools.r8.internal.aI:
+com.android.tools.r8.ir.analysis.type.Nullability -> com.android.tools.r8.internal.bI:
     com.android.tools.r8.ir.analysis.type.Nullability DEFINITELY_NULL -> a
     com.android.tools.r8.ir.analysis.type.Nullability BOTTOM -> d
     com.android.tools.r8.ir.analysis.type.Nullability MAYBE_NULL -> c
@@ -43915,7 +43937,7 @@
     1:1:boolean isNullable():49:49 -> h
     1:1:com.android.tools.r8.ir.analysis.type.Nullability maybeNull():99:99 -> i
     1:13:java.lang.String toString():108:120 -> toString
-com.android.tools.r8.ir.analysis.type.NullabilityVariants -> com.android.tools.r8.internal.bI:
+com.android.tools.r8.ir.analysis.type.NullabilityVariants -> com.android.tools.r8.internal.cI:
     boolean $assertionsDisabled -> e
     com.android.tools.r8.ir.analysis.type.ReferenceTypeElement maybeNullVariant -> a
     com.android.tools.r8.ir.analysis.type.ReferenceTypeElement bottomVariant -> d
@@ -43931,7 +43953,7 @@
     32:40:void com.android.tools.r8.ir.analysis.type.NullabilityVariants.set(com.android.tools.r8.ir.analysis.type.Nullability,com.android.tools.r8.ir.analysis.type.ReferenceTypeElement):26:34 -> a
     32:40:com.android.tools.r8.ir.analysis.type.ReferenceTypeElement getOrCreateElement(com.android.tools.r8.ir.analysis.type.Nullability,java.util.function.BiFunction):64 -> a
     41:42:com.android.tools.r8.ir.analysis.type.ReferenceTypeElement getOrCreateElement(com.android.tools.r8.ir.analysis.type.Nullability,java.util.function.BiFunction):65:66 -> a
-com.android.tools.r8.ir.analysis.type.PrimitiveTypeElement -> com.android.tools.r8.internal.WM:
+com.android.tools.r8.ir.analysis.type.PrimitiveTypeElement -> com.android.tools.r8.internal.XM:
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():13:13 -> <clinit>
     1:1:void <init>():13:13 -> <init>
@@ -43984,10 +44006,10 @@
     79:79:com.android.tools.r8.graph.DexType toDexType(com.android.tools.r8.graph.DexItemFactory):60:60 -> b
     com.android.tools.r8.ir.analysis.type.PrimitiveTypeElement asPrimitiveType() -> c
     boolean isPrimitiveType() -> y
-com.android.tools.r8.ir.analysis.type.PrimitiveTypeElement$1 -> com.android.tools.r8.internal.VM:
+com.android.tools.r8.ir.analysis.type.PrimitiveTypeElement$1 -> com.android.tools.r8.internal.WM:
     int[] $SwitchMap$com$android$tools$r8$ir$code$NumericType -> a
     1:1:void <clinit>():113:113 -> <clinit>
-com.android.tools.r8.ir.analysis.type.ReferenceTypeElement -> com.android.tools.r8.internal.eS:
+com.android.tools.r8.ir.analysis.type.ReferenceTypeElement -> com.android.tools.r8.internal.fS:
     com.android.tools.r8.ir.analysis.type.ReferenceTypeElement NULL_INSTANCE -> d
     com.android.tools.r8.ir.analysis.type.ReferenceTypeElement NULL_BOTTOM_INSTANCE -> e
     com.android.tools.r8.ir.analysis.type.Nullability nullability -> c
@@ -44010,20 +44032,20 @@
     1:1:boolean equals(java.lang.Object):113:113 -> equals
     1:1:int hashCode():118:118 -> hashCode
     boolean isReferenceType() -> z
-com.android.tools.r8.ir.analysis.type.ReferenceTypeElement$NullElement -> com.android.tools.r8.internal.dS:
+com.android.tools.r8.ir.analysis.type.ReferenceTypeElement$NullElement -> com.android.tools.r8.internal.eS:
     1:1:void <init>(com.android.tools.r8.ir.analysis.type.Nullability):14:14 -> <init>
     1:1:com.android.tools.r8.ir.analysis.type.ReferenceTypeElement getOrCreateVariant(com.android.tools.r8.ir.analysis.type.Nullability):19:19 -> a
     1:1:boolean equals(java.lang.Object):50:50 -> equals
     1:1:int hashCode():42:42 -> hashCode
     1:1:java.lang.String toString():37:37 -> toString
-com.android.tools.r8.ir.analysis.type.ShortTypeElement -> com.android.tools.r8.internal.KU:
+com.android.tools.r8.ir.analysis.type.ShortTypeElement -> com.android.tools.r8.internal.LU:
     com.android.tools.r8.ir.analysis.type.ShortTypeElement INSTANCE -> e
     1:1:void <clinit>():8:8 -> <clinit>
     1:1:void <init>():6:6 -> <init>
     1:1:com.android.tools.r8.ir.analysis.type.ShortTypeElement getInstance():11:11 -> F
     1:1:int hashCode():31:31 -> hashCode
     1:1:java.lang.String toString():21:21 -> toString
-com.android.tools.r8.ir.analysis.type.SinglePrimitiveTypeElement -> com.android.tools.r8.internal.nV:
+com.android.tools.r8.ir.analysis.type.SinglePrimitiveTypeElement -> com.android.tools.r8.internal.oV:
     com.android.tools.r8.ir.analysis.type.SinglePrimitiveTypeElement INSTANCE -> d
     1:1:void <clinit>():9:9 -> <clinit>
     1:1:void <init>():12:12 -> <init>
@@ -44358,14 +44380,14 @@
     com.android.tools.r8.ir.analysis.value.NumberFromSetValue asNumberFromSetValue() -> h
     boolean isNonConstantNumberValue() -> j
     boolean isSingleNumberValue() -> k
-com.android.tools.r8.ir.analysis.value.NonConstantNumberValue -> com.android.tools.r8.internal.CH:
+com.android.tools.r8.ir.analysis.value.NonConstantNumberValue -> com.android.tools.r8.internal.DH:
     1:1:void <init>():7:7 -> <init>
     long getAbstractionSize() -> F
     com.android.tools.r8.ir.analysis.value.NonConstantNumberValue asNonConstantNumberValue() -> b
     boolean isNonConstantNumberValue() -> j
     com.android.tools.r8.ir.analysis.value.ConstantOrNonConstantNumberValue asConstantOrNonConstantNumberValue() -> l
     boolean isConstantOrNonConstantNumberValue() -> x
-com.android.tools.r8.ir.analysis.value.NullOrAbstractValue -> com.android.tools.r8.internal.YH:
+com.android.tools.r8.ir.analysis.value.NullOrAbstractValue -> com.android.tools.r8.internal.ZH:
     com.android.tools.r8.ir.analysis.value.AbstractValue value -> c
     1:2:void <init>(com.android.tools.r8.ir.analysis.value.AbstractValue):15:16 -> <init>
     1:1:com.android.tools.r8.ir.analysis.value.AbstractValue getNonNullValue():42:42 -> F
@@ -44390,7 +44412,7 @@
     70:70:java.lang.String toString():66:66 -> toString
     67:67:java.lang.String toString():66:66 -> toString
     boolean isNonTrivial() -> z
-com.android.tools.r8.ir.analysis.value.NumberFromIntervalValue -> com.android.tools.r8.internal.eI:
+com.android.tools.r8.ir.analysis.value.NumberFromIntervalValue -> com.android.tools.r8.internal.fI:
     long maxInclusive -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():13:13 -> <clinit>
@@ -44419,7 +44441,7 @@
     1:2:int hashCode():93:94 -> hashCode
     1:1:java.lang.String toString():100:100 -> toString
     boolean isNonTrivial() -> z
-com.android.tools.r8.ir.analysis.value.NumberFromSetValue -> com.android.tools.r8.internal.gI:
+com.android.tools.r8.ir.analysis.value.NumberFromSetValue -> com.android.tools.r8.internal.hI:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSet numbers -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():17:17 -> <clinit>
@@ -44439,7 +44461,7 @@
     1:1:int hashCode():106:106 -> hashCode
     1:7:java.lang.String toString():111:117 -> toString
     boolean isNonTrivial() -> z
-com.android.tools.r8.ir.analysis.value.NumberFromSetValue$Builder -> com.android.tools.r8.internal.fI:
+com.android.tools.r8.ir.analysis.value.NumberFromSetValue$Builder -> com.android.tools.r8.internal.gI:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSet numbers -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():120:120 -> <clinit>
@@ -44448,7 +44470,7 @@
     1:4:com.android.tools.r8.ir.analysis.value.NumberFromSetValue$Builder addInt(int):133:136 -> a
     5:8:com.android.tools.r8.ir.analysis.value.NumberFromSetValue$Builder addInts(com.android.tools.r8.ir.analysis.value.NumberFromSetValue):143:146 -> a
     9:17:com.android.tools.r8.ir.analysis.value.AbstractValue build(com.android.tools.r8.ir.analysis.value.AbstractValueFactory):153:161 -> a
-com.android.tools.r8.ir.analysis.value.SingleConstClassValue -> com.android.tools.r8.internal.hV:
+com.android.tools.r8.ir.analysis.value.SingleConstClassValue -> com.android.tools.r8.internal.iV:
     com.android.tools.r8.graph.DexType type -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():30:30 -> <clinit>
@@ -44505,13 +44527,13 @@
     136:136:java.lang.String toString():65:65 -> toString
     137:137:java.lang.String toString():65:65 -> toString
     138:138:java.lang.String toString():65:65 -> toString
-com.android.tools.r8.ir.analysis.value.SingleConstValue -> com.android.tools.r8.internal.iV:
+com.android.tools.r8.ir.analysis.value.SingleConstValue -> com.android.tools.r8.internal.jV:
     1:1:void <init>():7:7 -> <init>
     boolean isSingleConstValue() -> B
     1:1:com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfo com.android.tools.r8.ir.analysis.value.SingleConstClassValue.rewrittenWithLens(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.GraphLens):30:30 -> a
     1:1:com.android.tools.r8.ir.analysis.value.AbstractValue com.android.tools.r8.ir.analysis.value.SingleConstClassValue.rewrittenWithLens(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.GraphLens):30:30 -> b
     com.android.tools.r8.ir.analysis.value.SingleConstValue asSingleConstValue() -> o
-com.android.tools.r8.ir.analysis.value.SingleDexItemBasedStringValue -> com.android.tools.r8.internal.kV:
+com.android.tools.r8.ir.analysis.value.SingleDexItemBasedStringValue -> com.android.tools.r8.internal.lV:
     boolean $assertionsDisabled -> e
     com.android.tools.r8.naming.dexitembasedstring.NameComputationInfo nameComputationInfo -> d
     com.android.tools.r8.graph.DexReference item -> c
@@ -44537,7 +44559,7 @@
     76:76:java.lang.String toString():73:73 -> toString
     77:77:java.lang.String toString():73:73 -> toString
     74:74:java.lang.String toString():73:73 -> toString
-com.android.tools.r8.ir.analysis.value.SingleFieldValue -> com.android.tools.r8.internal.lV:
+com.android.tools.r8.ir.analysis.value.SingleFieldValue -> com.android.tools.r8.internal.mV:
     com.android.tools.r8.graph.DexField field -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():34:34 -> <clinit>
@@ -44576,7 +44598,7 @@
     1:11:com.android.tools.r8.ir.analysis.value.SingleValue rewrittenWithLens(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.GraphLens):145:155 -> c
     com.android.tools.r8.ir.analysis.value.SingleFieldValue asSingleFieldValue() -> q
     com.android.tools.r8.ir.analysis.value.objectstate.ObjectState getObjectState() -> u
-com.android.tools.r8.ir.analysis.value.SingleNumberValue -> com.android.tools.r8.internal.mV:
+com.android.tools.r8.ir.analysis.value.SingleNumberValue -> com.android.tools.r8.internal.nV:
     long value -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():24:24 -> <clinit>
@@ -44615,7 +44637,7 @@
     129:129:java.lang.String toString():125:125 -> toString
     126:126:java.lang.String toString():125:125 -> toString
     1:1:boolean isFalse():51:51 -> y
-com.android.tools.r8.ir.analysis.value.SingleStatefulFieldValue -> com.android.tools.r8.internal.oV:
+com.android.tools.r8.ir.analysis.value.SingleStatefulFieldValue -> com.android.tools.r8.internal.pV:
     com.android.tools.r8.ir.analysis.value.objectstate.ObjectState state -> e
     boolean $assertionsDisabled -> f
     1:1:void <clinit>():11:11 -> <clinit>
@@ -44635,7 +44657,7 @@
     1:1:com.android.tools.r8.ir.analysis.value.objectstate.ObjectState com.android.tools.r8.ir.analysis.value.SingleStatefulFieldValue.getObjectState():39:39 -> v
     1:1:boolean hasKnownArrayLength():24 -> v
     2:2:boolean hasKnownArrayLength():24:24 -> v
-com.android.tools.r8.ir.analysis.value.SingleStatelessFieldValue -> com.android.tools.r8.internal.pV:
+com.android.tools.r8.ir.analysis.value.SingleStatelessFieldValue -> com.android.tools.r8.internal.qV:
     1:1:void <init>(com.android.tools.r8.graph.DexField):14:14 -> <init>
     1:5:boolean equals(java.lang.Object):34:38 -> equals
     1:1:int hashCode():43:43 -> hashCode
@@ -44648,7 +44670,7 @@
     1:1:com.android.tools.r8.ir.analysis.value.objectstate.ObjectState com.android.tools.r8.ir.analysis.value.objectstate.ObjectState.empty():28:28 -> u
     1:1:com.android.tools.r8.ir.analysis.value.objectstate.ObjectState getObjectState():19 -> u
     boolean hasObjectState() -> w
-com.android.tools.r8.ir.analysis.value.SingleStringValue -> com.android.tools.r8.internal.qV:
+com.android.tools.r8.ir.analysis.value.SingleStringValue -> com.android.tools.r8.internal.rV:
     com.android.tools.r8.graph.DexString string -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():26:26 -> <clinit>
@@ -44671,7 +44693,7 @@
     64:64:java.lang.String toString():61:61 -> toString
     65:65:java.lang.String toString():61:61 -> toString
     62:62:java.lang.String toString():61:61 -> toString
-com.android.tools.r8.ir.analysis.value.SingleValue -> com.android.tools.r8.internal.sV:
+com.android.tools.r8.ir.analysis.value.SingleValue -> com.android.tools.r8.internal.tV:
     1:1:void <init>():18:18 -> <init>
     com.android.tools.r8.ir.code.Instruction createMaterializingInstruction(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.NumberGenerator,com.android.tools.r8.ir.code.TypeAndLocalInfoSupplier) -> a
     boolean isMaterializableInAllContexts(com.android.tools.r8.graph.AppView) -> a
@@ -44682,7 +44704,7 @@
     boolean isSingleValue() -> f
     com.android.tools.r8.ir.analysis.value.SingleValue asSingleValue() -> i
     boolean isNonTrivial() -> z
-com.android.tools.r8.ir.analysis.value.StatefulObjectValue -> com.android.tools.r8.internal.tW:
+com.android.tools.r8.ir.analysis.value.StatefulObjectValue -> com.android.tools.r8.internal.uW:
     com.android.tools.r8.ir.analysis.value.objectstate.ObjectState state -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():12:12 -> <clinit>
@@ -44740,7 +44762,7 @@
     1:1:int getEnumValuesSize():44:44 -> e
     1:9:boolean equals(java.lang.Object):85:93 -> equals
     1:1:int hashCode():102:102 -> hashCode
-com.android.tools.r8.ir.analysis.value.objectstate.KnownLengthArrayState -> com.android.tools.r8.internal.gz:
+com.android.tools.r8.ir.analysis.value.objectstate.KnownLengthArrayState -> com.android.tools.r8.internal.hz:
     int length -> a
     1:2:void <init>(int):20:21 -> <init>
     void forEachAbstractFieldValue(java.util.function.BiConsumer) -> a
@@ -44750,7 +44772,7 @@
     boolean hasKnownArrayLength() -> c
     boolean isEmpty() -> d
     1:1:int hashCode():62:62 -> hashCode
-com.android.tools.r8.ir.analysis.value.objectstate.NonEmptyObjectState -> com.android.tools.r8.internal.FH:
+com.android.tools.r8.ir.analysis.value.objectstate.NonEmptyObjectState -> com.android.tools.r8.internal.GH:
     java.util.Map state -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():18:18 -> <clinit>
@@ -44763,7 +44785,7 @@
     boolean isEmpty() -> d
     1:11:boolean equals(java.lang.Object):58:68 -> equals
     1:1:int hashCode():77:77 -> hashCode
-com.android.tools.r8.ir.analysis.value.objectstate.ObjectState -> com.android.tools.r8.internal.tK:
+com.android.tools.r8.ir.analysis.value.objectstate.ObjectState -> com.android.tools.r8.internal.uK:
     1:1:void <init>():21:21 -> <init>
     com.android.tools.r8.ir.analysis.value.objectstate.EnumValuesObjectState asEnumValuesObjectState() -> a
     void forEachAbstractFieldValue(java.util.function.BiConsumer) -> a
@@ -44773,7 +44795,7 @@
     1:1:int getKnownArrayLength():68:68 -> b
     boolean hasKnownArrayLength() -> c
     boolean isEmpty() -> d
-com.android.tools.r8.ir.analysis.value.objectstate.ObjectState$Builder -> com.android.tools.r8.internal.sK:
+com.android.tools.r8.ir.analysis.value.objectstate.ObjectState$Builder -> com.android.tools.r8.internal.tK:
     java.util.Map state -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():79:79 -> <clinit>
@@ -44783,7 +44805,7 @@
     5:5:com.android.tools.r8.ir.analysis.value.objectstate.ObjectState com.android.tools.r8.ir.analysis.value.objectstate.ObjectState.empty():28:28 -> a
     5:5:com.android.tools.r8.ir.analysis.value.objectstate.ObjectState build():91 -> a
     6:6:com.android.tools.r8.ir.analysis.value.objectstate.ObjectState build():91:91 -> a
-com.android.tools.r8.ir.analysis.value.objectstate.ObjectStateAnalysis -> com.android.tools.r8.internal.uK:
+com.android.tools.r8.ir.analysis.value.objectstate.ObjectStateAnalysis -> com.android.tools.r8.internal.vK:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():19:19 -> <clinit>
     1:1:boolean lambda$computeObjectState$0(com.android.tools.r8.ir.code.Instruction):25:25 -> a
@@ -48310,7 +48332,7 @@
     com.android.tools.r8.ir.code.Instruction asInstruction() -> g
     com.android.tools.r8.ir.code.Phi asPhi() -> h
     com.android.tools.r8.ir.code.BasicBlock getBlock() -> j
-com.android.tools.r8.ir.code.IntSwitch -> com.android.tools.r8.internal.Qt:
+com.android.tools.r8.ir.code.IntSwitch -> com.android.tools.r8.internal.Rt:
     boolean $assertionsDisabled -> n
     int[] keys -> m
     1:1:void <clinit>():28:28 -> <clinit>
@@ -48469,7 +48491,7 @@
     3:3:com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceSortedMap getKeyToTargetMap():222 -> u2
     4:4:com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceSortedMap getKeyToTargetMap():222:222 -> u2
     1:1:int[] getKeys():216:216 -> v2
-com.android.tools.r8.ir.code.Invoke -> com.android.tools.r8.internal.Gu:
+com.android.tools.r8.ir.code.Invoke -> com.android.tools.r8.internal.Hu:
     boolean $assertionsDisabled -> i
     1:1:void <clinit>():37:37 -> <clinit>
     1:1:void <init>(com.android.tools.r8.ir.code.Value,java.util.List):224:224 -> <init>
@@ -48621,7 +48643,7 @@
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     3:3:int com.android.tools.r8.ir.code.Value.requiredRegisters():263:263 -> u2
     3:3:int requiredArgumentRegisters():295 -> u2
-com.android.tools.r8.ir.code.Invoke$Type -> com.android.tools.r8.internal.Fu:
+com.android.tools.r8.ir.code.Invoke$Type -> com.android.tools.r8.internal.Gu:
     com.android.tools.r8.ir.code.Invoke$Type STATIC -> f
     boolean $assertionsDisabled -> m
     com.android.tools.r8.ir.code.Invoke$Type SUPER -> g
@@ -48643,7 +48665,7 @@
     49:50:int getDexOpcode():171:172 -> a
     1:2:int getDexOpcodeRange():176:177 -> b
     1:1:boolean isVirtual():197:197 -> c
-com.android.tools.r8.ir.code.InvokeCustom -> com.android.tools.r8.internal.Hu:
+com.android.tools.r8.ir.code.InvokeCustom -> com.android.tools.r8.internal.Iu:
     com.android.tools.r8.graph.DexCallSite callSite -> j
     boolean $assertionsDisabled -> k
     1:1:void <clinit>():26:26 -> <clinit>
@@ -48692,7 +48714,7 @@
     1:1:java.lang.String getTypeString():116:116 -> s2
     1:1:java.lang.String toString():121:121 -> toString
     1:1:com.android.tools.r8.graph.DexCallSite getCallSite():106:106 -> v2
-com.android.tools.r8.ir.code.InvokeDirect -> com.android.tools.r8.internal.Ku:
+com.android.tools.r8.ir.code.InvokeDirect -> com.android.tools.r8.internal.Lu:
     boolean isInterface -> m
     boolean $assertionsDisabled -> n
     int $r8$clinit -> o
@@ -48722,7 +48744,7 @@
     1:1:com.android.tools.r8.ir.code.Invoke$Type getType():69:69 -> r2
     1:1:java.lang.String getTypeString():74:74 -> s2
     1:1:boolean getInterfaceBit():59:59 -> v2
-com.android.tools.r8.ir.code.InvokeDirect$Builder -> com.android.tools.r8.internal.Ju:
+com.android.tools.r8.ir.code.InvokeDirect$Builder -> com.android.tools.r8.internal.Ku:
     1:1:void <init>():215:215 -> <init>
     com.android.tools.r8.ir.code.Instruction$BuilderBase self() -> a
     1:3:com.android.tools.r8.ir.code.InvokeMethod$Builder com.android.tools.r8.ir.code.InvokeMethod$Builder.setArguments(java.util.List):287:289 -> a
@@ -48735,7 +48757,7 @@
     2:2:void com.android.tools.r8.ir.code.InvokeDirect.<init>(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.ir.code.Value,java.util.List):37:37 -> b
     2:2:com.android.tools.r8.ir.code.InvokeDirect build():219 -> b
     3:3:com.android.tools.r8.ir.code.InvokeDirect build():219:219 -> b
-com.android.tools.r8.ir.code.InvokeInterface -> com.android.tools.r8.internal.Nu:
+com.android.tools.r8.ir.code.InvokeInterface -> com.android.tools.r8.internal.Ou:
     boolean $assertionsDisabled -> m
     1:1:void <clinit>():27:27 -> <clinit>
     1:1:void <init>(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.ir.code.Value,java.util.List):30:30 -> <init>
@@ -48757,7 +48779,7 @@
     1:1:com.android.tools.r8.ir.code.Invoke$Type getType():50:50 -> r2
     1:1:java.lang.String getTypeString():55:55 -> s2
     boolean getInterfaceBit() -> v2
-com.android.tools.r8.ir.code.InvokeMethod -> com.android.tools.r8.internal.Pu:
+com.android.tools.r8.ir.code.InvokeMethod -> com.android.tools.r8.internal.Qu:
     com.android.tools.r8.graph.DexMethod method -> j
     boolean $assertionsDisabled -> k
     1:1:void <clinit>():42:42 -> <clinit>
@@ -48827,13 +48849,13 @@
     1:1:java.lang.String toString():100:100 -> toString
     boolean getInterfaceBit() -> v2
     1:1:com.android.tools.r8.graph.DexMethod getInvokedMethod():90:90 -> w2
-com.android.tools.r8.ir.code.InvokeMethod$Builder -> com.android.tools.r8.internal.Ou:
+com.android.tools.r8.ir.code.InvokeMethod$Builder -> com.android.tools.r8.internal.Pu:
     java.util.List arguments -> d
     boolean $assertionsDisabled -> e
     com.android.tools.r8.graph.DexMethod method -> c
     1:1:void <clinit>():280:280 -> <clinit>
     1:5:void <init>():280:284 -> <init>
-com.android.tools.r8.ir.code.InvokeMethodWithReceiver -> com.android.tools.r8.internal.Qu:
+com.android.tools.r8.ir.code.InvokeMethodWithReceiver -> com.android.tools.r8.internal.Ru:
     boolean $assertionsDisabled -> l
     1:1:void <clinit>():31:31 -> <clinit>
     1:1:void <init>(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.ir.code.Value,java.util.List):34:34 -> <init>
@@ -48874,10 +48896,10 @@
     124:124:boolean com.android.tools.r8.ir.code.Instruction$SideEffectAssumption.canIgnoreInstanceFieldAssignmentsToReceiver():0:0 -> a
     124:124:boolean instructionMayHaveSideEffects(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction$SideEffectAssumption):244 -> a
     125:134:boolean instructionMayHaveSideEffects(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction$SideEffectAssumption):245:254 -> a
-    1:1:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> h
+    1:1:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> h
     1:1:com.android.tools.r8.graph.DexClassAndMethod lookupSingleTarget(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):70 -> h
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    2:2:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> h
+    2:2:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> h
     2:2:com.android.tools.r8.graph.DexClassAndMethod lookupSingleTarget(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):70 -> h
     3:3:com.android.tools.r8.graph.DexClassAndMethod lookupSingleTarget(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):71:71 -> h
     4:4:com.android.tools.r8.ir.analysis.type.DynamicTypeWithUpperBound com.android.tools.r8.ir.code.Value.getDynamicType(com.android.tools.r8.graph.AppView):1098:1098 -> h
@@ -48888,7 +48910,7 @@
     1:1:java.lang.Iterable getNonReceiverArguments():38 -> x2
     2:2:java.lang.Iterable getNonReceiverArguments():38:38 -> x2
     1:2:com.android.tools.r8.ir.code.Value getReceiver():52:53 -> y2
-com.android.tools.r8.ir.code.InvokeMultiNewArray -> com.android.tools.r8.internal.Ru:
+com.android.tools.r8.ir.code.InvokeMultiNewArray -> com.android.tools.r8.internal.Su:
     com.android.tools.r8.graph.DexType type -> j
     boolean $assertionsDisabled -> k
     1:1:void <clinit>():25:25 -> <clinit>
@@ -48925,7 +48947,7 @@
     1:1:java.util.List com.android.tools.r8.ir.code.Invoke.arguments():271:271 -> w2
     1:1:boolean instructionInstanceCanThrowNegativeArraySizeException():162 -> w2
     2:8:boolean instructionInstanceCanThrowNegativeArraySizeException():162:168 -> w2
-com.android.tools.r8.ir.code.InvokeNewArray -> com.android.tools.r8.internal.Su:
+com.android.tools.r8.ir.code.InvokeNewArray -> com.android.tools.r8.internal.Tu:
     com.android.tools.r8.graph.DexType type -> j
     boolean $assertionsDisabled -> k
     1:1:void <clinit>():28:28 -> <clinit>
@@ -48964,7 +48986,7 @@
     1:1:java.lang.String getTypeString():63:63 -> s2
     1:1:java.lang.String toString():68:68 -> toString
     1:1:com.android.tools.r8.graph.DexType getArrayType():53:53 -> v2
-com.android.tools.r8.ir.code.InvokePolymorphic -> com.android.tools.r8.internal.Tu:
+com.android.tools.r8.ir.code.InvokePolymorphic -> com.android.tools.r8.internal.Uu:
     boolean $assertionsDisabled -> m
     com.android.tools.r8.graph.DexProto proto -> l
     1:1:void <clinit>():29:29 -> <clinit>
@@ -49006,7 +49028,7 @@
     1:1:java.lang.String getTypeString():65:65 -> s2
     boolean getInterfaceBit() -> v2
     1:1:com.android.tools.r8.graph.DexProto getProto():69:69 -> x2
-com.android.tools.r8.ir.code.InvokeStatic -> com.android.tools.r8.internal.Yu:
+com.android.tools.r8.ir.code.InvokeStatic -> com.android.tools.r8.internal.Zu:
     boolean $assertionsDisabled -> m
     int $r8$clinit -> n
     boolean isInterface -> l
@@ -49054,7 +49076,7 @@
     1:1:com.android.tools.r8.ir.code.Invoke$Type getType():67:67 -> r2
     1:1:java.lang.String getTypeString():72:72 -> s2
     1:1:boolean getInterfaceBit():52:52 -> v2
-com.android.tools.r8.ir.code.InvokeStatic$Builder -> com.android.tools.r8.internal.Xu:
+com.android.tools.r8.ir.code.InvokeStatic$Builder -> com.android.tools.r8.internal.Yu:
     boolean $assertionsDisabled -> f
     1:1:void <clinit>():237:237 -> <clinit>
     1:1:void <init>():237:237 -> <init>
@@ -49080,7 +49102,7 @@
     8:9:com.android.tools.r8.ir.code.InvokeMethod$Builder setMethod(com.android.tools.r8.graph.DexMethod):0 -> a
       # {"id":"com.android.tools.r8.synthesized"}
     1:5:com.android.tools.r8.ir.code.InvokeStatic build():241:245 -> b
-com.android.tools.r8.ir.code.InvokeSuper -> com.android.tools.r8.internal.Zu:
+com.android.tools.r8.ir.code.InvokeSuper -> com.android.tools.r8.internal.av:
     boolean isInterface -> m
     boolean $assertionsDisabled -> n
     1:1:void <clinit>():25:25 -> <clinit>
@@ -49104,7 +49126,7 @@
     1:1:com.android.tools.r8.ir.code.Invoke$Type getType():51:51 -> r2
     1:1:java.lang.String getTypeString():56:56 -> s2
     1:1:boolean getInterfaceBit():36:36 -> v2
-com.android.tools.r8.ir.code.InvokeVirtual -> com.android.tools.r8.internal.cv:
+com.android.tools.r8.ir.code.InvokeVirtual -> com.android.tools.r8.internal.dv:
     boolean $assertionsDisabled -> m
     int $r8$clinit -> n
     1:1:void <clinit>():28:28 -> <clinit>
@@ -49131,7 +49153,7 @@
     1:1:com.android.tools.r8.ir.code.Invoke$Type getType():55:55 -> r2
     1:1:java.lang.String getTypeString():60:60 -> s2
     boolean getInterfaceBit() -> v2
-com.android.tools.r8.ir.code.InvokeVirtual$Builder -> com.android.tools.r8.internal.bv:
+com.android.tools.r8.ir.code.InvokeVirtual$Builder -> com.android.tools.r8.internal.cv:
     1:1:void <init>():163:163 -> <init>
     com.android.tools.r8.ir.code.Instruction$BuilderBase self() -> a
     1:3:com.android.tools.r8.ir.code.InvokeMethod$Builder com.android.tools.r8.ir.code.InvokeMethod$Builder.setArguments(java.util.List):287:289 -> a
@@ -49141,7 +49163,7 @@
     4:5:com.android.tools.r8.ir.code.InvokeMethod$Builder setMethod(com.android.tools.r8.graph.DexMethod):0 -> a
       # {"id":"com.android.tools.r8.synthesized"}
     1:1:com.android.tools.r8.ir.code.InvokeVirtual build():167:167 -> b
-com.android.tools.r8.ir.code.JumpInstruction -> com.android.tools.r8.internal.jw:
+com.android.tools.r8.ir.code.JumpInstruction -> com.android.tools.r8.internal.kw:
     boolean $assertionsDisabled -> i
     1:1:void <clinit>():13:13 -> <clinit>
     1:1:void <init>():16:16 -> <init>
@@ -49156,13 +49178,13 @@
     boolean instructionMayTriggerMethodInvocation(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod) -> d
     com.android.tools.r8.ir.code.JumpInstruction asJumpInstruction() -> f0
     com.android.tools.r8.ir.code.BasicBlock fallthroughBlock() -> o2
-com.android.tools.r8.ir.code.LazyDominatorTree -> com.android.tools.r8.internal.gB:
+com.android.tools.r8.ir.code.LazyDominatorTree -> com.android.tools.r8.internal.hB:
     com.android.tools.r8.ir.code.IRCode code -> b
     1:2:void <init>(com.android.tools.r8.ir.code.IRCode):13:14 -> <init>
     1:1:java.lang.Object get():9:9 -> b
     1:1:com.android.tools.r8.ir.code.DominatorTree get():19:19 -> d
     1:1:com.android.tools.r8.ir.code.DominatorTree lambda$get$0():19:19 -> e
-com.android.tools.r8.ir.code.LinearFlowInstructionListIterator -> com.android.tools.r8.internal.eC:
+com.android.tools.r8.ir.code.LinearFlowInstructionListIterator -> com.android.tools.r8.internal.fC:
     java.util.Set seenBlocks -> e
     boolean $assertionsDisabled -> f
     com.android.tools.r8.ir.code.IRCode code -> b
@@ -49215,7 +49237,7 @@
     1:1:void set(java.lang.Object):23:23 -> set
     2:2:void com.android.tools.r8.ir.code.LinearFlowInstructionListIterator.set(com.android.tools.r8.ir.code.Instruction):288:288 -> set
     2:2:void set(java.lang.Object):23 -> set
-com.android.tools.r8.ir.code.Load -> com.android.tools.r8.internal.zC:
+com.android.tools.r8.ir.code.Load -> com.android.tools.r8.internal.AC:
     1:1:void <init>(com.android.tools.r8.ir.code.StackValue,com.android.tools.r8.ir.code.Value):23:23 -> <init>
     boolean hasInvariantOutType() -> X0
     java.lang.Object accept(com.android.tools.r8.ir.code.InstructionVisitor) -> a
@@ -49235,7 +49257,7 @@
     1:1:int maxOutValueRegister():62:62 -> k2
     int opcode() -> l2
     1:1:com.android.tools.r8.ir.code.Value src():37:37 -> o2
-com.android.tools.r8.ir.code.LogicalBinop -> com.android.tools.r8.internal.MC:
+com.android.tools.r8.ir.code.LogicalBinop -> com.android.tools.r8.internal.NC:
     boolean $assertionsDisabled -> j
     1:1:void <clinit>():17:17 -> <clinit>
     1:1:void <init>(com.android.tools.r8.ir.code.NumericType,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value):20:20 -> <init>
@@ -49280,10 +49302,10 @@
     1:5:boolean needsValueInRegister(com.android.tools.r8.ir.code.Value):44:48 -> d
     com.android.tools.r8.ir.code.LogicalBinop asLogicalBinop() -> h0
     com.android.tools.r8.cf.code.CfLogicalBinop$Opcode getCfOpcode() -> t2
-com.android.tools.r8.ir.code.LogicalBinop$1 -> com.android.tools.r8.internal.LC:
+com.android.tools.r8.ir.code.LogicalBinop$1 -> com.android.tools.r8.internal.MC:
     int[] $SwitchMap$com$android$tools$r8$ir$code$NumericType -> a
     1:1:void <clinit>():65:65 -> <clinit>
-com.android.tools.r8.ir.code.MemberType -> com.android.tools.r8.internal.lE:
+com.android.tools.r8.ir.code.MemberType -> com.android.tools.r8.internal.mE:
     com.android.tools.r8.ir.code.MemberType BOOLEAN_OR_BYTE -> c
     com.android.tools.r8.ir.code.MemberType OBJECT -> b
     com.android.tools.r8.ir.code.MemberType SHORT -> e
@@ -49315,7 +49337,7 @@
     28:28:com.android.tools.r8.ir.code.MemberType com.android.tools.r8.ir.code.MemberType.fromTypeDescriptorChar(char):82:82 -> a
     28:28:com.android.tools.r8.ir.code.MemberType fromDexType(com.android.tools.r8.graph.DexType):103 -> a
     1:1:com.android.tools.r8.ir.code.MemberType[] values():11:11 -> b
-com.android.tools.r8.ir.code.Monitor -> com.android.tools.r8.internal.IF:
+com.android.tools.r8.ir.code.Monitor -> com.android.tools.r8.internal.JF:
     boolean $assertionsDisabled -> j
     com.android.tools.r8.ir.code.Monitor$Type type -> i
     1:1:void <clinit>():21:21 -> <clinit>
@@ -49351,10 +49373,10 @@
     int opcode() -> l2
     boolean throwsOnNullInput() -> n2
     1:1:boolean isEnter():49:49 -> o2
-com.android.tools.r8.ir.code.Monitor$1 -> com.android.tools.r8.internal.GF:
+com.android.tools.r8.ir.code.Monitor$1 -> com.android.tools.r8.internal.HF:
     int[] $SwitchMap$com$android$tools$r8$ir$code$Monitor$Type -> a
     1:1:void <clinit>():118:118 -> <clinit>
-com.android.tools.r8.ir.code.Monitor$Type -> com.android.tools.r8.internal.HF:
+com.android.tools.r8.ir.code.Monitor$Type -> com.android.tools.r8.internal.IF:
     com.android.tools.r8.ir.code.Monitor$Type[] $VALUES -> d
     com.android.tools.r8.ir.code.Monitor$Type ENTER -> b
     com.android.tools.r8.ir.code.Monitor$Type EXIT -> c
@@ -49362,7 +49384,7 @@
     2:2:void <clinit>():23:23 -> <clinit>
     1:1:void <init>(java.lang.String,int):23:23 -> <init>
     1:1:com.android.tools.r8.ir.code.Monitor$Type[] values():23:23 -> a
-com.android.tools.r8.ir.code.Move -> com.android.tools.r8.internal.JF:
+com.android.tools.r8.ir.code.Move -> com.android.tools.r8.internal.KF:
     boolean $assertionsDisabled -> i
     1:1:void <clinit>():19:19 -> <clinit>
     1:1:void <init>(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value):24:24 -> <init>
@@ -49391,7 +49413,7 @@
     1:1:com.android.tools.r8.ir.code.Value dest():38:38 -> o2
     1:1:com.android.tools.r8.ir.code.Value src():42:42 -> p2
     1:1:java.lang.String toString():77:77 -> toString
-com.android.tools.r8.ir.code.MoveException -> com.android.tools.r8.internal.LF:
+com.android.tools.r8.ir.code.MoveException -> com.android.tools.r8.internal.MF:
     com.android.tools.r8.graph.DexType exceptionType -> i
     boolean $assertionsDisabled -> k
     com.android.tools.r8.utils.InternalOptions options -> j
@@ -49423,7 +49445,7 @@
     int maxOutValueRegister() -> k2
     int opcode() -> l2
     1:1:com.android.tools.r8.graph.DexType getExceptionType():126:126 -> o2
-com.android.tools.r8.ir.code.Mul -> com.android.tools.r8.internal.NF:
+com.android.tools.r8.ir.code.Mul -> com.android.tools.r8.internal.OF:
     1:1:void <init>(com.android.tools.r8.ir.code.NumericType,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value):22:22 -> <init>
     java.lang.Object accept(com.android.tools.r8.ir.code.InstructionVisitor) -> a
     double foldDouble(double,double) -> a
@@ -49448,7 +49470,7 @@
     int opcode() -> l2
     boolean isCommutative() -> p2
     1:1:com.android.tools.r8.cf.code.CfArithmeticBinop$Opcode getCfOpcode():139:139 -> t2
-com.android.tools.r8.ir.code.Neg -> com.android.tools.r8.internal.EG:
+com.android.tools.r8.ir.code.Neg -> com.android.tools.r8.internal.FG:
     com.android.tools.r8.ir.code.NumericType type -> i
     boolean $assertionsDisabled -> j
     1:1:void <clinit>():21:21 -> <clinit>
@@ -49478,10 +49500,10 @@
     3:3:boolean identicalNonValueNonPositionParts(com.android.tools.r8.ir.code.Instruction):49:49 -> b
     int opcode() -> l2
     com.android.tools.r8.ir.code.Neg asNeg() -> m0
-com.android.tools.r8.ir.code.Neg$1 -> com.android.tools.r8.internal.DG:
+com.android.tools.r8.ir.code.Neg$1 -> com.android.tools.r8.internal.EG:
     int[] $SwitchMap$com$android$tools$r8$ir$code$NumericType -> a
     1:1:void <clinit>():57:57 -> <clinit>
-com.android.tools.r8.ir.code.NewArrayEmpty -> com.android.tools.r8.internal.OG:
+com.android.tools.r8.ir.code.NewArrayEmpty -> com.android.tools.r8.internal.PG:
     com.android.tools.r8.graph.DexType type -> i
     boolean $assertionsDisabled -> j
     1:1:void <clinit>():26:26 -> <clinit>
@@ -49520,7 +49542,7 @@
     com.android.tools.r8.ir.code.NewArrayEmpty asNewArrayEmpty() -> n0
     1:1:com.android.tools.r8.ir.code.Value size():55:55 -> o2
     1:1:java.lang.String toString():47:47 -> toString
-com.android.tools.r8.ir.code.NewArrayFilledData -> com.android.tools.r8.internal.PG:
+com.android.tools.r8.ir.code.NewArrayFilledData -> com.android.tools.r8.internal.QG:
     long size -> j
     short[] data -> k
     int element_width -> i
@@ -49561,7 +49583,7 @@
     int opcode() -> l2
     com.android.tools.r8.ir.code.NewArrayFilledData asNewArrayFilledData() -> o0
     1:1:com.android.tools.r8.ir.code.Value src():50:50 -> o2
-com.android.tools.r8.ir.code.NewInstance -> com.android.tools.r8.internal.RG:
+com.android.tools.r8.ir.code.NewInstance -> com.android.tools.r8.internal.SG:
     int $r8$clinit -> l
     com.android.tools.r8.graph.DexType clazz -> i
     boolean allowSpilling -> j
@@ -49599,13 +49621,13 @@
     1:1:boolean isSpillingAllowed():211:211 -> q2
     1:1:void markNoSpilling():207:207 -> r2
     1:1:java.lang.String toString():75:75 -> toString
-com.android.tools.r8.ir.code.NewInstance$Builder -> com.android.tools.r8.internal.QG:
+com.android.tools.r8.ir.code.NewInstance$Builder -> com.android.tools.r8.internal.RG:
     com.android.tools.r8.graph.DexType type -> c
     1:1:void <init>():236:236 -> <init>
     com.android.tools.r8.ir.code.Instruction$BuilderBase self() -> a
     1:1:com.android.tools.r8.ir.code.NewInstance$Builder setType(com.android.tools.r8.graph.DexType):241:241 -> a
     1:1:com.android.tools.r8.ir.code.NewInstance build():247:247 -> b
-com.android.tools.r8.ir.code.NewUnboxedEnumInstance -> com.android.tools.r8.internal.SG:
+com.android.tools.r8.ir.code.NewUnboxedEnumInstance -> com.android.tools.r8.internal.TG:
     com.android.tools.r8.graph.DexType clazz -> i
     int ordinal -> j
     boolean $assertionsDisabled -> k
@@ -49633,9 +49655,9 @@
     1:1:int getOrdinal():55:55 -> o2
     com.android.tools.r8.ir.code.NewUnboxedEnumInstance asNewUnboxedEnumInstance() -> q0
     1:1:java.lang.String toString():80:80 -> toString
-com.android.tools.r8.ir.code.NextUntilIterator -> com.android.tools.r8.internal.TG:
+com.android.tools.r8.ir.code.NextUntilIterator -> com.android.tools.r8.internal.UG:
     1:3:java.lang.Object nextUntil(java.util.function.Predicate):19:21 -> a
-com.android.tools.r8.ir.code.Not -> com.android.tools.r8.internal.RH:
+com.android.tools.r8.ir.code.Not -> com.android.tools.r8.internal.SH:
     com.android.tools.r8.ir.code.NumericType type -> i
     boolean $assertionsDisabled -> j
     1:1:void <clinit>():19:19 -> <clinit>
@@ -49664,10 +49686,10 @@
     3:3:boolean identicalNonValueNonPositionParts(com.android.tools.r8.ir.code.Instruction):83:83 -> b
     int opcode() -> l2
     com.android.tools.r8.ir.code.Not asNot() -> r0
-com.android.tools.r8.ir.code.Not$1 -> com.android.tools.r8.internal.QH:
+com.android.tools.r8.ir.code.Not$1 -> com.android.tools.r8.internal.RH:
     int[] $SwitchMap$com$android$tools$r8$ir$code$NumericType -> a
     1:1:void <clinit>():68:68 -> <clinit>
-com.android.tools.r8.ir.code.NumberConversion -> com.android.tools.r8.internal.dI:
+com.android.tools.r8.ir.code.NumberConversion -> com.android.tools.r8.internal.eI:
     com.android.tools.r8.ir.code.NumericType to -> j
     com.android.tools.r8.ir.code.NumericType from -> i
     1:3:void <init>(com.android.tools.r8.ir.code.NumericType,com.android.tools.r8.ir.code.NumericType,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value):36:38 -> <init>
@@ -49727,15 +49749,15 @@
     1:5:boolean identicalNonValueNonPositionParts(com.android.tools.r8.ir.code.Instruction):138:142 -> b
     int opcode() -> l2
     com.android.tools.r8.ir.code.NumberConversion asNumberConversion() -> s0
-com.android.tools.r8.ir.code.NumberConversion$1 -> com.android.tools.r8.internal.cI:
+com.android.tools.r8.ir.code.NumberConversion$1 -> com.android.tools.r8.internal.dI:
     int[] $SwitchMap$com$android$tools$r8$ir$code$NumericType -> a
     1:1:void <clinit>():62:62 -> <clinit>
-com.android.tools.r8.ir.code.NumberGenerator -> com.android.tools.r8.internal.hI:
+com.android.tools.r8.ir.code.NumberGenerator -> com.android.tools.r8.internal.iI:
     int nextValueNumber -> a
     1:2:void <init>():6:7 -> <init>
     1:1:int next():10:10 -> a
     1:1:int peek():14:14 -> b
-com.android.tools.r8.ir.code.NumericType -> com.android.tools.r8.internal.mI:
+com.android.tools.r8.ir.code.NumericType -> com.android.tools.r8.internal.nI:
     com.android.tools.r8.ir.code.NumericType DOUBLE -> h
     com.android.tools.r8.ir.code.NumericType FLOAT -> g
     com.android.tools.r8.ir.code.NumericType LONG -> f
@@ -49762,10 +49784,10 @@
     53:59:com.android.tools.r8.ir.code.NumericType fromDexType(com.android.tools.r8.graph.DexType):45:51 -> a
     60:60:boolean isWide():62:62 -> a
     1:1:com.android.tools.r8.ir.code.NumericType[] values():10:10 -> b
-com.android.tools.r8.ir.code.NumericType$1 -> com.android.tools.r8.internal.lI:
+com.android.tools.r8.ir.code.NumericType$1 -> com.android.tools.r8.internal.mI:
     int[] $SwitchMap$com$android$tools$r8$ir$code$NumericType -> a
     1:1:void <clinit>():20:20 -> <clinit>
-com.android.tools.r8.ir.code.Or -> com.android.tools.r8.internal.cL:
+com.android.tools.r8.ir.code.Or -> com.android.tools.r8.internal.dL:
     1:1:void <init>(com.android.tools.r8.ir.code.NumericType,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value):18:18 -> <init>
     java.lang.Object accept(com.android.tools.r8.ir.code.InstructionVisitor) -> a
     int foldIntegers(int,int) -> a
@@ -49785,7 +49807,7 @@
     boolean isCommutative() -> p2
     com.android.tools.r8.ir.code.Or asOr() -> t0
     1:1:com.android.tools.r8.cf.code.CfLogicalBinop$Opcode getCfOpcode():93:93 -> t2
-com.android.tools.r8.ir.code.Phi -> com.android.tools.r8.internal.YL:
+com.android.tools.r8.ir.code.Phi -> com.android.tools.r8.internal.ZL:
     com.android.tools.r8.ir.code.Phi$RegisterReadType readType -> t
     java.util.List definitionUsers -> v
     java.util.List operands -> s
@@ -49915,18 +49937,18 @@
     6:6:void removeDeadPhi():324:324 -> l0
     1:1:boolean removeTrivialPhi():240:240 -> m0
     1:1:void setIsStackPhi(boolean):376:376 -> n0
-com.android.tools.r8.ir.code.Phi$RegisterReadType -> com.android.tools.r8.internal.YL$a:
+com.android.tools.r8.ir.code.Phi$RegisterReadType -> com.android.tools.r8.internal.ZL$a:
     com.android.tools.r8.ir.code.Phi$RegisterReadType NORMAL -> b
     com.android.tools.r8.ir.code.Phi$RegisterReadType DEBUG -> c
     1:2:void <clinit>():39:40 -> <clinit>
     1:1:void <init>(java.lang.String,int):38:38 -> <init>
-com.android.tools.r8.ir.code.Phi$StackMapPhi -> com.android.tools.r8.internal.ZL:
+com.android.tools.r8.ir.code.Phi$StackMapPhi -> com.android.tools.r8.internal.aM:
     boolean $assertionsDisabled -> x
     1:1:void <clinit>():455:455 -> <clinit>
     1:1:void <init>(int,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.analysis.type.TypeElement,com.android.tools.r8.graph.DebugLocalInfo,com.android.tools.r8.ir.code.Phi$RegisterReadType):463:463 -> <init>
     1:8:com.android.tools.r8.graph.DexType computeVerificationType(com.android.tools.r8.graph.AppView,com.android.tools.r8.cf.TypeVerificationHelper):468:475 -> a
     1:10:com.android.tools.r8.ir.analysis.type.TypeElement computePhiType(com.android.tools.r8.graph.AppView):481:490 -> c
-com.android.tools.r8.ir.code.Pop -> com.android.tools.r8.internal.jM:
+com.android.tools.r8.ir.code.Pop -> com.android.tools.r8.internal.kM:
     boolean $assertionsDisabled -> i
     1:1:void <clinit>():17:17 -> <clinit>
     1:2:void <init>(com.android.tools.r8.ir.code.Value):20:21 -> <init>
@@ -49951,7 +49973,7 @@
     1:1:int maxOutValueRegister():78:78 -> k2
     int opcode() -> l2
     com.android.tools.r8.ir.code.Pop asPop() -> u0
-com.android.tools.r8.ir.code.Position -> com.android.tools.r8.internal.oM:
+com.android.tools.r8.ir.code.Position -> com.android.tools.r8.internal.pM:
     boolean removeInnerFramesIfThrowingNpe -> e
     boolean $assertionsDisabled -> f
     int line -> b
@@ -50002,7 +50024,7 @@
     1:19:java.lang.String com.android.tools.r8.ir.code.Position.toString(boolean):205:223 -> toString
     1:19:java.lang.String toString():228 -> toString
     1:1:com.android.tools.r8.ir.code.Position syntheticNone():117:117 -> u
-com.android.tools.r8.ir.code.Position$OutlineCallerPosition -> com.android.tools.r8.internal.lM:
+com.android.tools.r8.ir.code.Position$OutlineCallerPosition -> com.android.tools.r8.internal.mM:
     boolean isOutline -> i
     com.android.tools.r8.graph.DexMethod outlineCallee -> h
     com.android.tools.r8.utils.Int2StructuralItemArrayMap outlinePositions -> g
@@ -50022,7 +50044,7 @@
     1:1:com.android.tools.r8.utils.structural.StructuralMapping getStructuralMapping():552:552 -> n
     1:1:boolean isOutline():537:537 -> o
     1:1:com.android.tools.r8.ir.code.Position$OutlineCallerPosition$OutlineCallerPositionBuilder builder():556:556 -> v
-com.android.tools.r8.ir.code.Position$OutlineCallerPosition$OutlineCallerPositionBuilder -> com.android.tools.r8.internal.kM:
+com.android.tools.r8.ir.code.Position$OutlineCallerPosition$OutlineCallerPositionBuilder -> com.android.tools.r8.internal.lM:
     boolean isOutline -> i
     boolean $assertionsDisabled -> j
     com.android.tools.r8.utils.Int2StructuralItemArrayMap$Builder outlinePositionsBuilder -> g
@@ -50038,7 +50060,7 @@
     com.android.tools.r8.ir.code.Position$PositionBuilder self() -> c
     1:8:com.android.tools.r8.ir.code.Position$OutlineCallerPosition build():595:602 -> d
     1:1:boolean hasOutlinePositions():590:590 -> e
-com.android.tools.r8.ir.code.Position$OutlinePosition -> com.android.tools.r8.internal.nM:
+com.android.tools.r8.ir.code.Position$OutlinePosition -> com.android.tools.r8.internal.oM:
     1:1:void <init>(int,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.ir.code.Position,boolean,com.android.tools.r8.ir.code.Position$1):429:429 -> <init>
     2:2:void <init>(int,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.ir.code.Position,boolean):436:436 -> <init>
     com.android.tools.r8.utils.structural.StructuralItem self() -> E
@@ -50052,13 +50074,13 @@
     1:1:void lambda$getStructuralMapping$0(com.android.tools.r8.utils.structural.StructuralSpecification):460:460 -> c
     1:1:com.android.tools.r8.utils.structural.StructuralMapping getStructuralMapping():460:460 -> n
     1:1:com.android.tools.r8.ir.code.Position$OutlinePosition$OutlinePositionBuilder builder():464:464 -> v
-com.android.tools.r8.ir.code.Position$OutlinePosition$OutlinePositionBuilder -> com.android.tools.r8.internal.mM:
+com.android.tools.r8.ir.code.Position$OutlinePosition$OutlinePositionBuilder -> com.android.tools.r8.internal.nM:
     1:1:void <init>(com.android.tools.r8.ir.code.Position$1):467:467 -> <init>
     2:2:void <init>():470:470 -> <init>
     1:1:com.android.tools.r8.ir.code.Position build():467:467 -> a
     com.android.tools.r8.ir.code.Position$PositionBuilder self() -> c
     1:1:com.android.tools.r8.ir.code.Position$OutlinePosition build():479:479 -> d
-com.android.tools.r8.ir.code.Position$PositionBuilder -> com.android.tools.r8.internal.oM$a:
+com.android.tools.r8.ir.code.Position$PositionBuilder -> com.android.tools.r8.internal.pM$a:
     boolean noCheckOfPosition -> e
     boolean noCheckOfMethod -> f
     com.android.tools.r8.graph.DexMethod method -> b
@@ -50073,7 +50095,7 @@
     7:8:com.android.tools.r8.ir.code.Position$PositionBuilder setRemoveInnerFramesIfThrowingNpe(boolean):266:267 -> a
     1:2:com.android.tools.r8.ir.code.Position$PositionBuilder disableMethodCheck():276:277 -> b
     com.android.tools.r8.ir.code.Position$PositionBuilder self() -> c
-com.android.tools.r8.ir.code.Position$SourcePosition -> com.android.tools.r8.internal.oM$b:
+com.android.tools.r8.ir.code.Position$SourcePosition -> com.android.tools.r8.internal.pM$b:
     boolean $assertionsDisabled -> i
     com.android.tools.r8.graph.DexString file -> g
     com.android.tools.r8.ir.code.Position$SourcePosition NO_POSITION -> h
@@ -50095,7 +50117,7 @@
     1:1:com.android.tools.r8.utils.structural.StructuralMapping getStructuralMapping():334:334 -> n
     1:1:com.android.tools.r8.ir.code.Position$SourcePosition access$000():283:283 -> v
     1:1:com.android.tools.r8.ir.code.Position$SourcePosition$SourcePositionBuilder builder():338:338 -> w
-com.android.tools.r8.ir.code.Position$SourcePosition$SourcePositionBuilder -> com.android.tools.r8.internal.oM$b$a:
+com.android.tools.r8.ir.code.Position$SourcePosition$SourcePositionBuilder -> com.android.tools.r8.internal.pM$b$a:
     com.android.tools.r8.graph.DexString file -> g
     boolean $assertionsDisabled -> h
     1:1:void <clinit>():341:341 -> <clinit>
@@ -50104,7 +50126,7 @@
     2:2:com.android.tools.r8.ir.code.Position$SourcePosition$SourcePositionBuilder setFile(com.android.tools.r8.graph.DexString):352:352 -> a
     com.android.tools.r8.ir.code.Position$PositionBuilder self() -> c
     1:3:com.android.tools.r8.ir.code.Position$SourcePosition build():358:360 -> d
-com.android.tools.r8.ir.code.Position$SyntheticPosition -> com.android.tools.r8.internal.oM$c:
+com.android.tools.r8.ir.code.Position$SyntheticPosition -> com.android.tools.r8.internal.pM$c:
     com.android.tools.r8.ir.code.Position NO_POSITION_SYNTHETIC -> g
     1:1:void <clinit>():371:371 -> <clinit>
     1:1:void <init>(int,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.ir.code.Position,boolean,com.android.tools.r8.ir.code.Position$1):366:366 -> <init>
@@ -50121,7 +50143,7 @@
     1:1:com.android.tools.r8.utils.structural.StructuralMapping getStructuralMapping():403:403 -> n
     1:1:com.android.tools.r8.ir.code.Position access$100():366:366 -> v
     1:1:com.android.tools.r8.ir.code.Position$SyntheticPosition$SyntheticPositionBuilder builder():407:407 -> w
-com.android.tools.r8.ir.code.Position$SyntheticPosition$SyntheticPositionBuilder -> com.android.tools.r8.internal.oM$c$a:
+com.android.tools.r8.ir.code.Position$SyntheticPosition$SyntheticPositionBuilder -> com.android.tools.r8.internal.pM$c$a:
     boolean $assertionsDisabled -> g
     1:1:void <clinit>():410:410 -> <clinit>
     1:1:void <init>(com.android.tools.r8.ir.code.Position$1):410:410 -> <init>
@@ -50129,9 +50151,9 @@
     1:1:com.android.tools.r8.ir.code.Position build():410:410 -> a
     com.android.tools.r8.ir.code.Position$PositionBuilder self() -> c
     1:3:com.android.tools.r8.ir.code.Position$SyntheticPosition build():422:424 -> d
-com.android.tools.r8.ir.code.PreviousUntilIterator -> com.android.tools.r8.internal.QM:
+com.android.tools.r8.ir.code.PreviousUntilIterator -> com.android.tools.r8.internal.RM:
     1:3:java.lang.Object previousUntil(java.util.function.Predicate):18:20 -> b
-com.android.tools.r8.ir.code.RecordFieldValues -> com.android.tools.r8.internal.xQ:
+com.android.tools.r8.ir.code.RecordFieldValues -> com.android.tools.r8.internal.yQ:
     com.android.tools.r8.graph.DexField[] fields -> i
     1:2:void <init>(com.android.tools.r8.graph.DexField[],com.android.tools.r8.ir.code.Value,java.util.List):28:29 -> <init>
     boolean hasInvariantOutType() -> X0
@@ -50161,7 +50183,7 @@
     int opcode() -> l2
     1:1:com.android.tools.r8.graph.DexField[] getFields():33:33 -> o2
     com.android.tools.r8.ir.code.RecordFieldValues asRecordFieldValues() -> v0
-com.android.tools.r8.ir.code.Rem -> com.android.tools.r8.internal.GS:
+com.android.tools.r8.ir.code.Rem -> com.android.tools.r8.internal.HS:
     1:1:void <init>(com.android.tools.r8.ir.code.NumericType,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value):24:24 -> <init>
     java.lang.Object accept(com.android.tools.r8.ir.code.InstructionVisitor) -> a
     double foldDouble(double,double) -> a
@@ -50191,7 +50213,7 @@
     boolean isCommutative() -> p2
     1:1:com.android.tools.r8.cf.code.CfArithmeticBinop$Opcode getCfOpcode():148:148 -> t2
     com.android.tools.r8.ir.code.Rem asRem() -> w0
-com.android.tools.r8.ir.code.Return -> com.android.tools.r8.internal.RT:
+com.android.tools.r8.ir.code.Return -> com.android.tools.r8.internal.ST:
     boolean $assertionsDisabled -> j
     int $r8$clinit -> k
     1:1:void <clinit>():21:21 -> <clinit>
@@ -50245,21 +50267,21 @@
     1:1:boolean isReturnVoid():46:46 -> p2
     1:2:com.android.tools.r8.ir.code.Value returnValue():59:60 -> q2
     com.android.tools.r8.ir.code.Return asReturn() -> x0
-com.android.tools.r8.ir.code.Return$Builder -> com.android.tools.r8.internal.QT:
+com.android.tools.r8.ir.code.Return$Builder -> com.android.tools.r8.internal.RT:
     1:1:void <init>():139:139 -> <init>
     com.android.tools.r8.ir.code.Instruction$BuilderBase self() -> a
     1:1:com.android.tools.r8.ir.code.Return build():143:143 -> b
-com.android.tools.r8.ir.code.SafeCheckCast -> com.android.tools.r8.internal.jU:
+com.android.tools.r8.ir.code.SafeCheckCast -> com.android.tools.r8.internal.kU:
     int $r8$clinit -> m
     1:1:void <init>(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.graph.DexType):16:16 -> <init>
     1:1:void buildCf(com.android.tools.r8.ir.conversion.CfBuilder):25:25 -> a
     boolean instructionInstanceCanThrow(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod) -> b
     1:1:com.android.tools.r8.code.CheckCast createCheckCast(int):30:30 -> c
     com.android.tools.r8.ir.code.SafeCheckCast asSafeCheckCast() -> y0
-com.android.tools.r8.ir.code.SafeCheckCast$Builder -> com.android.tools.r8.internal.iU:
+com.android.tools.r8.ir.code.SafeCheckCast$Builder -> com.android.tools.r8.internal.jU:
     1:1:void <init>():48:48 -> <init>
     1:1:com.android.tools.r8.ir.code.CheckCast build():52:52 -> b
-com.android.tools.r8.ir.code.Shl -> com.android.tools.r8.internal.JU:
+com.android.tools.r8.ir.code.Shl -> com.android.tools.r8.internal.KU:
     1:1:void <init>(com.android.tools.r8.ir.code.NumericType,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value):17:17 -> <init>
     java.lang.Object accept(com.android.tools.r8.ir.code.InstructionVisitor) -> a
     int foldIntegers(int,int) -> a
@@ -50280,7 +50302,7 @@
     boolean isCommutative() -> p2
     1:1:com.android.tools.r8.cf.code.CfLogicalBinop$Opcode getCfOpcode():98:98 -> t2
     com.android.tools.r8.ir.code.Shl asShl() -> z0
-com.android.tools.r8.ir.code.Shr -> com.android.tools.r8.internal.LU:
+com.android.tools.r8.ir.code.Shr -> com.android.tools.r8.internal.MU:
     1:1:void <init>(com.android.tools.r8.ir.code.NumericType,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value):17:17 -> <init>
     com.android.tools.r8.ir.code.Shr asShr() -> A0
     java.lang.Object accept(com.android.tools.r8.ir.code.InstructionVisitor) -> a
@@ -50301,9 +50323,9 @@
     int opcode() -> l2
     boolean isCommutative() -> p2
     1:1:com.android.tools.r8.cf.code.CfLogicalBinop$Opcode getCfOpcode():98:98 -> t2
-com.android.tools.r8.ir.code.SingleConstant -> com.android.tools.r8.internal.jV:
+com.android.tools.r8.ir.code.SingleConstant -> com.android.tools.r8.internal.kV:
     int decodedValue() -> a
-com.android.tools.r8.ir.code.StackValue -> com.android.tools.r8.internal.nW:
+com.android.tools.r8.ir.code.StackValue -> com.android.tools.r8.internal.oW:
     int height -> r
     com.android.tools.r8.cf.TypeVerificationHelper$TypeInfo typeInfo -> s
     boolean $assertionsDisabled -> t
@@ -50321,7 +50343,7 @@
     62:62:java.lang.String toString():59:59 -> toString
     63:63:java.lang.String toString():59:59 -> toString
     60:60:java.lang.String toString():59:59 -> toString
-com.android.tools.r8.ir.code.StackValues -> com.android.tools.r8.internal.oW:
+com.android.tools.r8.ir.code.StackValues -> com.android.tools.r8.internal.pW:
     com.android.tools.r8.ir.code.StackValue[] stackValues -> r
     boolean $assertionsDisabled -> s
     1:1:void <clinit>():14:14 -> <clinit>
@@ -50332,7 +50354,7 @@
     1:1:com.android.tools.r8.ir.code.StackValue[] getStackValues():25:25 -> h0
     1:10:java.lang.String toString():40:49 -> toString
     1:1:com.android.tools.r8.ir.analysis.type.TypeElement getType():59:59 -> w
-com.android.tools.r8.ir.code.StaticGet -> com.android.tools.r8.internal.DW:
+com.android.tools.r8.ir.code.StaticGet -> com.android.tools.r8.internal.EW:
     int $r8$clinit -> l
     boolean $assertionsDisabled -> k
     1:1:void <clinit>():35:35 -> <clinit>
@@ -50392,13 +50414,13 @@
     int opcode() -> l2
     1:1:java.lang.String toString():182:182 -> toString
     1:1:com.android.tools.r8.ir.code.Value value():72:72 -> value
-com.android.tools.r8.ir.code.StaticGet$Builder -> com.android.tools.r8.internal.CW:
+com.android.tools.r8.ir.code.StaticGet$Builder -> com.android.tools.r8.internal.DW:
     com.android.tools.r8.graph.DexField field -> c
     1:1:void <init>():260:260 -> <init>
     com.android.tools.r8.ir.code.Instruction$BuilderBase self() -> a
     1:1:com.android.tools.r8.ir.code.StaticGet$Builder setField(com.android.tools.r8.graph.DexField):269:269 -> a
     1:1:com.android.tools.r8.ir.code.StaticGet build():275:275 -> b
-com.android.tools.r8.ir.code.StaticPut -> com.android.tools.r8.internal.FW:
+com.android.tools.r8.ir.code.StaticPut -> com.android.tools.r8.internal.GW:
     boolean $assertionsDisabled -> k
     1:1:void <clinit>():33:33 -> <clinit>
     1:1:void <init>(com.android.tools.r8.ir.code.Value,com.android.tools.r8.graph.DexField):36:36 -> <init>
@@ -50447,7 +50469,7 @@
     int opcode() -> l2
     1:1:java.lang.String toString():188:188 -> toString
     1:2:com.android.tools.r8.ir.code.Value value():56:57 -> value
-com.android.tools.r8.ir.code.Store -> com.android.tools.r8.internal.GW:
+com.android.tools.r8.ir.code.Store -> com.android.tools.r8.internal.HW:
     boolean $assertionsDisabled -> i
     1:1:void <clinit>():22:22 -> <clinit>
     1:1:void <init>(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.StackValue):25:25 -> <init>
@@ -50471,7 +50493,7 @@
     int maxOutValueRegister() -> k2
     int opcode() -> l2
     1:1:com.android.tools.r8.ir.code.Value src():39:39 -> o2
-com.android.tools.r8.ir.code.StringSwitch -> com.android.tools.r8.internal.eX:
+com.android.tools.r8.ir.code.StringSwitch -> com.android.tools.r8.internal.fX:
     boolean $assertionsDisabled -> n
     com.android.tools.r8.graph.DexString[] keys -> m
     1:1:void <clinit>():17:17 -> <clinit>
@@ -50496,7 +50518,7 @@
     5:5:com.android.tools.r8.graph.DexString com.android.tools.r8.ir.code.StringSwitch.getKey(int):80:80 -> toString
     5:5:java.lang.String toString():89 -> toString
     6:11:java.lang.String toString():89:94 -> toString
-com.android.tools.r8.ir.code.Sub -> com.android.tools.r8.internal.GX:
+com.android.tools.r8.ir.code.Sub -> com.android.tools.r8.internal.HX:
     boolean $assertionsDisabled -> k
     1:1:void <clinit>():24:24 -> <clinit>
     1:1:void <init>(com.android.tools.r8.ir.code.NumericType,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value):27:27 -> <init>
@@ -50539,7 +50561,7 @@
     7:9:int maxInOutValueRegisterSize():136 -> r2
     10:12:int maxInOutValueRegisterSize():136:138 -> r2
     1:1:com.android.tools.r8.cf.code.CfArithmeticBinop$Opcode getCfOpcode():217:217 -> t2
-com.android.tools.r8.ir.code.Swap -> com.android.tools.r8.internal.PX:
+com.android.tools.r8.ir.code.Swap -> com.android.tools.r8.internal.QX:
     boolean $assertionsDisabled -> i
     1:1:void <clinit>():19:19 -> <clinit>
     1:1:void <init>(com.android.tools.r8.ir.code.StackValue,com.android.tools.r8.ir.code.StackValue,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value):22:22 -> <init>
@@ -50559,7 +50581,7 @@
     int maxInValueRegister() -> j2
     1:1:int maxOutValueRegister():85:85 -> k2
     int opcode() -> l2
-com.android.tools.r8.ir.code.Switch -> com.android.tools.r8.internal.QX:
+com.android.tools.r8.ir.code.Switch -> com.android.tools.r8.internal.RX:
     int fallthroughBlockIndex -> k
     boolean $assertionsDisabled -> l
     int[] targetBlockIndices -> j
@@ -50585,7 +50607,7 @@
     4:4:boolean valid():29 -> s2
     5:5:boolean valid():29:29 -> s2
     1:1:com.android.tools.r8.ir.code.Value value():24:24 -> value
-com.android.tools.r8.ir.code.Throw -> com.android.tools.r8.internal.sY:
+com.android.tools.r8.ir.code.Throw -> com.android.tools.r8.internal.tY:
     boolean $assertionsDisabled -> j
     1:1:void <clinit>():17:17 -> <clinit>
     1:1:void <init>(com.android.tools.r8.ir.code.Value):20:20 -> <init>
@@ -52033,14 +52055,14 @@
     13:18:void processMethod(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer):149:149 -> a
     boolean isProcessedConcurrently(com.android.tools.r8.graph.ProgramMethod) -> b
     1:2:void scheduleMethodForProcessing(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$D8CfInstructionDesugaringEventConsumer):79:80 -> b
-    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isNonLegacySynthetic(com.android.tools.r8.graph.DexProgramClass):230:230 -> b
+    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isNonLegacySynthetic(com.android.tools.r8.graph.DexProgramClass):229:229 -> b
     3:3:void scheduleMethodForProcessing(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$D8CfInstructionDesugaringEventConsumer):80 -> b
     4:4:void scheduleMethodForProcessing(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$D8CfInstructionDesugaringEventConsumer):84:84 -> b
     5:5:java.util.concurrent.Future com.android.tools.r8.utils.ThreadUtils.processAsynchronously(java.util.concurrent.Callable,java.util.concurrent.ExecutorService):36:36 -> b
     5:5:void scheduleMethodForProcessing(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$D8CfInstructionDesugaringEventConsumer):85 -> b
     6:6:void scheduleMethodForProcessing(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$D8CfInstructionDesugaringEventConsumer):84:84 -> b
     1:2:void scheduleDesugaredMethodForProcessing(com.android.tools.r8.graph.ProgramMethod):100:101 -> c
-    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isNonLegacySynthetic(com.android.tools.r8.graph.DexProgramClass):230:230 -> c
+    3:3:boolean com.android.tools.r8.synthesis.SyntheticItems.isNonLegacySynthetic(com.android.tools.r8.graph.DexProgramClass):229:229 -> c
     3:3:void scheduleDesugaredMethodForProcessing(com.android.tools.r8.graph.ProgramMethod):101 -> c
     4:7:void scheduleDesugaredMethodForProcessing(com.android.tools.r8.graph.ProgramMethod):105:108 -> c
     8:8:java.util.concurrent.Future com.android.tools.r8.utils.ThreadUtils.processAsynchronously(java.util.concurrent.Callable,java.util.concurrent.ExecutorService):36:36 -> c
@@ -54082,10 +54104,10 @@
     4196:4196:boolean com.android.tools.r8.ir.optimize.info.CallSiteOptimizationInfo.isConcreteCallSiteOptimizationInfo():0:0 -> a
     4196:4196: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):1227 -> a
     4197:4197: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):1227:1227 -> a
-    4198:4198:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    4198:4198:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     4198:4198: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):1227 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    4199:4199:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    4199:4199:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     4199:4199: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):1227 -> a
     4200:4204: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):1228:1228 -> a
     4210:4228: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):1234:1252 -> a
@@ -54279,7 +54301,7 @@
     1:1:void reportNestDesugarDependencies():345:345 -> e
     2:10:void onMethodPruned(com.android.tools.r8.graph.ProgramMethod):1980:1988 -> e
     1:5:void optimizeSynthesizedMethod(com.android.tools.r8.graph.ProgramMethod):938:942 -> f
-com.android.tools.r8.ir.conversion.LensCodeRewriter -> com.android.tools.r8.internal.tB:
+com.android.tools.r8.ir.conversion.LensCodeRewriter -> com.android.tools.r8.internal.uB:
     com.android.tools.r8.graph.DexItemFactory factory -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.ir.optimize.enums.EnumUnboxer enumUnboxer -> c
@@ -54567,7 +54589,7 @@
     1:1:com.android.tools.r8.ir.code.Instruction lambda$rewritePartialDefault$7(com.android.tools.r8.graph.DexType,com.android.tools.r8.ir.code.Value):670:670 -> c
     2:2:void com.android.tools.r8.ir.code.ConstClass.<init>(com.android.tools.r8.ir.code.Value,com.android.tools.r8.graph.DexType):32:32 -> c
     2:2:com.android.tools.r8.ir.code.Instruction lambda$rewritePartialDefault$7(com.android.tools.r8.graph.DexType,com.android.tools.r8.ir.code.Value):670 -> c
-com.android.tools.r8.ir.conversion.LensCodeRewriter$1 -> com.android.tools.r8.internal.qB:
+com.android.tools.r8.ir.conversion.LensCodeRewriter$1 -> com.android.tools.r8.internal.rB:
     com.android.tools.r8.graph.GraphLens val$codeLens -> e
     com.android.tools.r8.ir.code.InvokeMethod val$invoke -> b
     com.android.tools.r8.ir.conversion.LensCodeRewriter this$0 -> f
@@ -54576,7 +54598,7 @@
     1:1:void <init>(com.android.tools.r8.ir.conversion.LensCodeRewriter,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.GraphLens):400:400 -> <init>
     1:3:com.android.tools.r8.ir.analysis.type.TypeElement getOutType():408:410 -> c
     1:1:com.android.tools.r8.graph.DebugLocalInfo getLocalInfo():403:403 -> k
-com.android.tools.r8.ir.conversion.LensCodeRewriter$GraphLensInterval -> com.android.tools.r8.internal.rB:
+com.android.tools.r8.ir.conversion.LensCodeRewriter$GraphLensInterval -> com.android.tools.r8.internal.sB:
     com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens graphLens -> a
     com.android.tools.r8.graph.DexMethod method -> c
     com.android.tools.r8.graph.GraphLens codeLens -> b
@@ -54584,7 +54606,7 @@
     1:1:com.android.tools.r8.graph.GraphLens getCodeLens():141:141 -> a
     1:1:com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens getGraphLens():137:137 -> b
     1:1:com.android.tools.r8.graph.DexMethod getMethod():145:145 -> c
-com.android.tools.r8.ir.conversion.LensCodeRewriter$InstructionReplacer -> com.android.tools.r8.internal.sB:
+com.android.tools.r8.ir.conversion.LensCodeRewriter$InstructionReplacer -> com.android.tools.r8.internal.tB:
     com.android.tools.r8.ir.code.Instruction current -> b
     java.util.Set affectedPhis -> d
     com.android.tools.r8.ir.conversion.LensCodeRewriter this$0 -> e
@@ -54604,7 +54626,7 @@
     18:18:void replaceInstructionIfTypeChanged(com.android.tools.r8.graph.DexType,java.util.function.BiFunction,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.GraphLens):1289 -> a
     19:21:void replaceInstructionIfTypeChanged(com.android.tools.r8.graph.DexType,java.util.function.BiFunction,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.GraphLens):1289:1291 -> a
     22:22:void replaceInstructionIfTypeChanged(com.android.tools.r8.graph.DexType,java.util.function.BiFunction,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.GraphLens):1287:1287 -> a
-com.android.tools.r8.ir.conversion.LensCodeRewriterUtils -> com.android.tools.r8.internal.uB:
+com.android.tools.r8.ir.conversion.LensCodeRewriterUtils -> com.android.tools.r8.internal.vB:
     java.util.Map protoFixupCache -> d
     boolean $assertionsDisabled -> f
     com.android.tools.r8.graph.DexDefinitionSupplier definitions -> a
@@ -54717,12 +54739,12 @@
     57:60:com.android.tools.r8.graph.DexString com.android.tools.r8.ir.conversion.LensCodeRewriterUtils.computeNewMethodName(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod,boolean):114:117 -> b
     57:60:com.android.tools.r8.graph.DexCallSite rewriteCallSiteInternal(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):92 -> b
     61:65:com.android.tools.r8.graph.DexCallSite rewriteCallSiteInternal(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):93:97 -> b
-com.android.tools.r8.ir.conversion.LibraryDesugaredChecker -> com.android.tools.r8.internal.BB:
+com.android.tools.r8.ir.conversion.LibraryDesugaredChecker -> com.android.tools.r8.internal.CB:
     com.android.tools.r8.graph.DexString jDollarDescriptorPrefix -> b
     com.android.tools.r8.graph.AppView appView -> a
     1:3:void <init>(com.android.tools.r8.graph.AppView):26:28 -> <init>
     1:4:boolean isClassLibraryDesugared(com.android.tools.r8.graph.DexProgramClass):32:35 -> a
-com.android.tools.r8.ir.conversion.LibraryDesugaredChecker$IsLibraryDesugaredTracer -> com.android.tools.r8.internal.AB:
+com.android.tools.r8.ir.conversion.LibraryDesugaredChecker$IsLibraryDesugaredTracer -> com.android.tools.r8.internal.BB:
     com.android.tools.r8.graph.DexString jDollarDescriptorPrefix -> a
     com.android.tools.r8.graph.AppView appView -> b
     com.android.tools.r8.graph.DexProgramClass clazz -> c
@@ -54753,7 +54775,7 @@
     43:44:void com.android.tools.r8.ir.conversion.LibraryDesugaredChecker$IsLibraryDesugaredTracer.registerField(com.android.tools.r8.graph.DexField):85:86 -> a
     43:44:void registerField(com.android.tools.r8.graph.DexEncodedField):97 -> a
     1:1:void run():53:53 -> b
-com.android.tools.r8.ir.conversion.LibraryDesugaredChecker$IsLibraryDesugaredTracer$IsLibraryDesugaredUseRegistry -> com.android.tools.r8.internal.zB:
+com.android.tools.r8.ir.conversion.LibraryDesugaredChecker$IsLibraryDesugaredTracer$IsLibraryDesugaredUseRegistry -> com.android.tools.r8.internal.AB:
     com.android.tools.r8.ir.conversion.LibraryDesugaredChecker$IsLibraryDesugaredTracer this$0 -> f
     1:2:void <init>(com.android.tools.r8.ir.conversion.LibraryDesugaredChecker$IsLibraryDesugaredTracer,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):121:122 -> <init>
     1:1:boolean com.android.tools.r8.ir.conversion.LibraryDesugaredChecker$IsLibraryDesugaredTracer$IsLibraryDesugaredUseRegistry.registerField(com.android.tools.r8.graph.DexField):126:126 -> a
@@ -54781,16 +54803,16 @@
     1:2:boolean registerMethod(com.android.tools.r8.graph.DexMethod):130:131 -> h
     3:3:boolean com.android.tools.r8.com.google.common.collect.Iterables.any(java.lang.Iterable,com.android.tools.r8.com.google.common.base.Predicate):608:608 -> h
     3:3:boolean registerMethod(com.android.tools.r8.graph.DexMethod):131 -> h
-com.android.tools.r8.ir.conversion.MethodConversionOptions -> com.android.tools.r8.internal.GE:
+com.android.tools.r8.ir.conversion.MethodConversionOptions -> com.android.tools.r8.internal.HE:
     1:1:void <init>():7:7 -> <init>
     boolean isPeepholeOptimizationsEnabled() -> a
-com.android.tools.r8.ir.conversion.MethodConversionOptions$DefaultMethodConversionOptions -> com.android.tools.r8.internal.EE:
+com.android.tools.r8.ir.conversion.MethodConversionOptions$DefaultMethodConversionOptions -> com.android.tools.r8.internal.FE:
     com.android.tools.r8.ir.conversion.MethodConversionOptions$DefaultMethodConversionOptions INSTANCE -> a
     1:1:void <clinit>():34:34 -> <clinit>
     1:1:void <init>():37:37 -> <init>
     boolean isPeepholeOptimizationsEnabled() -> a
     1:1:com.android.tools.r8.ir.conversion.MethodConversionOptions$DefaultMethodConversionOptions getInstance():40:40 -> b
-com.android.tools.r8.ir.conversion.MethodConversionOptions$MutableMethodConversionOptions -> com.android.tools.r8.internal.FE:
+com.android.tools.r8.ir.conversion.MethodConversionOptions$MutableMethodConversionOptions -> com.android.tools.r8.internal.GE:
     com.android.tools.r8.ir.conversion.MethodProcessor methodProcessor -> a
     boolean enablePeepholeOptimizations -> b
     boolean $assertionsDisabled -> c
@@ -54799,7 +54821,7 @@
     2:5:void <init>(com.android.tools.r8.ir.conversion.MethodProcessor):14:17 -> <init>
     1:2:boolean isPeepholeOptimizationsEnabled():27:28 -> a
     1:2:void disablePeepholeOptimizations():21:22 -> b
-com.android.tools.r8.ir.conversion.MethodOptimizationFeedback -> com.android.tools.r8.internal.PE:
+com.android.tools.r8.ir.conversion.MethodOptimizationFeedback -> com.android.tools.r8.internal.QE:
     void markProcessed(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.ir.optimize.Inliner$ConstraintWithTarget) -> a
     void methodInitializesClassesOnNormalExit(com.android.tools.r8.graph.DexEncodedMethod,java.util.Set) -> a
     void methodReturnsAbstractValue(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.value.AbstractValue) -> a
@@ -54822,7 +54844,7 @@
     void methodReturnValueOnlyDependsOnArguments(com.android.tools.r8.graph.DexEncodedMethod) -> d
     void classInitializerMayBePostponed(com.android.tools.r8.graph.DexEncodedMethod) -> e
     void markMethodCannotBeKept(com.android.tools.r8.graph.DexEncodedMethod) -> f
-com.android.tools.r8.ir.conversion.MethodProcessor -> com.android.tools.r8.internal.ZE:
+com.android.tools.r8.ir.conversion.MethodProcessor -> com.android.tools.r8.internal.aF:
     1:1:void <init>():10:10 -> <init>
     com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext createMethodProcessingContext(com.android.tools.r8.graph.ProgramMethod) -> a
     com.android.tools.r8.ir.conversion.callgraph.CallSiteInformation getCallSiteInformation() -> a
@@ -54830,14 +54852,14 @@
     boolean isProcessedConcurrently(com.android.tools.r8.graph.ProgramMethod) -> b
     void scheduleDesugaredMethodForProcessing(com.android.tools.r8.graph.ProgramMethod) -> c
     boolean shouldApplyCodeRewritings(com.android.tools.r8.graph.ProgramMethod) -> d
-com.android.tools.r8.ir.conversion.MethodProcessorWithWave -> com.android.tools.r8.internal.aF:
+com.android.tools.r8.ir.conversion.MethodProcessorWithWave -> com.android.tools.r8.internal.bF:
     com.android.tools.r8.utils.collections.ProgramMethodSet waveExtension -> b
     com.android.tools.r8.utils.collections.ProgramMethodSet wave -> a
     1:4:void <init>():10:13 -> <init>
     1:1:com.android.tools.r8.ir.conversion.callgraph.CallSiteInformation getCallSiteInformation():17:17 -> a
     1:1:boolean isProcessedConcurrently(com.android.tools.r8.graph.ProgramMethod):22:22 -> b
     1:1:void scheduleDesugaredMethodForProcessing(com.android.tools.r8.graph.ProgramMethod):27:27 -> c
-com.android.tools.r8.ir.conversion.OneTimeMethodProcessor -> com.android.tools.r8.internal.JK:
+com.android.tools.r8.ir.conversion.OneTimeMethodProcessor -> com.android.tools.r8.internal.KK:
     com.android.tools.r8.contexts.CompilationContext$ProcessorContext processorContext -> c
     1:3:void <init>(com.android.tools.r8.contexts.CompilationContext$ProcessorContext,com.android.tools.r8.utils.collections.ProgramMethodSet):23:25 -> <init>
     1:1:com.android.tools.r8.ir.conversion.OneTimeMethodProcessor$Builder builder(com.android.tools.r8.contexts.CompilationContext$ProcessorContext):29:29 -> a
@@ -54865,16 +54887,16 @@
     23:27:void forEachWaveWithExtension(com.android.tools.r8.ir.conversion.OneTimeMethodProcessor$MethodAction,java.util.concurrent.ExecutorService):82 -> a
     28:28:void lambda$forEachWaveWithExtension$0(com.android.tools.r8.ir.conversion.OneTimeMethodProcessor$MethodAction,com.android.tools.r8.graph.ProgramMethod):80:80 -> a
     boolean shouldApplyCodeRewritings(com.android.tools.r8.graph.ProgramMethod) -> d
-com.android.tools.r8.ir.conversion.OneTimeMethodProcessor$Builder -> com.android.tools.r8.internal.HK:
+com.android.tools.r8.ir.conversion.OneTimeMethodProcessor$Builder -> com.android.tools.r8.internal.IK:
     com.android.tools.r8.utils.collections.ProgramMethodSet methodsToProcess -> a
     com.android.tools.r8.contexts.CompilationContext$ProcessorContext processorContext -> b
     1:1:void <init>(com.android.tools.r8.contexts.CompilationContext$ProcessorContext):91:91 -> <init>
     2:6:void <init>(com.android.tools.r8.contexts.CompilationContext$ProcessorContext):88:92 -> <init>
     1:1:com.android.tools.r8.ir.conversion.OneTimeMethodProcessor$Builder add(com.android.tools.r8.graph.ProgramMethod):96:96 -> a
     2:2:com.android.tools.r8.ir.conversion.OneTimeMethodProcessor build():101:101 -> a
-com.android.tools.r8.ir.conversion.OneTimeMethodProcessor$MethodAction -> com.android.tools.r8.internal.IK:
+com.android.tools.r8.ir.conversion.OneTimeMethodProcessor$MethodAction -> com.android.tools.r8.internal.JK:
     void accept(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext) -> a
-com.android.tools.r8.ir.conversion.PostMethodProcessor -> com.android.tools.r8.internal.qM:
+com.android.tools.r8.ir.conversion.PostMethodProcessor -> com.android.tools.r8.internal.rM:
     java.util.Deque waves -> d
     boolean $assertionsDisabled -> f
     com.android.tools.r8.utils.collections.ProgramMethodSet processed -> e
@@ -54893,7 +54915,7 @@
     31:35:void forEachMethod(com.android.tools.r8.ir.conversion.PrimaryMethodProcessor$MethodAction,com.android.tools.r8.ir.optimize.info.OptimizationFeedbackDelayed,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):186 -> a
     36:38:void forEachMethod(com.android.tools.r8.ir.conversion.PrimaryMethodProcessor$MethodAction,com.android.tools.r8.ir.optimize.info.OptimizationFeedbackDelayed,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):187:189 -> a
     1:2:boolean shouldApplyCodeRewritings(com.android.tools.r8.graph.ProgramMethod):58:59 -> d
-com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder -> com.android.tools.r8.internal.pM:
+com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder -> com.android.tools.r8.internal.qM:
     com.android.tools.r8.utils.collections.LongLivedProgramMethodSetBuilder methodsToReprocessBuilder -> a
     1:3:void <init>(com.android.tools.r8.graph.GraphLens):66:68 -> <init>
     1:1:void add(com.android.tools.r8.graph.ProgramMethod):73:73 -> a
@@ -54917,7 +54939,7 @@
     1:1:void com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder.add(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.GraphLens):77:77 -> c
     1:1:void lambda$addAll$0(com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod):81 -> c
     1:1:void remove(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.GraphLens):99:99 -> d
-com.android.tools.r8.ir.conversion.PrimaryMethodProcessor -> com.android.tools.r8.internal.UM:
+com.android.tools.r8.ir.conversion.PrimaryMethodProcessor -> com.android.tools.r8.internal.VM:
     com.android.tools.r8.ir.conversion.callgraph.CallSiteInformation callSiteInformation -> d
     com.android.tools.r8.contexts.CompilationContext$ProcessorContext processorContext -> f
     com.android.tools.r8.graph.AppView appView -> c
@@ -54941,13 +54963,13 @@
     46:48:void forEachMethod(com.android.tools.r8.ir.conversion.PrimaryMethodProcessor$MethodAction,com.android.tools.r8.ir.conversion.PrimaryMethodProcessor$WaveStartAction,com.android.tools.r8.ir.conversion.PrimaryMethodProcessor$WaveDoneAction,com.android.tools.r8.utils.Timing,java.util.concurrent.ExecutorService):146:148 -> a
     boolean isPrimaryMethodProcessor() -> b
     1:2:boolean shouldApplyCodeRewritings(com.android.tools.r8.graph.ProgramMethod):82:83 -> d
-com.android.tools.r8.ir.conversion.PrimaryMethodProcessor$MethodAction -> com.android.tools.r8.internal.RM:
+com.android.tools.r8.ir.conversion.PrimaryMethodProcessor$MethodAction -> com.android.tools.r8.internal.SM:
     com.android.tools.r8.utils.Timing apply(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext) -> a
-com.android.tools.r8.ir.conversion.PrimaryMethodProcessor$WaveDoneAction -> com.android.tools.r8.internal.SM:
+com.android.tools.r8.ir.conversion.PrimaryMethodProcessor$WaveDoneAction -> com.android.tools.r8.internal.TM:
     void notifyWaveDone(com.android.tools.r8.utils.collections.ProgramMethodSet,java.util.concurrent.ExecutorService) -> a
-com.android.tools.r8.ir.conversion.PrimaryMethodProcessor$WaveStartAction -> com.android.tools.r8.internal.TM:
+com.android.tools.r8.ir.conversion.PrimaryMethodProcessor$WaveStartAction -> com.android.tools.r8.internal.UM:
     void notifyWaveStart(com.android.tools.r8.utils.collections.ProgramMethodSet) -> a
-com.android.tools.r8.ir.conversion.SourceCode -> com.android.tools.r8.internal.IV:
+com.android.tools.r8.ir.conversion.SourceCode -> com.android.tools.r8.internal.JV:
     void buildBlockTransfer(com.android.tools.r8.ir.conversion.IRBuilder,int,int,boolean) -> a
     void buildInstruction(com.android.tools.r8.ir.conversion.IRBuilder,int,boolean) -> a
     void buildPostlude(com.android.tools.r8.ir.conversion.IRBuilder) -> a
@@ -54971,10 +54993,10 @@
     com.android.tools.r8.graph.DebugLocalInfo getIncomingLocal(int) -> e
     int getMoveExceptionRegister(int) -> f
     int instructionOffset(int) -> g
-com.android.tools.r8.ir.conversion.StringSwitchConverter -> com.android.tools.r8.internal.mX:
+com.android.tools.r8.ir.conversion.StringSwitchConverter -> com.android.tools.r8.internal.nX:
     1:7:boolean com.android.tools.r8.ir.conversion.StringSwitchConverter.isDefinedByStringHashCode(com.android.tools.r8.ir.code.Value,com.android.tools.r8.graph.DexItemFactory):187:193 -> a
     1:7:boolean access$700(com.android.tools.r8.ir.code.Value,com.android.tools.r8.graph.DexItemFactory):107 -> a
-com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping -> com.android.tools.r8.internal.gX:
+com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping -> com.android.tools.r8.internal.hX:
     com.android.tools.r8.ir.code.Phi idValue -> b
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceMap mapping -> c
     com.android.tools.r8.ir.code.BasicBlock fallthroughBlock -> a
@@ -54985,7 +55007,7 @@
     2:2:com.android.tools.r8.ir.code.BasicBlock access$002(com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping,com.android.tools.r8.ir.code.BasicBlock):647:647 -> a
     1:1:com.android.tools.r8.ir.code.Phi access$100(com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping):647:647 -> b
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceMap access$300(com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping):647:647 -> c
-com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping$Builder -> com.android.tools.r8.internal.fX:
+com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping$Builder -> com.android.tools.r8.internal.gX:
     1:1:void <init>():649:649 -> <init>
     1:1:com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping build(com.android.tools.r8.ir.code.BasicBlock):676:676 -> a
     2:2:com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping extend(com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping,com.android.tools.r8.ir.code.BasicBlock):688:688 -> a
@@ -55008,7 +55030,7 @@
     66:80:com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping extendWithSwitch(com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping,com.android.tools.r8.ir.code.IntSwitch,com.android.tools.r8.ir.code.BasicBlock):766:780 -> a
     81:81:com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping$Builder.setFallthroughBlock(com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping,com.android.tools.r8.ir.code.BasicBlock):682:682 -> a
     81:81:com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping extendWithSwitch(com.android.tools.r8.ir.conversion.StringSwitchConverter$IdToTargetMapping,com.android.tools.r8.ir.code.IntSwitch,com.android.tools.r8.ir.code.BasicBlock):769 -> a
-com.android.tools.r8.ir.conversion.StringSwitchConverter$StringSwitchBuilderInfo -> com.android.tools.r8.internal.iX:
+com.android.tools.r8.ir.conversion.StringSwitchConverter$StringSwitchBuilderInfo -> com.android.tools.r8.internal.jX:
     java.util.Map mapping -> c
     com.android.tools.r8.ir.code.Value value -> d
     com.android.tools.r8.ir.code.BasicBlock insertionBlock -> b
@@ -55022,7 +55044,7 @@
     31:31:void com.android.tools.r8.ir.code.Instruction.replace(com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.IRCode,java.util.Set):335:335 -> a
     31:31:void com.android.tools.r8.ir.code.Instruction.replace(com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.IRCode):331 -> a
     31:31:void createAndInsertStringSwitch(com.android.tools.r8.ir.code.IRCode):304 -> a
-com.android.tools.r8.ir.conversion.StringSwitchConverter$StringSwitchBuilderInfo$Builder -> com.android.tools.r8.internal.hX:
+com.android.tools.r8.ir.conversion.StringSwitchConverter$StringSwitchBuilderInfo$Builder -> com.android.tools.r8.internal.iX:
     boolean $assertionsDisabled -> b
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> a
     1:1:void <clinit>():198:198 -> <clinit>
@@ -55053,7 +55075,7 @@
     49:49:com.android.tools.r8.ir.conversion.StringSwitchConverter$StringSwitchBuilderInfo build(com.android.tools.r8.ir.code.BasicBlock):238 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     50:59:com.android.tools.r8.ir.conversion.StringSwitchConverter$StringSwitchBuilderInfo build(com.android.tools.r8.ir.code.BasicBlock):238:247 -> a
-com.android.tools.r8.ir.conversion.StringSwitchConverter$StringToIdMapping -> com.android.tools.r8.internal.kX:
+com.android.tools.r8.ir.conversion.StringSwitchConverter$StringToIdMapping -> com.android.tools.r8.internal.lX:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap mapping -> c
     com.android.tools.r8.ir.code.Value stringHashValue -> b
     com.android.tools.r8.ir.code.BasicBlock insertionBlock -> a
@@ -55064,7 +55086,7 @@
     3:7:void <init>(com.android.tools.r8.ir.code.Value,com.android.tools.r8.graph.DexItemFactory):631:635 -> <init>
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap access$200(com.android.tools.r8.ir.conversion.StringSwitchConverter$StringToIdMapping):308:308 -> a
     1:1:com.android.tools.r8.ir.code.Value access$500(com.android.tools.r8.ir.conversion.StringSwitchConverter$StringToIdMapping):308:308 -> b
-com.android.tools.r8.ir.conversion.StringSwitchConverter$StringToIdMapping$Builder -> com.android.tools.r8.internal.jX:
+com.android.tools.r8.ir.conversion.StringSwitchConverter$StringToIdMapping$Builder -> com.android.tools.r8.internal.kX:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     com.android.tools.r8.ir.code.Phi intermediateIdValue -> c
     com.android.tools.r8.ir.code.Value stringValue -> d
@@ -55145,11 +55167,11 @@
     28:30:com.android.tools.r8.ir.code.BasicBlock com.android.tools.r8.ir.code.BasicBlock.startOfGotoChain():1546:1548 -> b
     28:30:com.android.tools.r8.ir.conversion.StringSwitchConverter$StringToIdMapping extendWithPredecessor(com.android.tools.r8.ir.conversion.StringSwitchConverter$StringToIdMapping,com.android.tools.r8.ir.code.BasicBlock):430 -> b
     31:31:com.android.tools.r8.ir.conversion.StringSwitchConverter$StringToIdMapping extendWithPredecessor(com.android.tools.r8.ir.conversion.StringSwitchConverter$StringToIdMapping,com.android.tools.r8.ir.code.BasicBlock):431:431 -> b
-com.android.tools.r8.ir.conversion.StringSwitchConverter$Utils -> com.android.tools.r8.internal.lX:
+com.android.tools.r8.ir.conversion.StringSwitchConverter$Utils -> com.android.tools.r8.internal.mX:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():797:797 -> <clinit>
     1:8:com.android.tools.r8.ir.code.BasicBlock fallthroughBlock(com.android.tools.r8.ir.code.JumpInstruction):805:812 -> a
-com.android.tools.r8.ir.conversion.StringSwitchRemover -> com.android.tools.r8.internal.qX:
+com.android.tools.r8.ir.conversion.StringSwitchRemover -> com.android.tools.r8.internal.rX:
     com.android.tools.r8.ir.analysis.type.ClassTypeElement stringType -> c
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.naming.IdentifierNameStringMarker identifierNameStringMarker -> b
@@ -55164,7 +55186,7 @@
     21:22:void run(com.android.tools.r8.ir.code.IRCode):79 -> b
     23:23:void run(com.android.tools.r8.ir.code.IRCode):84:84 -> b
     24:44:void run(com.android.tools.r8.ir.code.IRCode):80:100 -> b
-com.android.tools.r8.ir.conversion.StringSwitchRemover$SingleEqualityBasedStringSwitchRemover -> com.android.tools.r8.internal.nX:
+com.android.tools.r8.ir.conversion.StringSwitchRemover$SingleEqualityBasedStringSwitchRemover -> com.android.tools.r8.internal.oX:
     com.android.tools.r8.ir.code.BasicBlock fallthroughBlock -> g
     com.android.tools.r8.ir.code.BasicBlock block -> f
     com.android.tools.r8.ir.conversion.StringSwitchRemover this$0 -> i
@@ -55210,7 +55232,7 @@
     71:71:void com.android.tools.r8.ir.code.Instruction.replace(com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.IRCode):331 -> a
     71:71:void removeStringSwitch():255 -> a
     72:81:void removeStringSwitch():256:265 -> a
-com.android.tools.r8.ir.conversion.StringSwitchRemover$SingleHashBasedStringSwitchRemover -> com.android.tools.r8.internal.oX:
+com.android.tools.r8.ir.conversion.StringSwitchRemover$SingleHashBasedStringSwitchRemover -> com.android.tools.r8.internal.pX:
     com.android.tools.r8.ir.code.BasicBlock idSwitchBlock -> h
     com.android.tools.r8.ir.conversion.StringSwitchRemover this$0 -> l
     boolean $assertionsDisabled -> m
@@ -55304,7 +55326,7 @@
     139:147:com.android.tools.r8.ir.code.IntSwitch com.android.tools.r8.ir.conversion.StringSwitchRemover$SingleHashBasedStringSwitchRemover.createIdSwitch(com.android.tools.r8.ir.code.Phi,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap):473:481 -> a
     139:147:void removeStringSwitch():386 -> a
     148:150:void removeStringSwitch():387:389 -> a
-com.android.tools.r8.ir.conversion.StringSwitchRemover$SingleStringSwitchRemover -> com.android.tools.r8.internal.pX:
+com.android.tools.r8.ir.conversion.StringSwitchRemover$SingleStringSwitchRemover -> com.android.tools.r8.internal.qX:
     java.util.ListIterator blockIterator -> b
     java.util.Set newBlocksWithStrings -> c
     com.android.tools.r8.ir.code.Value stringValue -> e
@@ -55313,7 +55335,7 @@
     1:1:void <init>(com.android.tools.r8.ir.code.IRCode,java.util.ListIterator,com.android.tools.r8.ir.code.StringSwitch,java.util.Set,com.android.tools.r8.ir.conversion.StringSwitchRemover$1):153:153 -> <init>
     2:7:void <init>(com.android.tools.r8.ir.code.IRCode,java.util.ListIterator,com.android.tools.r8.ir.code.StringSwitch,java.util.Set):166:171 -> <init>
     void removeStringSwitch() -> a
-com.android.tools.r8.ir.conversion.SwitchPayloadResolver -> com.android.tools.r8.internal.VX:
+com.android.tools.r8.ir.conversion.SwitchPayloadResolver -> com.android.tools.r8.internal.WX:
     java.util.Map unresolvedPayload -> a
     java.util.Map payloadToData -> b
     boolean $assertionsDisabled -> c
@@ -55324,13 +55346,13 @@
     22:22:int[] absoluteTargets(int):68:68 -> a
     23:23:void clear():84:84 -> a
     1:1:int[] getKeys(int):72:72 -> b
-com.android.tools.r8.ir.conversion.SwitchPayloadResolver$PayloadData -> com.android.tools.r8.internal.UX:
+com.android.tools.r8.ir.conversion.SwitchPayloadResolver$PayloadData -> com.android.tools.r8.internal.VX:
     int[] absoluteTargets -> b
     int[] keys -> c
     int userOffset -> a
     1:1:void <init>(int):26:26 -> <init>
     2:7:void <init>(int):22:27 -> <init>
-com.android.tools.r8.ir.conversion.SyntheticStraightLineSourceCode -> com.android.tools.r8.internal.oY:
+com.android.tools.r8.ir.conversion.SyntheticStraightLineSourceCode -> com.android.tools.r8.internal.pY:
     java.util.List instructionBuilders -> a
     com.android.tools.r8.ir.code.Position position -> b
     1:3:void <init>(java.util.List,com.android.tools.r8.ir.code.Position):21:23 -> <init>
@@ -55710,7 +55732,7 @@
     17:17:void processFieldRead(com.android.tools.r8.graph.DexField):78 -> i
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     18:20:void processFieldRead(com.android.tools.r8.graph.DexField):79:81 -> i
-com.android.tools.r8.ir.conversion.callgraph.InvokeExtractor -> com.android.tools.r8.internal.Mu:
+com.android.tools.r8.ir.conversion.callgraph.InvokeExtractor -> com.android.tools.r8.internal.Nu:
     java.util.function.Function nodeFactory -> g
     boolean $assertionsDisabled -> j
     com.android.tools.r8.ir.conversion.callgraph.NodeBase currentMethod -> f
@@ -55755,7 +55777,7 @@
     1:1:void registerInvokeSuper(com.android.tools.r8.graph.DexMethod):178:178 -> f
     void registerStaticFieldWrite(com.android.tools.r8.graph.DexField) -> g
     1:1:void registerInvokeVirtual(com.android.tools.r8.graph.DexMethod):183:183 -> g
-com.android.tools.r8.ir.conversion.callgraph.Node -> com.android.tools.r8.internal.zH:
+com.android.tools.r8.ir.conversion.callgraph.Node -> com.android.tools.r8.internal.AH:
     java.util.Set writers -> g
     java.util.Set callees -> d
     java.util.Set callers -> e
@@ -55806,14 +55828,14 @@
     216:216:java.lang.String toString():184:184 -> toString
     217:217:java.lang.String toString():185:185 -> toString
     187:214:java.lang.String toString():186:213 -> toString
-com.android.tools.r8.ir.conversion.callgraph.NodeBase -> com.android.tools.r8.internal.AH:
+com.android.tools.r8.ir.conversion.callgraph.NodeBase -> com.android.tools.r8.internal.BH:
     com.android.tools.r8.graph.ProgramMethod method -> b
     1:2:void <init>(com.android.tools.r8.graph.ProgramMethod):14:15 -> <init>
     void addCallerConcurrently(com.android.tools.r8.ir.conversion.callgraph.NodeBase,boolean) -> a
     void addReaderConcurrently(com.android.tools.r8.ir.conversion.callgraph.NodeBase) -> a
     1:1:com.android.tools.r8.graph.DexEncodedMethod getMethod():23:23 -> a
     1:1:com.android.tools.r8.graph.ProgramMethod getProgramMethod():27:27 -> b
-com.android.tools.r8.ir.conversion.callgraph.PartialCallGraphBuilder -> com.android.tools.r8.internal.TL:
+com.android.tools.r8.ir.conversion.callgraph.PartialCallGraphBuilder -> com.android.tools.r8.internal.UL:
     boolean $assertionsDisabled -> f
     com.android.tools.r8.utils.collections.ProgramMethodSet seeds -> e
     1:1:void <clinit>():15:15 -> <clinit>
@@ -56350,7 +56372,7 @@
     1:1:com.android.tools.r8.ir.desugar.EmptyCfInstructionDesugaringCollection getInstance():29:29 -> b
 com.android.tools.r8.ir.desugar.FreshLocalProvider -> com.android.tools.r8.internal.sl:
     int getFreshLocal(int) -> a
-com.android.tools.r8.ir.desugar.InvokeToPrivateRewriter -> com.android.tools.r8.internal.av:
+com.android.tools.r8.ir.desugar.InvokeToPrivateRewriter -> com.android.tools.r8.internal.bv:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():28:28 -> <clinit>
     1:1:void <init>():28:28 -> <init>
@@ -56362,7 +56384,7 @@
     18:24:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.ir.desugar.InvokeToPrivateRewriter.privateMethodInvokedOnSelf(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.ProgramMethod):61:67 -> a
     18:24:boolean com.android.tools.r8.ir.desugar.InvokeToPrivateRewriter.isInvokingPrivateMethodOnSelf(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.ProgramMethod):74 -> a
     18:24:boolean needsDesugaring(com.android.tools.r8.cf.code.CfInstruction,com.android.tools.r8.graph.ProgramMethod):57 -> a
-com.android.tools.r8.ir.desugar.LambdaClass -> com.android.tools.r8.internal.RA:
+com.android.tools.r8.ir.desugar.LambdaClass -> com.android.tools.r8.internal.SA:
     com.android.tools.r8.ir.desugar.lambda.LambdaInstructionDesugaring desugaring -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.ir.desugar.LambdaDescriptor descriptor -> d
@@ -56597,7 +56619,7 @@
     335:336:com.android.tools.r8.ir.desugar.LambdaClass$Target createTarget(com.android.tools.r8.graph.ProgramMethod):223 -> c
     337:342:com.android.tools.r8.ir.desugar.LambdaClass$Target com.android.tools.r8.ir.desugar.LambdaClass.createStaticMethodTarget(com.android.tools.r8.graph.ProgramMethod):378:383 -> c
     337:342:com.android.tools.r8.ir.desugar.LambdaClass$Target createTarget(com.android.tools.r8.graph.ProgramMethod):223 -> c
-com.android.tools.r8.ir.desugar.LambdaClass$ClassMethodWithAccessorTarget -> com.android.tools.r8.internal.JA:
+com.android.tools.r8.ir.desugar.LambdaClass$ClassMethodWithAccessorTarget -> com.android.tools.r8.internal.KA:
     com.android.tools.r8.graph.DexMethodHandle$MethodHandleType type -> h
     boolean $assertionsDisabled -> i
     com.android.tools.r8.graph.AppView appView -> f
@@ -56620,9 +56642,9 @@
     87:87:boolean com.android.tools.r8.utils.InternalOptions.isDesugaredLibraryCompilation():447:447 -> a
     87:87:com.android.tools.r8.graph.ProgramMethod ensureAccessibility(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,java.util.function.Consumer):741 -> a
     88:90:com.android.tools.r8.graph.ProgramMethod ensureAccessibility(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,java.util.function.Consumer):741:743 -> a
-com.android.tools.r8.ir.desugar.LambdaClass$D8SpecificTarget -> com.android.tools.r8.internal.KA:
+com.android.tools.r8.ir.desugar.LambdaClass$D8SpecificTarget -> com.android.tools.r8.internal.LA:
     1:1:void <init>(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.ir.code.Invoke$Type,boolean):482:482 -> <init>
-com.android.tools.r8.ir.desugar.LambdaClass$InstanceLambdaImplTarget -> com.android.tools.r8.internal.LA:
+com.android.tools.r8.ir.desugar.LambdaClass$InstanceLambdaImplTarget -> com.android.tools.r8.internal.MA:
     com.android.tools.r8.graph.DexMethod implMethod -> f
     com.android.tools.r8.graph.AppView appView -> g
     boolean $assertionsDisabled -> h
@@ -56649,7 +56671,7 @@
     45:54:com.android.tools.r8.graph.ProgramMethod ensureAccessibility(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,java.util.function.Consumer):674:683 -> a
     55:73:com.android.tools.r8.graph.DexEncodedMethod lambda$ensureAccessibility$0(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,com.android.tools.r8.graph.DexEncodedMethod):646:664 -> a
     74:74:com.android.tools.r8.graph.DexEncodedMethod lambda$ensureAccessibility$0(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,com.android.tools.r8.graph.DexEncodedMethod):663:663 -> a
-com.android.tools.r8.ir.desugar.LambdaClass$InterfaceLambdaImplTarget -> com.android.tools.r8.internal.MA:
+com.android.tools.r8.ir.desugar.LambdaClass$InterfaceLambdaImplTarget -> com.android.tools.r8.internal.NA:
     com.android.tools.r8.graph.AppView appView -> f
     com.android.tools.r8.graph.DexMethod implMethod -> g
     boolean $assertionsDisabled -> h
@@ -56677,18 +56699,18 @@
     60:78:com.android.tools.r8.graph.DexEncodedMethod lambda$ensureAccessibility$0(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,com.android.tools.r8.graph.DexEncodedMethod):555:573 -> a
     79:83:com.android.tools.r8.graph.DexEncodedMethod lambda$ensureAccessibility$0(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,com.android.tools.r8.graph.DexEncodedMethod):572:576 -> a
     84:84:com.android.tools.r8.graph.DexEncodedMethod lambda$ensureAccessibility$0(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,com.android.tools.r8.graph.DexEncodedMethod):575:575 -> a
-com.android.tools.r8.ir.desugar.LambdaClass$InvalidLambdaImplTarget -> com.android.tools.r8.internal.NA:
+com.android.tools.r8.ir.desugar.LambdaClass$InvalidLambdaImplTarget -> com.android.tools.r8.internal.OA:
     com.android.tools.r8.graph.DexType exceptionType -> f
     1:608:void <init>(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.ir.code.Invoke$Type,com.android.tools.r8.graph.DexType,boolean):0:607 -> <init>
     com.android.tools.r8.graph.ProgramMethod ensureAccessibility(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,java.util.function.Consumer) -> a
-com.android.tools.r8.ir.desugar.LambdaClass$NoAccessorMethodTarget -> com.android.tools.r8.internal.OA:
+com.android.tools.r8.ir.desugar.LambdaClass$NoAccessorMethodTarget -> com.android.tools.r8.internal.PA:
     1:1:void <init>(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.ir.code.Invoke$Type,boolean):490:490 -> <init>
     com.android.tools.r8.graph.ProgramMethod ensureAccessibility(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,java.util.function.Consumer) -> a
-com.android.tools.r8.ir.desugar.LambdaClass$StaticLambdaImplTarget -> com.android.tools.r8.internal.PA:
+com.android.tools.r8.ir.desugar.LambdaClass$StaticLambdaImplTarget -> com.android.tools.r8.internal.QA:
     com.android.tools.r8.graph.ProgramMethod target -> f
     1:2:void <init>(com.android.tools.r8.graph.ProgramMethod,boolean):507:508 -> <init>
     1:4:com.android.tools.r8.graph.ProgramMethod ensureAccessibility(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,java.util.function.Consumer):516:519 -> a
-com.android.tools.r8.ir.desugar.LambdaClass$Target -> com.android.tools.r8.internal.QA:
+com.android.tools.r8.ir.desugar.LambdaClass$Target -> com.android.tools.r8.internal.RA:
     com.android.tools.r8.ir.code.Invoke$Type invokeType -> b
     boolean $assertionsDisabled -> e
     com.android.tools.r8.graph.DexMethod callTarget -> a
@@ -56698,10 +56720,10 @@
     1:6:void <init>(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.ir.code.Invoke$Type,boolean):448:453 -> <init>
     com.android.tools.r8.graph.ProgramMethod ensureAccessibility(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,java.util.function.Consumer) -> a
     1:3:void ensureAccessibilityIfNeeded(com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer,java.util.function.Consumer):469:471 -> b
-com.android.tools.r8.ir.desugar.LambdaConstructorSourceCode -> com.android.tools.r8.internal.SA:
+com.android.tools.r8.ir.desugar.LambdaConstructorSourceCode -> com.android.tools.r8.internal.TA:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():22:22 -> <clinit>
-com.android.tools.r8.ir.desugar.LambdaDescriptor -> com.android.tools.r8.internal.TA:
+com.android.tools.r8.ir.desugar.LambdaDescriptor -> com.android.tools.r8.internal.UA:
     com.android.tools.r8.graph.MethodAccessFlags targetAccessFlags -> j
     boolean $assertionsDisabled -> m
     int $r8$clinit -> n
@@ -56815,7 +56837,7 @@
     1969:1972:boolean isSameOrDerived(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType):451:454 -> a
     1:1:com.android.tools.r8.graph.DexMethod getMainMethod():67:67 -> b
     2:3:com.android.tools.r8.ir.desugar.LambdaDescriptor tryInfer(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.AppInfoWithClassHierarchy,com.android.tools.r8.graph.ProgramMethod):257:258 -> b
-com.android.tools.r8.ir.desugar.LambdaMainMethodSourceCode -> com.android.tools.r8.internal.YA:
+com.android.tools.r8.ir.desugar.LambdaMainMethodSourceCode -> com.android.tools.r8.internal.ZA:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():44:44 -> <clinit>
     1:15:boolean isSameOrAdaptableTo(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexItemFactory):97:111 -> a
@@ -57102,12 +57124,12 @@
     1196:1196:void addPrimitiveWideningConversion(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,com.android.tools.r8.com.google.common.collect.ImmutableList$Builder):537:537 -> a
     1197:1197:void addPrimitiveWideningConversion(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,com.android.tools.r8.com.google.common.collect.ImmutableList$Builder):537:537 -> a
     1187:1187:void addPrimitiveWideningConversion(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,com.android.tools.r8.com.google.common.collect.ImmutableList$Builder):537:537 -> a
-com.android.tools.r8.ir.desugar.LambdaMainMethodSourceCode$1 -> com.android.tools.r8.internal.XA:
+com.android.tools.r8.ir.desugar.LambdaMainMethodSourceCode$1 -> com.android.tools.r8.internal.YA:
     int[] $SwitchMap$com$android$tools$r8$ir$code$NumericType -> a
     1:1:void <clinit>():492:492 -> <clinit>
-com.android.tools.r8.ir.desugar.LocalStackAllocator -> com.android.tools.r8.internal.GC:
+com.android.tools.r8.ir.desugar.LocalStackAllocator -> com.android.tools.r8.internal.HC:
     void allocateLocalStack(int) -> a
-com.android.tools.r8.ir.desugar.NonEmptyCfInstructionDesugaringCollection -> com.android.tools.r8.internal.DH:
+com.android.tools.r8.ir.desugar.NonEmptyCfInstructionDesugaringCollection -> com.android.tools.r8.internal.EH:
     java.util.List desugarings -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.ir.desugar.desugaredlibrary.apiconversion.DesugaredLibraryAPIConverter desugaredLibraryAPIConverter -> f
@@ -57196,7 +57218,7 @@
     30:30:boolean needsDesugaring(com.android.tools.r8.cf.code.CfInstruction,com.android.tools.r8.graph.ProgramMethod):347 -> b
     31:31:boolean lambda$needsDesugaring$8(com.android.tools.r8.cf.code.CfInstruction,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.desugar.CfInstructionDesugaring):348:348 -> b
     1:1:boolean lambda$noDesugaringBecauseOfImpreciseDesugaring$5(com.android.tools.r8.ir.desugar.CfInstructionDesugaring):255:255 -> c
-com.android.tools.r8.ir.desugar.ProgramAdditions -> com.android.tools.r8.internal.aN:
+com.android.tools.r8.ir.desugar.ProgramAdditions -> com.android.tools.r8.internal.bN:
     java.util.Map additions -> b
     java.util.Set added -> a
     boolean $assertionsDisabled -> c
@@ -59274,26 +59296,26 @@
     1:1:com.android.tools.r8.ir.desugar.BackportedMethodRewriter$MethodInvokeRewriter rewriteHashCode():16:16 -> a
     2:5:com.android.tools.r8.cf.code.CfInstruction lambda$rewriteHashCode$0(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.DexItemFactory):17:20 -> a
     6:6:com.android.tools.r8.cf.code.CfInstruction lambda$rewriteHashCode$0(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.DexItemFactory):19:19 -> a
-com.android.tools.r8.ir.desugar.backports.LongMethodRewrites -> com.android.tools.r8.internal.jD:
+com.android.tools.r8.ir.desugar.backports.LongMethodRewrites -> com.android.tools.r8.internal.kD:
     1:1:com.android.tools.r8.cf.code.CfInstruction lambda$rewriteCompare$0(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.DexItemFactory):17:17 -> a
     2:2:com.android.tools.r8.ir.desugar.BackportedMethodRewriter$MethodInvokeRewriter rewriteCompare():17:17 -> a
-com.android.tools.r8.ir.desugar.backports.NumericMethodRewrites -> com.android.tools.r8.internal.kI:
+com.android.tools.r8.ir.desugar.backports.NumericMethodRewrites -> com.android.tools.r8.internal.lI:
     1:2:com.android.tools.r8.cf.code.CfInstruction lambda$rewriteToAddInstruction$1(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.DexItemFactory):30:31 -> a
     3:3:com.android.tools.r8.ir.desugar.BackportedMethodRewriter$MethodInvokeRewriter rewriteAsIdentity():36:36 -> a
     1:4:com.android.tools.r8.cf.code.CfInstruction lambda$rewriteToInvokeMath$0(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.DexItemFactory):20:23 -> b
     5:5:com.android.tools.r8.ir.desugar.BackportedMethodRewriter$MethodInvokeRewriter rewriteToAddInstruction():29:29 -> b
     1:1:com.android.tools.r8.ir.desugar.BackportedMethodRewriter$MethodInvokeRewriter rewriteToInvokeMath():19:19 -> c
-com.android.tools.r8.ir.desugar.backports.NumericMethodRewrites$1 -> com.android.tools.r8.internal.jI:
+com.android.tools.r8.ir.desugar.backports.NumericMethodRewrites$1 -> com.android.tools.r8.internal.kI:
     1:1:void <init>():36:36 -> <init>
     1:1:java.util.Collection rewrite(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.ir.desugar.LocalStackAllocator):41:41 -> a
-com.android.tools.r8.ir.desugar.backports.ObjectsMethodRewrites -> com.android.tools.r8.internal.EK:
+com.android.tools.r8.ir.desugar.backports.ObjectsMethodRewrites -> com.android.tools.r8.internal.FK:
     1:4:com.android.tools.r8.cf.code.CfInstruction lambda$rewriteToArraysHashCode$0(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.DexItemFactory):24:27 -> a
     5:5:com.android.tools.r8.ir.desugar.BackportedMethodRewriter$MethodInvokeRewriter rewriteRequireNonNull():33:33 -> a
     1:1:com.android.tools.r8.ir.desugar.BackportedMethodRewriter$MethodInvokeRewriter rewriteToArraysHashCode():23:23 -> b
-com.android.tools.r8.ir.desugar.backports.ObjectsMethodRewrites$1 -> com.android.tools.r8.internal.DK:
+com.android.tools.r8.ir.desugar.backports.ObjectsMethodRewrites$1 -> com.android.tools.r8.internal.EK:
     1:1:void <init>():33:33 -> <init>
     1:2:java.util.Collection rewrite(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.ir.desugar.LocalStackAllocator):39:40 -> a
-com.android.tools.r8.ir.desugar.backports.OptionalMethodRewrites -> com.android.tools.r8.internal.ZK:
+com.android.tools.r8.ir.desugar.backports.OptionalMethodRewrites -> com.android.tools.r8.internal.aL:
     1:1:com.android.tools.r8.ir.desugar.BackportedMethodRewriter$MethodInvokeRewriter createRewriter(java.util.function.Function,java.lang.String):20:20 -> a
     2:5:com.android.tools.r8.cf.code.CfInstruction lambda$createRewriter$0(java.util.function.Function,java.lang.String,com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.DexItemFactory):21:24 -> a
     6:6:com.android.tools.r8.cf.code.CfInstruction lambda$createRewriter$0(java.util.function.Function,java.lang.String,com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.DexItemFactory):23:23 -> a
@@ -59305,7 +59327,7 @@
     2:2:com.android.tools.r8.ir.desugar.BackportedMethodRewriter$MethodInvokeRewriter rewriteLongOrElseGet():41:41 -> c
     1:1:com.android.tools.r8.graph.DexType lambda$rewriteOrElseGet$1(com.android.tools.r8.graph.DexItemFactory):29:29 -> d
     2:2:com.android.tools.r8.ir.desugar.BackportedMethodRewriter$MethodInvokeRewriter rewriteOrElseGet():29:29 -> d
-com.android.tools.r8.ir.desugar.backports.SparseArrayMethodRewrites -> com.android.tools.r8.internal.MV:
+com.android.tools.r8.ir.desugar.backports.SparseArrayMethodRewrites -> com.android.tools.r8.internal.NV:
     1:1:com.android.tools.r8.ir.desugar.BackportedMethodRewriter$MethodInvokeRewriter rewriteSet():17:17 -> a
     2:2:com.android.tools.r8.cf.code.CfInstruction lambda$rewriteSet$0(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.DexItemFactory):18:18 -> a
 com.android.tools.r8.ir.desugar.constantdynamic.ConstantDynamicClass -> com.android.tools.r8.internal.zd:
@@ -59963,9 +59985,9 @@
     236:236:com.android.tools.r8.graph.DexField com.android.tools.r8.ir.desugar.desugaredlibrary.apiconversion.DesugaredLibraryWrapperSynthesizer.getWrapperUniqueField(com.android.tools.r8.graph.DexClass):411:411 -> a
     236:236:void getExistingProgramConversionMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass):464 -> a
     237:240:void getExistingProgramConversionMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass):465:468 -> a
-    241:241:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):585:585 -> a
+    241:241:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):577:577 -> a
     241:241:void getExistingProgramConversionMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass):468 -> a
-    242:242:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):577:577 -> a
+    242:242:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):569:569 -> a
     242:242:void getExistingProgramConversionMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass):468 -> a
     243:243:com.android.tools.r8.graph.DexProgramClass ensureProgramWrapper(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.ir.desugar.desugaredlibrary.apiconversion.DesugaredLibraryWrapperSynthesizerEventConsumer$DesugaredLibraryL8ProgramWrapperSynthesizerEventConsumer):420:420 -> a
     244:244:boolean com.android.tools.r8.utils.InternalOptions.isDesugaredLibraryCompilation():447:447 -> a
@@ -60340,7 +60362,7 @@
     1:1:com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanTopLevelFlags$Builder setJsonSource(java.lang.String):108:108 -> b
     2:2:com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanTopLevelFlags$Builder setSupportAllCallbacksFromLibrary(boolean):114:114 -> b
     1:1:com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanTopLevelFlags$Builder setSynthesizedLibraryClassesPackagePrefix(java.lang.String):98:98 -> c
-com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecification -> com.android.tools.r8.internal.PF:
+com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecification -> com.android.tools.r8.internal.QF:
     com.android.tools.r8.origin.Origin origin -> a
     com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanTopLevelFlags topLevelFlags -> b
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ObjectMap commonFlags -> c
@@ -60355,7 +60377,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ObjectMap getProgramFlags():49:49 -> f
     1:1:java.util.Map getProgramFlagsForTesting():61:61 -> g
     1:1:com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanTopLevelFlags getTopLevelFlags():37:37 -> h
-com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecificationFlagDeduplicator -> com.android.tools.r8.internal.QF:
+com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecificationFlagDeduplicator -> com.android.tools.r8.internal.RF:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():20:20 -> <clinit>
     1:6:void deduplicateFlags(com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecification,com.android.tools.r8.utils.Reporter):26:31 -> a
@@ -60396,7 +60418,7 @@
     1:2:void deduplicateRewriteDifferentPrefix(com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags,com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags,com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags$Builder,com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags$Builder):173:174 -> c
     1:2:void deduplicateRewritePrefix(com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags,com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags,com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags$Builder,com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags$Builder):200:201 -> d
     1:4:void deduplicateWrapperFlags(com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags,com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags,com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags$Builder,com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags$Builder):135:138 -> e
-com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecificationJsonExporter -> com.android.tools.r8.internal.SF:
+com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecificationJsonExporter -> com.android.tools.r8.internal.TF:
     1:1:void <init>():49:49 -> <init>
     1:1:void export(com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecification,com.android.tools.r8.StringConsumer):53:53 -> a
     2:7:void com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecificationJsonExporter.internalExport(com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecification,com.android.tools.r8.StringConsumer):59:64 -> a
@@ -60442,14 +60464,14 @@
     111:111:void lambda$mapToString$4(java.util.Map,com.android.tools.r8.graph.DexItem,com.android.tools.r8.graph.DexItem):167:167 -> a
     112:134:java.lang.String toString(com.android.tools.r8.graph.DexItem):172:194 -> a
     1:2:java.util.Map mapToString(java.util.Map):166:167 -> b
-com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecificationJsonExporter$1 -> com.android.tools.r8.internal.RF:
+com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecificationJsonExporter$1 -> com.android.tools.r8.internal.SF:
     1:1:void <init>(com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecificationJsonExporter):80:80 -> <init>
-com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecificationParser -> com.android.tools.r8.internal.TF:
+com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecificationParser -> com.android.tools.r8.internal.UF:
     1:1:void <init>(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.utils.Reporter):20:20 -> <init>
     void lambda$parseMultiLevelConfiguration$0(com.android.tools.r8.ir.desugar.desugaredlibrary.TopLevelFlagsBuilder) -> b
     1:10:com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.MultiAPILevelHumanDesugaredLibrarySpecification parseMultiLevelConfiguration(com.android.tools.r8.StringResource):26:35 -> b
     11:21:com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ObjectMap parseAllFlags(java.lang.String):39:49 -> b
-com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyDesugaredLibrarySpecification -> com.android.tools.r8.internal.kB:
+com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyDesugaredLibrarySpecification -> com.android.tools.r8.internal.lB:
     com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyRewritingFlags rewritingFlags -> c
     boolean libraryCompilation -> a
     com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyTopLevelFlags topLevelFlags -> b
@@ -60465,7 +60487,7 @@
     1:1:com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyRewritingFlags getRewritingFlags():55:55 -> g
     1:1:com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyTopLevelFlags getTopLevelFlags():51:51 -> h
     1:1:boolean isEmpty():42:42 -> isEmpty
-com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyDesugaredLibrarySpecificationParser -> com.android.tools.r8.internal.lB:
+com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyDesugaredLibrarySpecificationParser -> com.android.tools.r8.internal.mB:
     com.android.tools.r8.com.google.gson.JsonObject jsonConfig -> f
     com.android.tools.r8.utils.SemanticVersion MIN_SUPPORTED_VERSION -> g
     com.android.tools.r8.origin.Origin origin -> e
@@ -60520,7 +60542,7 @@
     4:8:java.lang.String parseJson(com.android.tools.r8.StringResource):138:142 -> b
     1:2:com.android.tools.r8.origin.Origin getOrigin():88:89 -> c
     1:1:com.android.tools.r8.utils.Reporter reporter():80:80 -> d
-com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyRewritingFlags -> com.android.tools.r8.internal.mB:
+com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyRewritingFlags -> com.android.tools.r8.internal.nB:
     java.util.Map rewritePrefix -> a
     java.util.Set dontRetargetLibMember -> g
     java.util.Map emulateLibraryInterface -> b
@@ -60543,7 +60565,7 @@
     1:1:java.util.Map getRewritePrefix():91:91 -> g
     1:1:java.util.Set getWrapperConversions():119:119 -> h
     1:3:boolean isEmpty():123:125 -> i
-com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyRewritingFlags$Builder -> com.android.tools.r8.internal.mB$a:
+com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyRewritingFlags$Builder -> com.android.tools.r8.internal.nB$a:
     java.util.Map rewritePrefix -> d
     java.util.Set dontRetargetLibMember -> j
     com.android.tools.r8.origin.Origin origin -> c
@@ -60607,7 +60629,7 @@
     14:14:com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyRewritingFlags$Builder putRetargetCoreLibMember(java.lang.String,java.lang.String):240 -> d
     15:15:com.android.tools.r8.graph.DexType stringClassToDexType(java.lang.String):290:290 -> d
     1:1:com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyRewritingFlags$Builder putRewritePrefix(java.lang.String,java.lang.String):202:202 -> e
-com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyTopLevelFlags -> com.android.tools.r8.internal.pB:
+com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyTopLevelFlags -> com.android.tools.r8.internal.qB:
     java.util.List extraKeepRules -> f
     boolean supportAllCallbacksFromLibrary -> e
     java.lang.String identifier -> c
@@ -60622,7 +60644,7 @@
     1:1:java.lang.String getSynthesizedLibraryClassesPackagePrefix():75:75 -> e
     1:1:boolean supportAllCallbacksFromLibrary():87:87 -> f
     1:7:com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyTopLevelFlags testing():57:63 -> g
-com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyTopLevelFlags$Builder -> com.android.tools.r8.internal.oB:
+com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyTopLevelFlags$Builder -> com.android.tools.r8.internal.pB:
     java.util.List extraKeepRules -> f
     boolean supportAllCallbacksFromLibrary -> e
     java.lang.String identifier -> c
@@ -60640,7 +60662,7 @@
     1:1:com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyTopLevelFlags$Builder setJsonSource(java.lang.String):122:122 -> b
     2:2:com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyTopLevelFlags$Builder setSupportAllCallbacksFromLibrary(boolean):128:128 -> b
     1:1:com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyTopLevelFlags$Builder setSynthesizedLibraryClassesPackagePrefix(java.lang.String):112:112 -> c
-com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.MultiAPILevelLegacyDesugaredLibrarySpecification -> com.android.tools.r8.internal.UF:
+com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.MultiAPILevelLegacyDesugaredLibrarySpecification -> com.android.tools.r8.internal.VF:
     com.android.tools.r8.origin.Origin origin -> a
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ObjectMap commonFlags -> c
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ObjectMap libraryFlags -> d
@@ -60652,7 +60674,7 @@
     1:1:com.android.tools.r8.origin.Origin getOrigin():32:32 -> c
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ObjectMap getProgramFlags():48:48 -> d
     1:1:com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.LegacyTopLevelFlags getTopLevelFlags():36:36 -> e
-com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.MultiAPILevelLegacyDesugaredLibrarySpecificationParser -> com.android.tools.r8.internal.VF:
+com.android.tools.r8.ir.desugar.desugaredlibrary.legacyspecification.MultiAPILevelLegacyDesugaredLibrarySpecificationParser -> com.android.tools.r8.internal.WF:
     1:1:void <init>(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.utils.Reporter):20:20 -> <init>
     1:13:com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ObjectMap parseAllFlags(java.lang.String):39:51 -> a
     void lambda$parseMultiLevelConfiguration$0(com.android.tools.r8.ir.desugar.desugaredlibrary.TopLevelFlagsBuilder) -> c
@@ -60690,7 +60712,7 @@
     1:3:void <init>(com.android.tools.r8.graph.DexType,java.util.Map):16:18 -> <init>
     1:1:java.util.Map getEmulatedMethods():26:26 -> a
     1:1:com.android.tools.r8.graph.DexType getRewrittenType():22:22 -> b
-com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineDesugaredLibrarySpecification -> com.android.tools.r8.internal.qD:
+com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineDesugaredLibrarySpecification -> com.android.tools.r8.internal.rD:
     com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineRewritingFlags rewritingFlags -> c
     com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineTopLevelFlags topLevelFlags -> b
     boolean libraryCompilation -> a
@@ -60743,10 +60765,10 @@
     1:1:boolean hasRetargeting():144:144 -> r
     1:1:boolean isLibraryCompilation():51:51 -> s
     1:1:boolean supportAllCallbacksFromLibrary():71:71 -> t
-com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineDesugaredLibrarySpecification$1 -> com.android.tools.r8.internal.pD:
+com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineDesugaredLibrarySpecification$1 -> com.android.tools.r8.internal.qD:
     1:1:void <init>(boolean,com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineTopLevelFlags,com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineRewritingFlags):25:25 -> <init>
     boolean isSupported(com.android.tools.r8.graph.DexReference) -> a
-com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineRewritingFlags -> com.android.tools.r8.internal.sD:
+com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineRewritingFlags -> com.android.tools.r8.internal.tD:
     java.util.Map rewriteType -> a
     java.util.Map rewriteDerivedTypeOnly -> b
     java.util.Map staticRetarget -> c
@@ -60785,7 +60807,7 @@
     1:1:java.util.Map getWrappers():122:122 -> m
     1:1:boolean hasEmulatedInterfaces():161:161 -> n
     1:3:boolean hasRetargeting():150:152 -> o
-com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineRewritingFlags$Builder -> com.android.tools.r8.internal.rD:
+com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineRewritingFlags$Builder -> com.android.tools.r8.internal.sD:
     boolean $assertionsDisabled -> m
     com.android.tools.r8.com.google.common.collect.ImmutableSet$Builder dontRetarget -> j
     com.android.tools.r8.com.google.common.collect.ImmutableMap$Builder amendLibraryMethod -> l
@@ -60815,7 +60837,7 @@
     3:3:com.android.tools.r8.graph.DexType getRewrittenType(com.android.tools.r8.graph.DexType):249:249 -> b
     1:5:void rewriteType(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType):197:201 -> c
     6:6:void putStaticRetarget(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):209:209 -> c
-com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineTopLevelFlags -> com.android.tools.r8.internal.tD:
+com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineTopLevelFlags -> com.android.tools.r8.internal.uD:
     java.lang.String identifier -> c
     java.lang.String synthesizedLibraryClassesPackagePrefix -> b
     com.android.tools.r8.utils.AndroidApiLevel requiredCompilationAPILevel -> a
@@ -61456,7 +61478,7 @@
     63:65:java.util.List com.android.tools.r8.ir.desugar.desugaredlibrary.specificationconversion.HumanToMachineWrapperConverter.allImplementedMethods(com.android.tools.r8.graph.DexClass,java.util.Set):93:95 -> a
     63:65:void lambda$convertWrappers$0(com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineRewritingFlags$Builder,com.android.tools.r8.graph.DexType,java.util.Set):49 -> a
     66:68:void lambda$convertWrappers$0(com.android.tools.r8.ir.desugar.desugaredlibrary.machinespecification.MachineRewritingFlags$Builder,com.android.tools.r8.graph.DexType,java.util.Set):50:52 -> a
-com.android.tools.r8.ir.desugar.desugaredlibrary.specificationconversion.LegacyToHumanSpecificationConverter -> com.android.tools.r8.internal.nB:
+com.android.tools.r8.ir.desugar.desugaredlibrary.specificationconversion.LegacyToHumanSpecificationConverter -> com.android.tools.r8.internal.oB:
     com.android.tools.r8.utils.Timing timing -> a
     com.android.tools.r8.utils.AndroidApiLevel LEGACY_HACK_LEVEL -> b
     boolean $assertionsDisabled -> c
@@ -61528,7 +61550,7 @@
     241:241:void lambda$rewritePrefix$4(com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags$Builder,java.lang.String,java.lang.String):234:234 -> b
     238:238:void lambda$rewritePrefix$4(com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags$Builder,java.lang.String,java.lang.String):234:234 -> b
     1:17:void rewritePrefix(com.android.tools.r8.ir.desugar.desugaredlibrary.humanspecification.HumanRewritingFlags$Builder,java.lang.String,java.lang.String):222:238 -> c
-com.android.tools.r8.ir.desugar.desugaredlibrary.specificationconversion.LibraryValidator -> com.android.tools.r8.internal.NB:
+com.android.tools.r8.ir.desugar.desugaredlibrary.specificationconversion.LibraryValidator -> com.android.tools.r8.internal.OB:
     1:12:void validate(com.android.tools.r8.graph.DexApplication,boolean,com.android.tools.r8.utils.AndroidApiLevel):25:36 -> a
     13:13:void validate(com.android.tools.r8.graph.DexApplication,boolean,com.android.tools.r8.utils.AndroidApiLevel):30:30 -> a
 com.android.tools.r8.ir.desugar.icce.AlwaysThrowingInstructionDesugaring -> com.android.tools.r8.internal.I1:
@@ -61555,7 +61577,7 @@
     55:87:java.util.Collection getThrowInstructions(com.android.tools.r8.graph.AppView,com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.MethodResolutionResult,com.android.tools.r8.ir.desugar.LocalStackAllocator,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):142:174 -> a
     88:110:java.util.Collection getThrowInstructions(com.android.tools.r8.graph.AppView,com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.MethodResolutionResult,com.android.tools.r8.ir.desugar.LocalStackAllocator,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):170:192 -> a
     111:118:java.util.Collection getThrowInstructions(com.android.tools.r8.graph.AppView,com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.graph.MethodResolutionResult,com.android.tools.r8.ir.desugar.LocalStackAllocator,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):189:196 -> a
-com.android.tools.r8.ir.desugar.invokespecial.InvokeSpecialBridgeInfo -> com.android.tools.r8.internal.Vu:
+com.android.tools.r8.ir.desugar.invokespecial.InvokeSpecialBridgeInfo -> com.android.tools.r8.internal.Wu:
     com.android.tools.r8.graph.CfCode virtualMethodCode -> d
     com.android.tools.r8.graph.ProgramMethod newDirectMethod -> b
     com.android.tools.r8.graph.ProgramMethod virtualMethod -> c
@@ -61575,7 +61597,7 @@
     4:4:int compareTo(java.lang.Object):10 -> compareTo
     5:5:int com.android.tools.r8.ir.desugar.invokespecial.InvokeSpecialBridgeInfo.compareTo(com.android.tools.r8.ir.desugar.invokespecial.InvokeSpecialBridgeInfo):37:37 -> compareTo
     5:5:int compareTo(java.lang.Object):10 -> compareTo
-com.android.tools.r8.ir.desugar.invokespecial.InvokeSpecialToSelfDesugaring -> com.android.tools.r8.internal.Wu:
+com.android.tools.r8.ir.desugar.invokespecial.InvokeSpecialToSelfDesugaring -> com.android.tools.r8.internal.Xu:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> a
     1:2:void <init>(com.android.tools.r8.graph.AppView):35:36 -> <init>
     1:2:boolean needsDesugaring(com.android.tools.r8.cf.code.CfInstruction,com.android.tools.r8.graph.ProgramMethod):41:42 -> a
@@ -62138,7 +62160,7 @@
     67:67:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.ir.desugar.itf.EmulatedInterfaceApplicationRewriter.rewriteEmulatedInterface(com.android.tools.r8.graph.DexProgramClass):90:90 -> a
     67:67:void rewriteApplication(com.android.tools.r8.graph.DexApplication$Builder):46 -> a
     68:73:void rewriteApplication(com.android.tools.r8.graph.DexApplication$Builder):46:51 -> a
-com.android.tools.r8.ir.desugar.itf.InterfaceDesugaringForTesting -> com.android.tools.r8.internal.Tt:
+com.android.tools.r8.ir.desugar.itf.InterfaceDesugaringForTesting -> com.android.tools.r8.internal.Ut:
     1:1:java.lang.String getCompanionClassNameSuffix():16:16 -> a
     2:2:java.lang.String getCompanionClassDescriptor(java.lang.String):28:28 -> a
     3:3:java.lang.String com.android.tools.r8.ir.desugar.itf.InterfaceDesugaringSyntheticHelper.getCompanionClassDescriptor(java.lang.String):135:135 -> a
@@ -62146,7 +62168,7 @@
     1:1:java.lang.String getDefaultMethodPrefix():20:20 -> b
     1:1:java.lang.String getEmulateLibraryClassNameSuffix():12:12 -> c
     1:1:java.lang.String getPrivateMethodPrefix():24:24 -> d
-com.android.tools.r8.ir.desugar.itf.InterfaceDesugaringSyntheticHelper -> com.android.tools.r8.internal.Ut:
+com.android.tools.r8.ir.desugar.itf.InterfaceDesugaringSyntheticHelper -> com.android.tools.r8.internal.Vt:
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.cf.CfVersion MAX_INTERFACE_DESUGARED_CF_VERSION -> c
     java.util.function.Predicate shouldIgnoreFromReportsPredicate -> b
@@ -62316,10 +62338,10 @@
     6:6:com.android.tools.r8.graph.Code lambda$ensurePrivateAsMethodOfProgramCompanionClassStub$7(com.android.tools.r8.graph.DexMethod):372:372 -> d
     1:1:com.android.tools.r8.graph.Code lambda$ensureStaticAsMethodOfProgramCompanionClassStub$14(com.android.tools.r8.graph.DexMethod):457:457 -> e
     2:2:boolean shouldIgnoreFromReports(com.android.tools.r8.graph.DexType):590:590 -> e
-com.android.tools.r8.ir.desugar.itf.InterfaceMethodDesugaringBaseEventConsumer -> com.android.tools.r8.internal.Wt:
+com.android.tools.r8.ir.desugar.itf.InterfaceMethodDesugaringBaseEventConsumer -> com.android.tools.r8.internal.Xt:
     void acceptCompanionMethod(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod) -> a
     void acceptCompanionClassClinit(com.android.tools.r8.graph.ProgramMethod) -> b
-com.android.tools.r8.ir.desugar.itf.InterfaceMethodProcessorFacade -> com.android.tools.r8.internal.Xt:
+com.android.tools.r8.ir.desugar.itf.InterfaceMethodProcessorFacade -> com.android.tools.r8.internal.Yt:
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.ir.desugar.itf.ClassProcessor classProcessor -> d
     com.android.tools.r8.ir.desugar.itf.InterfaceProcessor interfaceProcessor -> c
@@ -62332,7 +62354,7 @@
     7:7:void postProcessingDesugaring(java.util.Collection,com.android.tools.r8.ir.desugar.CfPostProcessingDesugaringEventConsumer,java.util.concurrent.ExecutorService):64:64 -> a
     1:3:void processClassesConcurrently(java.util.Collection,com.android.tools.r8.ir.desugar.itf.InterfaceProcessingDesugaringEventConsumer,java.util.concurrent.ExecutorService):50:50 -> b
     7:8:void processClassesConcurrently(java.util.Collection,com.android.tools.r8.ir.desugar.itf.InterfaceProcessingDesugaringEventConsumer,java.util.concurrent.ExecutorService):54:55 -> b
-com.android.tools.r8.ir.desugar.itf.InterfaceMethodRewriter -> com.android.tools.r8.internal.Zt:
+com.android.tools.r8.ir.desugar.itf.InterfaceMethodRewriter -> com.android.tools.r8.internal.au:
     com.android.tools.r8.ir.desugar.itf.InterfaceDesugaringSyntheticHelper helper -> d
     com.android.tools.r8.graph.DexItemFactory factory -> c
     java.util.Set precedingDesugarings -> h
@@ -62643,12 +62665,12 @@
     9:9: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 -> d
     9:9:void leavingStaticInvokeToInterface(com.android.tools.r8.graph.ProgramMethod):598 -> d
     10:13:void leavingStaticInvokeToInterface(com.android.tools.r8.graph.ProgramMethod):597:600 -> d
-com.android.tools.r8.ir.desugar.itf.InterfaceMethodRewriter$Flavor -> com.android.tools.r8.internal.Yt:
+com.android.tools.r8.ir.desugar.itf.InterfaceMethodRewriter$Flavor -> com.android.tools.r8.internal.Zt:
     com.android.tools.r8.ir.desugar.itf.InterfaceMethodRewriter$Flavor ExcludeDexResources -> c
     com.android.tools.r8.ir.desugar.itf.InterfaceMethodRewriter$Flavor IncludeAllResources -> b
     1:3:void <clinit>():106:108 -> <clinit>
     1:1:void <init>(java.lang.String,int):104:104 -> <init>
-com.android.tools.r8.ir.desugar.itf.InterfaceMethodRewriterFixup -> com.android.tools.r8.internal.au:
+com.android.tools.r8.ir.desugar.itf.InterfaceMethodRewriterFixup -> com.android.tools.r8.internal.bu:
     com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$InterfaceProcessorNestedGraphLens graphLens -> b
     com.android.tools.r8.graph.AppView appView -> a
     1:3:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$InterfaceProcessorNestedGraphLens):17:19 -> <init>
@@ -62666,7 +62688,7 @@
     20:20:com.android.tools.r8.graph.EnclosingMethodAttribute com.android.tools.r8.ir.desugar.itf.InterfaceMethodRewriterFixup.fixupEnclosingMethodAttribute(com.android.tools.r8.graph.EnclosingMethodAttribute):44:44 -> a
     20:20:void run():33 -> a
     21:21:void run():32:32 -> a
-com.android.tools.r8.ir.desugar.itf.InterfaceProcessor -> com.android.tools.r8.internal.eu:
+com.android.tools.r8.ir.desugar.itf.InterfaceProcessor -> com.android.tools.r8.internal.fu:
     com.android.tools.r8.ir.desugar.itf.InterfaceDesugaringSyntheticHelper helper -> b
     java.util.Map postProcessingInterfaceInfos -> c
     com.android.tools.r8.graph.AppView appView -> a
@@ -62768,7 +62790,7 @@
     2:2:com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$InterfaceProcessorNestedGraphLens$Builder com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$InterfaceProcessorNestedGraphLens.builder():429:429 -> c
     2:2:com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$InterfaceProcessorNestedGraphLens postProcessInterfaces():260 -> c
     3:29:com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$InterfaceProcessorNestedGraphLens postProcessInterfaces():261:287 -> c
-com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$InterfaceProcessorNestedGraphLens -> com.android.tools.r8.internal.cu:
+com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$InterfaceProcessorNestedGraphLens -> com.android.tools.r8.internal.du:
     int $r8$clinit -> o
     com.android.tools.r8.utils.collections.BidirectionalManyToManyRepresentativeMap extraNewMethodSignatures -> n
     1:2:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.collections.BidirectionalManyToOneRepresentativeMap,com.android.tools.r8.utils.collections.BidirectionalManyToOneRepresentativeMap,java.util.Map,com.android.tools.r8.utils.collections.BidirectionalOneToOneMap):402:403 -> <init>
@@ -62791,12 +62813,12 @@
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     5:5:com.android.tools.r8.graph.DexMethod getNextMethodSignature(com.android.tools.r8.graph.DexMethod):424:424 -> f
     1:1:com.android.tools.r8.utils.collections.BidirectionalManyToManyRepresentativeMap getExtraNewMethodSignatures():408:408 -> n
-com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$InterfaceProcessorNestedGraphLens$Builder -> com.android.tools.r8.internal.bu:
+com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$InterfaceProcessorNestedGraphLens$Builder -> com.android.tools.r8.internal.cu:
     com.android.tools.r8.utils.collections.MutableBidirectionalOneToOneMap extraNewMethodSignatures -> d
     1:3:void <init>():432:434 -> <init>
     1:4:com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$InterfaceProcessorNestedGraphLens build(com.android.tools.r8.graph.AppView):443:446 -> a
     1:1:void recordCodeMovedToCompanionClass(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):438:438 -> b
-com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$PostProcessingInterfaceInfo -> com.android.tools.r8.internal.du:
+com.android.tools.r8.ir.desugar.itf.InterfaceProcessor$PostProcessingInterfaceInfo -> com.android.tools.r8.internal.eu:
     java.util.Map defaultMethodsToImplementation -> a
     java.util.Map methodsToMove -> b
     boolean hasNonClinitDirectMethods -> c
@@ -62813,7 +62835,7 @@
     1:1:boolean hasNonClinitDirectMethods():372:372 -> f
     1:1:void setHasBridgesToRemove():384:384 -> g
     1:1:void setHasNonClinitDirectMethods():376:376 -> h
-com.android.tools.r8.ir.desugar.itf.ProgramEmulatedInterfaceSynthesizer -> com.android.tools.r8.internal.hN:
+com.android.tools.r8.ir.desugar.itf.ProgramEmulatedInterfaceSynthesizer -> com.android.tools.r8.internal.iN:
     com.android.tools.r8.ir.desugar.itf.InterfaceDesugaringSyntheticHelper helper -> b
     com.android.tools.r8.graph.AppView appView -> a
     boolean $assertionsDisabled -> c
@@ -62859,11 +62881,11 @@
     void lambda$emptyForcefullyMovedLambdaMethodConsumer$0(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod) -> a
     1:1:com.android.tools.r8.ir.desugar.lambda.ForcefullyMovedLambdaMethodConsumer emptyForcefullyMovedLambdaMethodConsumer():14:14 -> a
     void acceptForcefullyMovedLambdaMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod) -> b
-com.android.tools.r8.ir.desugar.lambda.LambdaDeserializationMethodRemover -> com.android.tools.r8.internal.UA:
+com.android.tools.r8.ir.desugar.lambda.LambdaDeserializationMethodRemover -> com.android.tools.r8.internal.VA:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():13:13 -> <clinit>
     1:4:void run(com.android.tools.r8.graph.AppView,java.util.Collection):24:27 -> a
-com.android.tools.r8.ir.desugar.lambda.LambdaInstructionDesugaring -> com.android.tools.r8.internal.WA:
+com.android.tools.r8.ir.desugar.lambda.LambdaInstructionDesugaring -> com.android.tools.r8.internal.XA:
     com.android.tools.r8.graph.AppView appView -> a
     java.util.Set directTargetedLambdaImplementationMethods -> b
     1:1:void <init>(com.android.tools.r8.graph.AppView):52:52 -> <init>
@@ -62897,7 +62919,7 @@
     73:74:boolean needsDesugaring(com.android.tools.r8.cf.code.CfInstruction,com.android.tools.r8.graph.ProgramMethod):176 -> a
     75:75:boolean com.android.tools.r8.ir.desugar.lambda.LambdaInstructionDesugaring.isLambdaInvoke(com.android.tools.r8.cf.code.CfInstruction,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.AppView):182:182 -> a
     75:75:boolean needsDesugaring(com.android.tools.r8.cf.code.CfInstruction,com.android.tools.r8.graph.ProgramMethod):176 -> a
-com.android.tools.r8.ir.desugar.lambda.LambdaInstructionDesugaring$DesugarInvoke -> com.android.tools.r8.internal.VA:
+com.android.tools.r8.ir.desugar.lambda.LambdaInstructionDesugaring$DesugarInvoke -> com.android.tools.r8.internal.WA:
     java.util.Collection desugarInvoke(com.android.tools.r8.cf.code.CfInvoke,com.android.tools.r8.ir.desugar.FreshLocalProvider,com.android.tools.r8.ir.desugar.LocalStackAllocator) -> a
 com.android.tools.r8.ir.desugar.nest.AccessBridgeFactory -> com.android.tools.r8.internal.v1:
     boolean $assertionsDisabled -> a
@@ -63029,7 +63051,7 @@
     6:6:com.android.tools.r8.graph.DexClass com.android.tools.r8.graph.DexDefinitionSupplier.definitionForHolder(com.android.tools.r8.graph.DexMember):113:113 -> h
     6:6:void registerInvoke(com.android.tools.r8.graph.DexMethod):135 -> h
     7:9:void registerInvoke(com.android.tools.r8.graph.DexMethod):135:137 -> h
-com.android.tools.r8.ir.desugar.nest.Nest -> com.android.tools.r8.internal.FG:
+com.android.tools.r8.ir.desugar.nest.Nest -> com.android.tools.r8.internal.GG:
     com.android.tools.r8.graph.DexClass hostClass -> a
     java.util.List members -> b
     java.util.List missingMembers -> c
@@ -63043,7 +63065,7 @@
     1:1:java.util.List getMembers():69:69 -> c
     1:1:java.util.List getMissingMembers():73:73 -> d
     1:1:boolean hasMissingMembers():81:81 -> e
-com.android.tools.r8.ir.desugar.nest.NestBasedAccessDesugaring -> com.android.tools.r8.internal.HG:
+com.android.tools.r8.ir.desugar.nest.NestBasedAccessDesugaring -> com.android.tools.r8.internal.IG:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     java.util.Map syntheticNestConstructorTypes -> c
     com.android.tools.r8.graph.AppView appView -> a
@@ -63258,7 +63280,7 @@
     320:320:com.android.tools.r8.graph.DexType lambda$getMethodBridgeReference$7(com.android.tools.r8.graph.DexClassAndMethod,com.android.tools.r8.graph.DexType):453 -> a
     321:326:com.android.tools.r8.graph.DexType lambda$getMethodBridgeReference$7(com.android.tools.r8.graph.DexClassAndMethod,com.android.tools.r8.graph.DexType):453:458 -> a
     327:333:com.android.tools.r8.graph.DexType lambda$getMethodBridgeReference$7(com.android.tools.r8.graph.DexClassAndMethod,com.android.tools.r8.graph.DexType):456:462 -> a
-com.android.tools.r8.ir.desugar.nest.NestBasedAccessDesugaring$BridgeAndTarget -> com.android.tools.r8.internal.GG:
+com.android.tools.r8.ir.desugar.nest.NestBasedAccessDesugaring$BridgeAndTarget -> com.android.tools.r8.internal.HG:
     com.android.tools.r8.graph.DexClassAndMember target -> b
     com.android.tools.r8.graph.DexMethod bridge -> a
     boolean $assertionsDisabled -> c
@@ -63267,11 +63289,11 @@
     1:1:com.android.tools.r8.graph.DexMethod getBridge():115:115 -> a
     1:1:com.android.tools.r8.graph.DexClassAndMember getTarget():119:119 -> b
     1:1:boolean shouldAddBridge():123:123 -> c
-com.android.tools.r8.ir.desugar.nest.NestBasedAccessDesugaringEventConsumer -> com.android.tools.r8.internal.IG:
+com.android.tools.r8.ir.desugar.nest.NestBasedAccessDesugaringEventConsumer -> com.android.tools.r8.internal.JG:
     void acceptNestFieldGetBridge(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramMethod) -> c
     void acceptNestMethodBridge(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod) -> d
     void acceptNestFieldPutBridge(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramMethod) -> e
-com.android.tools.r8.ir.desugar.records.RecordCfMethods -> com.android.tools.r8.internal.nQ:
+com.android.tools.r8.ir.desugar.records.RecordCfMethods -> com.android.tools.r8.internal.oQ:
     1:17:com.android.tools.r8.graph.CfCode RecordMethods_hashCode(com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexMethod):52:68 -> a
     18:21:com.android.tools.r8.graph.CfCode RecordMethods_hashCode(com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexMethod):66:69 -> a
     22:36:com.android.tools.r8.graph.CfCode RecordMethods_hashCode(com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexMethod):64:78 -> a
@@ -63319,7 +63341,7 @@
     510:510:void com.android.tools.r8.graph.CfCode.<init>(com.android.tools.r8.graph.DexType,int,int,java.util.List,java.util.List,java.util.List,com.android.tools.r8.position.Position):194:194 -> b
     510:510:void com.android.tools.r8.graph.CfCode.<init>(com.android.tools.r8.graph.DexType,int,int,java.util.List,java.util.List,java.util.List):176 -> b
     510:510:com.android.tools.r8.graph.CfCode RecordMethods_toString(com.android.tools.r8.utils.InternalOptions,com.android.tools.r8.graph.DexMethod):317 -> b
-com.android.tools.r8.ir.desugar.records.RecordCfToCfRewriter -> com.android.tools.r8.internal.oQ:
+com.android.tools.r8.ir.desugar.records.RecordCfToCfRewriter -> com.android.tools.r8.internal.pQ:
     com.android.tools.r8.graph.AppView appView -> a
     1:2:void <init>(com.android.tools.r8.graph.AppView):42:43 -> <init>
     1:2:com.android.tools.r8.ir.desugar.records.RecordCfToCfRewriter create(com.android.tools.r8.graph.AppView):34:35 -> a
@@ -63347,7 +63369,7 @@
     34:49:com.android.tools.r8.cf.code.CfInvokeDynamic rewriteRecordInvokeDynamic(com.android.tools.r8.cf.code.CfInvokeDynamic,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.naming.NamingLens):60 -> a
     50:50:com.android.tools.r8.cf.code.CfInvokeDynamic com.android.tools.r8.ir.desugar.records.RecordCfToCfRewriter.writeRecordInvokeDynamic(com.android.tools.r8.ir.desugar.records.RecordRewriterHelper$RecordInvokeDynamic):97:97 -> a
     50:50:com.android.tools.r8.cf.code.CfInvokeDynamic rewriteRecordInvokeDynamic(com.android.tools.r8.cf.code.CfInvokeDynamic,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.naming.NamingLens):60 -> a
-com.android.tools.r8.ir.desugar.records.RecordDesugaring -> com.android.tools.r8.internal.sQ:
+com.android.tools.r8.ir.desugar.records.RecordDesugaring -> com.android.tools.r8.internal.tQ:
     com.android.tools.r8.graph.DexItemFactory factory -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.graph.DexProto recordToStringHelperProto -> c
@@ -63495,9 +63517,9 @@
     13:23:java.util.List desugarInvokeRecordToString(com.android.tools.r8.ir.desugar.records.RecordRewriterHelper$RecordInvokeDynamic,com.android.tools.r8.ir.desugar.LocalStackAllocator,com.android.tools.r8.ir.desugar.records.RecordDesugaringEventConsumer$RecordInstructionDesugaringEventConsumer,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):335:345 -> b
     24:37:java.util.List desugarInvokeRecordToString(com.android.tools.r8.ir.desugar.records.RecordRewriterHelper$RecordInvokeDynamic,com.android.tools.r8.ir.desugar.LocalStackAllocator,com.android.tools.r8.ir.desugar.records.RecordDesugaringEventConsumer$RecordInstructionDesugaringEventConsumer,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):342:355 -> b
     38:38:java.lang.String uniqueIdentifier():481:481 -> b
-com.android.tools.r8.ir.desugar.records.RecordDesugaringEventConsumer -> com.android.tools.r8.internal.tQ:
+com.android.tools.r8.ir.desugar.records.RecordDesugaringEventConsumer -> com.android.tools.r8.internal.uQ:
     void acceptRecordClass(com.android.tools.r8.graph.DexProgramClass) -> a
-com.android.tools.r8.ir.desugar.records.RecordFieldValuesRewriter -> com.android.tools.r8.internal.yQ:
+com.android.tools.r8.ir.desugar.records.RecordFieldValuesRewriter -> com.android.tools.r8.internal.zQ:
     com.android.tools.r8.graph.AppView appView -> a
     boolean $assertionsDisabled -> c
     com.android.tools.r8.ir.conversion.IRConverter irConverter -> b
@@ -63560,7 +63582,7 @@
     72:72:void com.android.tools.r8.ir.desugar.records.RecordFieldValuesRewriter.rewriteRecordFieldValues(com.android.tools.r8.graph.ProgramMethod):86:86 -> a
     72:72:void rewriteRecordFieldValues():61 -> a
     73:90:void splitIfCatchHandlers(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlock,java.util.ListIterator):133:150 -> a
-com.android.tools.r8.ir.desugar.records.RecordRewriterHelper -> com.android.tools.r8.internal.AQ:
+com.android.tools.r8.ir.desugar.records.RecordRewriterHelper -> com.android.tools.r8.internal.BQ:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():24:24 -> <clinit>
     1:31:boolean isInvokeDynamicOnRecord(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):33:63 -> a
@@ -63576,7 +63598,7 @@
     74:74:boolean com.android.tools.r8.ir.desugar.records.RecordRewriterHelper.isInvokeDynamicOnRecord(com.android.tools.r8.cf.code.CfInvokeDynamic,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):28:28 -> a
     74:74:com.android.tools.r8.ir.desugar.records.RecordRewriterHelper$RecordInvokeDynamic parseInvokeDynamicOnRecord(com.android.tools.r8.cf.code.CfInvokeDynamic,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):106 -> a
     75:87:com.android.tools.r8.ir.desugar.records.RecordRewriterHelper$RecordInvokeDynamic parseInvokeDynamicOnRecord(com.android.tools.r8.cf.code.CfInvokeDynamic,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):106:118 -> a
-com.android.tools.r8.ir.desugar.records.RecordRewriterHelper$RecordInvokeDynamic -> com.android.tools.r8.internal.zQ:
+com.android.tools.r8.ir.desugar.records.RecordRewriterHelper$RecordInvokeDynamic -> com.android.tools.r8.internal.AQ:
     com.android.tools.r8.graph.DexString methodName -> a
     com.android.tools.r8.graph.DexString fieldNames -> c
     com.android.tools.r8.graph.DexField[] fields -> d
@@ -63596,7 +63618,7 @@
     1:1:com.android.tools.r8.graph.DexProto getMethodProto():168:168 -> e
     1:1:com.android.tools.r8.graph.DexProgramClass getRecordClass():156:156 -> f
     1:1:com.android.tools.r8.graph.DexType getRecordType():152:152 -> g
-com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring -> com.android.tools.r8.internal.XW:
+com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring -> com.android.tools.r8.internal.YW:
     com.android.tools.r8.graph.DexItemFactory$StringBuildingMethods stringBuilderMethods -> b
     java.util.Map paramTypeToAppendMethod -> c
     com.android.tools.r8.graph.DexItemFactory factory -> a
@@ -63693,12 +63715,12 @@
     598:598:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String):22:22 -> a
     598:598:com.android.tools.r8.errors.CompilationError error(com.android.tools.r8.graph.ProgramMethod,java.lang.String):422 -> a
     1:1:com.android.tools.r8.graph.DexItemFactory$StringBuildingMethods access$100(com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring):49:49 -> b
-com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring$ArgumentChunk -> com.android.tools.r8.internal.TW:
+com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring$ArgumentChunk -> com.android.tools.r8.internal.UW:
     int variableIndex -> c
     1:2:void <init>(com.android.tools.r8.graph.DexMethod,int):376:377 -> <init>
     com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring$ArgumentChunk asArgumentChunk() -> a
     1:1:int getVariableIndex():381:381 -> d
-com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring$Chunk -> com.android.tools.r8.internal.UW:
+com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring$Chunk -> com.android.tools.r8.internal.VW:
     boolean $assertionsDisabled -> b
     com.android.tools.r8.graph.DexMethod method -> a
     1:1:void <clinit>():337:337 -> <clinit>
@@ -63713,7 +63735,7 @@
     3:3:int com.android.tools.r8.graph.DexProto.getArity():91:91 -> c
     3:3:com.android.tools.r8.ir.code.ValueType getValueType():350 -> c
     4:5:com.android.tools.r8.ir.code.ValueType getValueType():350:351 -> c
-com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring$ConcatBuilder -> com.android.tools.r8.internal.VW:
+com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring$ConcatBuilder -> com.android.tools.r8.internal.WW:
     java.util.List chunks -> a
     com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring this$0 -> e
     com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring$ArgumentChunk biggestArgumentChunk -> b
@@ -63739,7 +63761,7 @@
     37:37:java.util.Collection desugar(com.android.tools.r8.ir.desugar.LocalStackAllocator):312 -> a
     38:54:java.util.Collection desugar(com.android.tools.r8.ir.desugar.LocalStackAllocator):312:328 -> a
     55:59:java.util.Collection desugar(com.android.tools.r8.ir.desugar.LocalStackAllocator):326:330 -> a
-com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring$ConstantChunk -> com.android.tools.r8.internal.WW:
+com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring$ConstantChunk -> com.android.tools.r8.internal.XW:
     com.android.tools.r8.graph.DexString stringConstant -> c
     1:2:void <init>(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexString):400:401 -> <init>
     com.android.tools.r8.ir.desugar.stringconcat.StringConcatInstructionDesugaring$ConstantChunk asConstantChunk() -> b
@@ -65599,10 +65621,10 @@
     49:49:boolean com.android.tools.r8.ir.code.Instruction.isStaticGet():0:0 -> a
     49:49:void removeDeadInstructions(java.util.Queue,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlock):139 -> a
     50:50:void removeDeadInstructions(java.util.Queue,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlock):139:139 -> a
-    51:51:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    51:51:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     51:51:void removeDeadInstructions(java.util.Queue,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlock):139 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    52:52:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    52:52:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     52:52:void removeDeadInstructions(java.util.Queue,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlock):139 -> a
     53:57:void removeDeadInstructions(java.util.Queue,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlock):140:144 -> a
     58:75:void removeDeadInstructions(java.util.Queue,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlock):141:158 -> a
@@ -65671,20 +65693,20 @@
     1:18:com.android.tools.r8.ir.optimize.Inliner$InlineResult computeInlining(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis,com.android.tools.r8.ir.optimize.inliner.InliningIRProvider,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):270 -> a
     19:32:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.neverInline(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):342:355 -> a
     19:32:com.android.tools.r8.ir.optimize.Inliner$InlineResult computeInlining(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis,com.android.tools.r8.ir.optimize.inliner.InliningIRProvider,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):274 -> a
-    33:33:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    33:33:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     33:33:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.neverInline(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):355 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     33:33:com.android.tools.r8.ir.optimize.Inliner$InlineResult computeInlining(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis,com.android.tools.r8.ir.optimize.inliner.InliningIRProvider,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):274 -> a
-    34:34:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    34:34:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     34:34:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.neverInline(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):355 -> a
     34:34:com.android.tools.r8.ir.optimize.Inliner$InlineResult computeInlining(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis,com.android.tools.r8.ir.optimize.inliner.InliningIRProvider,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):274 -> a
     35:36:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.neverInline(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):355:356 -> a
     35:36:com.android.tools.r8.ir.optimize.Inliner$InlineResult computeInlining(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis,com.android.tools.r8.ir.optimize.inliner.InliningIRProvider,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):274 -> a
-    37:37:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
+    37:37:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
     37:37:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.neverInline(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):356 -> a
     37:37:com.android.tools.r8.ir.optimize.Inliner$InlineResult computeInlining(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis,com.android.tools.r8.ir.optimize.inliner.InliningIRProvider,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):274 -> a
-    38:38:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    38:38:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
+    38:38:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    38:38:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
     38:38:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.neverInline(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):356 -> a
     38:38:com.android.tools.r8.ir.optimize.Inliner$InlineResult computeInlining(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis,com.android.tools.r8.ir.optimize.inliner.InliningIRProvider,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):274 -> a
     39:39:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.neverInline(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):352:352 -> a
@@ -65748,10 +65770,10 @@
     534:534:boolean com.android.tools.r8.features.ClassToFeatureSplitMap.isInBase(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.synthesis.SyntheticItems):179:179 -> a
     534:534:boolean passesInliningConstraints(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.Inliner$Reason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):171 -> a
     535:540:boolean passesInliningConstraints(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.Inliner$Reason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):172:177 -> a
-    541:541:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    541:541:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     541:541:boolean passesInliningConstraints(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.Inliner$Reason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):177 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    542:542:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    542:542:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     542:542:boolean passesInliningConstraints(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.Inliner$Reason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):177 -> a
     543:564:boolean passesInliningConstraints(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.Inliner$Reason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):177:198 -> a
     565:572:boolean passesInliningConstraints(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.Inliner$Reason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):197:204 -> a
@@ -65771,36 +65793,37 @@
     587:587:com.android.tools.r8.ir.optimize.Inliner$InlineAction computeForInvokeWithReceiver(com.android.tools.r8.ir.code.InvokeMethodWithReceiver,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.Inliner$Reason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):377 -> a
     588:594:com.android.tools.r8.ir.optimize.Inliner$InlineAction computeForInvokeWithReceiver(com.android.tools.r8.ir.code.InvokeMethodWithReceiver,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.Inliner$Reason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):377:383 -> a
     595:604:com.android.tools.r8.ir.optimize.Inliner$InlineAction computeForInvokeStatic(com.android.tools.r8.ir.code.InvokeStatic,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.Inliner$Reason,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):396:405 -> a
-    605:619:boolean isTargetClassInitialized(com.android.tools.r8.ir.code.InvokeStatic,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis):419:433 -> a
-    620:635:boolean isTargetClassInitialized(com.android.tools.r8.ir.code.InvokeStatic,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis):432:447 -> a
-    636:636:java.lang.Boolean lambda$isTargetClassInitialized$0(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.InitializedClassesInInstanceMethodsAnalysis$InitializedClassesInInstanceMethods):426:426 -> a
-    637:639:boolean allowInliningOfInvokeInInlinee(com.android.tools.r8.ir.optimize.Inliner$InlineAction,int,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):459:461 -> a
-    640:640:boolean com.android.tools.r8.ir.optimize.Inliner$Reason.mustBeInlined():496:496 -> a
-    640:640:boolean allowInliningOfInvokeInInlinee(com.android.tools.r8.ir.optimize.Inliner$InlineAction,int,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):461 -> a
-    641:646:boolean allowInliningOfInvokeInInlinee(com.android.tools.r8.ir.optimize.Inliner$InlineAction,int,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):465:470 -> a
-    647:647:boolean stillHasBudget(com.android.tools.r8.ir.optimize.Inliner$InlineAction,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):596:596 -> a
-    648:648:boolean com.android.tools.r8.ir.optimize.Inliner$Reason.mustBeInlined():496:496 -> a
-    648:648:boolean stillHasBudget(com.android.tools.r8.ir.optimize.Inliner$InlineAction,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):596 -> a
-    649:651:boolean stillHasBudget(com.android.tools.r8.ir.optimize.Inliner$InlineAction,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):599:601 -> a
-    652:652:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):613:613 -> a
-    653:653:boolean com.android.tools.r8.ir.optimize.Inliner$Reason.mustBeInlined():496:496 -> a
-    653:653:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):613 -> a
-    654:656:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.willExceedInstructionBudget(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):624:626 -> a
-    654:656:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):616 -> a
-    657:657:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):617:617 -> a
-    658:662:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.willExceedControlFlowResolutionBlocksBudget(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):711:715 -> a
-    658:662:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):618 -> a
-    663:663:int com.android.tools.r8.ir.code.BasicBlock.numberOfThrowingInstructions():1633:1633 -> a
-    663:663:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.willExceedControlFlowResolutionBlocksBudget(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):716 -> a
-    663:663:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):618 -> a
+    605:613:boolean isTargetClassInitialized(com.android.tools.r8.ir.code.InvokeStatic,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis):419:427 -> a
+    614:623:boolean isTargetClassInitialized(com.android.tools.r8.ir.code.InvokeStatic,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis):424:433 -> a
+    624:639:boolean isTargetClassInitialized(com.android.tools.r8.ir.code.InvokeStatic,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.ClassInitializationAnalysis):432:447 -> a
+    640:640:java.lang.Boolean lambda$isTargetClassInitialized$0(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.InitializedClassesInInstanceMethodsAnalysis$InitializedClassesInInstanceMethods):426:426 -> a
+    641:643:boolean allowInliningOfInvokeInInlinee(com.android.tools.r8.ir.optimize.Inliner$InlineAction,int,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):459:461 -> a
+    644:644:boolean com.android.tools.r8.ir.optimize.Inliner$Reason.mustBeInlined():496:496 -> a
+    644:644:boolean allowInliningOfInvokeInInlinee(com.android.tools.r8.ir.optimize.Inliner$InlineAction,int,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):461 -> a
+    645:650:boolean allowInliningOfInvokeInInlinee(com.android.tools.r8.ir.optimize.Inliner$InlineAction,int,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):465:470 -> a
+    651:651:boolean stillHasBudget(com.android.tools.r8.ir.optimize.Inliner$InlineAction,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):596:596 -> a
+    652:652:boolean com.android.tools.r8.ir.optimize.Inliner$Reason.mustBeInlined():496:496 -> a
+    652:652:boolean stillHasBudget(com.android.tools.r8.ir.optimize.Inliner$InlineAction,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):596 -> a
+    653:655:boolean stillHasBudget(com.android.tools.r8.ir.optimize.Inliner$InlineAction,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):599:601 -> a
+    656:656:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):613:613 -> a
+    657:657:boolean com.android.tools.r8.ir.optimize.Inliner$Reason.mustBeInlined():496:496 -> a
+    657:657:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):613 -> a
+    658:660:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.willExceedInstructionBudget(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):624:626 -> a
+    658:660:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):616 -> a
+    661:661:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):617:617 -> a
+    662:666:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.willExceedControlFlowResolutionBlocksBudget(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):711:715 -> a
+    662:666:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):618 -> a
+    667:667:int com.android.tools.r8.ir.code.BasicBlock.numberOfThrowingInstructions():1633:1633 -> a
+    667:667:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.willExceedControlFlowResolutionBlocksBudget(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):716 -> a
+    667:667:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):618 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
-    664:665:int com.android.tools.r8.ir.code.BasicBlock.numberOfThrowingInstructions():1633:1634 -> a
-    664:665:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.willExceedControlFlowResolutionBlocksBudget(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):716 -> a
-    664:665:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):618 -> a
-    666:671:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.willExceedControlFlowResolutionBlocksBudget(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):722:727 -> a
-    666:671:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):618 -> a
-    672:704:boolean willExceedMonitorEnterValuesBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):646:678 -> a
-    705:705:void markInlined(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason):737:737 -> a
+    668:669:int com.android.tools.r8.ir.code.BasicBlock.numberOfThrowingInstructions():1633:1634 -> a
+    668:669:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.willExceedControlFlowResolutionBlocksBudget(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):716 -> a
+    668:669:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):618 -> a
+    670:675:boolean com.android.tools.r8.ir.optimize.DefaultInliningOracle.willExceedControlFlowResolutionBlocksBudget(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):722:727 -> a
+    670:675:boolean willExceedBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):618 -> a
+    676:708:boolean willExceedMonitorEnterValuesBudget(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason,com.android.tools.r8.ir.optimize.inliner.WhyAreYouNotInliningReporter):646:678 -> a
+    709:709:void markInlined(com.android.tools.r8.ir.optimize.Inliner$InlineeWithReason):737:737 -> a
     1:1:com.android.tools.r8.graph.AppView appView():83:83 -> b
     2:2:com.android.tools.r8.graph.ProgramMethod lookupSingleTarget(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod):257:257 -> b
     3:3:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.ir.code.InvokeMethod.lookupSingleProgramTarget(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):119:119 -> b
@@ -66408,7 +66431,7 @@
     3:12:int com.android.tools.r8.ir.optimize.InstructionEquivalence.doHash(com.android.tools.r8.ir.code.Instruction):27:36 -> a
     3:12:int doHash(java.lang.Object):11 -> a
     13:14:boolean doEquivalent(com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.Instruction):20:21 -> a
-com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool -> com.android.tools.r8.internal.bE:
+com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool -> com.android.tools.r8.internal.cE:
     com.android.tools.r8.graph.DexClass clazz -> a
     com.android.tools.r8.com.google.common.base.Equivalence equivalence -> b
     java.util.Set interfaces -> d
@@ -66419,40 +66442,39 @@
     1:1:void <clinit>():161:161 -> <clinit>
     1:1:void <init>(com.android.tools.r8.com.google.common.base.Equivalence,com.android.tools.r8.graph.DexClass):170:170 -> <init>
     2:8:void <init>(com.android.tools.r8.com.google.common.base.Equivalence,com.android.tools.r8.graph.DexClass):166:172 -> <init>
-    1:2:java.lang.Object below(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):0:0 -> a
-    250:252:java.lang.Object below(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):248:250 -> a
-    253:253:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.here(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.util.function.BiFunction):240:240 -> a
-    253:253:java.lang.Object below(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):251 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    254:255:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.here(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.util.function.BiFunction):240:241 -> a
-    254:255:java.lang.Object below(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):251 -> a
-    256:257:java.lang.Object below(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):255:256 -> a
-    258:259:void linkInterface(com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool):186:187 -> a
-    260:260:void seen(java.lang.Object):191:191 -> a
-    261:261:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200:200 -> a
-    262:264:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.above(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,boolean,java.lang.Object,java.lang.Object,java.util.function.BiFunction):221:223 -> a
-    262:264:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.fold(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):263 -> a
-    262:264:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200 -> a
-    265:265:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.here(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.util.function.BiFunction):240:240 -> a
-    265:265:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.above(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,boolean,java.lang.Object,java.lang.Object,java.util.function.BiFunction):225 -> a
-    265:265:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.fold(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):263 -> a
-    265:265:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200 -> a
+    1:2:void linkInterface(com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool):186:187 -> a
+    3:3:void seen(java.lang.Object):191:191 -> a
+    4:4:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200:200 -> a
+    5:7:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.above(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,boolean,java.lang.Object,java.lang.Object,java.util.function.BiFunction):221:223 -> a
+    5:7:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.fold(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):263 -> a
+    5:7:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200 -> a
+    8:8:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.here(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.util.function.BiFunction):240:240 -> a
+    8:8:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.above(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,boolean,java.lang.Object,java.lang.Object,java.util.function.BiFunction):225 -> a
+    8:8:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.fold(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):263 -> a
+    8:8:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(3)"]}
-    266:267:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.here(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.util.function.BiFunction):240:241 -> a
-    266:267:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.above(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,boolean,java.lang.Object,java.lang.Object,java.util.function.BiFunction):225 -> a
-    266:267:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.fold(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):263 -> a
-    266:267:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200 -> a
-    268:271:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.above(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,boolean,java.lang.Object,java.lang.Object,java.util.function.BiFunction):231:234 -> a
-    268:271:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.fold(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):263 -> a
-    268:271:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200 -> a
-    272:272:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.fold(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):267:267 -> a
-    272:272:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200 -> a
-    273:273:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200:200 -> a
-    274:274:java.lang.Boolean lambda$hasSeen$0(com.android.tools.r8.graph.DexClass,java.lang.Boolean):200:200 -> a
+    9:10:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.here(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.util.function.BiFunction):240:241 -> a
+    9:10:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.above(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,boolean,java.lang.Object,java.lang.Object,java.util.function.BiFunction):225 -> a
+    9:10:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.fold(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):263 -> a
+    9:10:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200 -> a
+    11:14:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.above(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,boolean,java.lang.Object,java.lang.Object,java.util.function.BiFunction):231:234 -> a
+    11:14:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.fold(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):263 -> a
+    11:14:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200 -> a
+    15:15:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.fold(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):267:267 -> a
+    15:15:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200 -> a
+    16:16:boolean hasSeen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):200:200 -> a
+    17:17:java.lang.Boolean lambda$hasSeen$0(com.android.tools.r8.graph.DexClass,java.lang.Boolean):200:200 -> a
+    18:20:java.lang.Object below(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):248:250 -> a
+    21:21:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.here(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.util.function.BiFunction):240:240 -> a
+    21:21:java.lang.Object below(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):251 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    22:23:java.lang.Object com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool.here(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.util.function.BiFunction):240:241 -> a
+    22:23:java.lang.Object below(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):251 -> a
+    24:25:java.lang.Object below(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper,java.lang.Object,java.lang.Object,java.util.function.BiFunction):255:256 -> a
     1:2:void linkSubtype(com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool):181:182 -> b
     3:4:void seen(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):195:196 -> b
     1:2:void linkSupertype(com.android.tools.r8.ir.optimize.MemberPoolCollection$MemberPool):176:177 -> c
-com.android.tools.r8.ir.optimize.MemberValuePropagation -> com.android.tools.r8.internal.mE:
+com.android.tools.r8.ir.optimize.MemberValuePropagation -> com.android.tools.r8.internal.nE:
     com.android.tools.r8.ir.optimize.info.OptimizationFeedback feedback -> d
     com.android.tools.r8.graph.AppView appView -> a
     java.util.Set warnedFields -> c
@@ -66593,7 +66615,7 @@
     409:422:void run(com.android.tools.r8.ir.code.IRCode,java.util.ListIterator,java.util.Set,java.util.function.Predicate):543 -> a
     423:423:void com.android.tools.r8.ir.optimize.MemberValuePropagation.replaceStaticPutByInitClassIfNeverRead(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.StaticPut):494:494 -> a
     423:423:void run(com.android.tools.r8.ir.code.IRCode,java.util.ListIterator,java.util.Set,java.util.function.Predicate):543 -> a
-com.android.tools.r8.ir.optimize.MethodPoolCollection -> com.android.tools.r8.internal.YE:
+com.android.tools.r8.ir.optimize.MethodPoolCollection -> com.android.tools.r8.internal.ZE:
     java.util.Map com.android.tools.r8.ir.optimize.MemberPoolCollection.memberPools -> d
     com.android.tools.r8.graph.AppView com.android.tools.r8.ir.optimize.MemberPoolCollection.appView -> b
     com.android.tools.r8.com.google.common.base.Equivalence com.android.tools.r8.ir.optimize.MemberPoolCollection.equivalence -> a
@@ -66691,7 +66713,7 @@
     1:1:void com.android.tools.r8.ir.optimize.MemberPoolCollection.lambda$getAllSubTypesExclusive$4(java.util.Deque,com.android.tools.r8.graph.DexType):155:155 -> d
     2:2:void com.android.tools.r8.ir.optimize.MemberPoolCollection.addNonNull(java.util.Collection,java.lang.Object):273:273 -> d
     2:2:void com.android.tools.r8.ir.optimize.MemberPoolCollection.lambda$getAllSubTypesExclusive$4(java.util.Deque,com.android.tools.r8.graph.DexType):155 -> d
-com.android.tools.r8.ir.optimize.MoveEliminator -> com.android.tools.r8.internal.KF:
+com.android.tools.r8.ir.optimize.MoveEliminator -> com.android.tools.r8.internal.LF:
     com.android.tools.r8.ir.regalloc.RegisterAllocator allocator -> b
     java.util.Set activeMoves -> a
     1:1:void <init>(com.android.tools.r8.ir.regalloc.RegisterAllocator):17:17 -> <init>
@@ -66699,7 +66721,7 @@
     1:12:boolean shouldBeEliminated(com.android.tools.r8.ir.code.Instruction):22:33 -> a
     13:51:boolean shouldBeEliminated(com.android.tools.r8.ir.code.Instruction):32:70 -> a
     52:56:boolean lambda$shouldBeEliminated$0(com.android.tools.r8.ir.code.Value,int,com.android.tools.r8.ir.code.Move):55:59 -> a
-com.android.tools.r8.ir.optimize.MultiCallerInliner -> com.android.tools.r8.internal.WF:
+com.android.tools.r8.ir.optimize.MultiCallerInliner -> com.android.tools.r8.internal.XF:
     com.android.tools.r8.graph.AppView appView -> a
     int[] multiCallerInliningInstructionLimits -> c
     com.android.tools.r8.utils.collections.ProgramMethodMap multiInlineCallEdges -> b
@@ -66708,23 +66730,21 @@
     1:1:void <init>(com.android.tools.r8.graph.AppView):53:53 -> <init>
     2:9:void <init>(com.android.tools.r8.graph.AppView):49:56 -> <init>
     1:5:void recordCallEdgesForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.utils.Timing):61:65 -> a
-    6:10:void com.android.tools.r8.utils.Timing.time(java.lang.String,com.android.tools.r8.utils.ThrowingAction):379:383 -> a
-    6:10:void recordCallEdgesForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.utils.Timing):65 -> a
-    11:11:void lambda$recordCallEdgesForMultiCallerInlining$0(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.conversion.MethodProcessor):67:67 -> a
-    12:12:com.android.tools.r8.ir.optimize.DefaultInliningOracle lambda$recordCallEdgesForMultiCallerInlining$1(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.MethodProcessor):76:76 -> a
-    13:15:void recordCallEdgeForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.MethodProcessor):132:134 -> a
-    16:32:void recordCallEdgeForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.MethodProcessor):133:149 -> a
-    33:33:java.util.Optional lambda$recordCallEdgeForMultiCallerInlining$2():134:134 -> a
-    34:50:void stopTrackingCallSitesForMethodIfDefinitelyIneligibleForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.utils.collections.ProgramMethodMultiset):160:176 -> a
-    51:51:void com.android.tools.r8.ir.optimize.MultiCallerInliner.stopTrackingCallSitesForMethod(com.android.tools.r8.graph.ProgramMethod):182:182 -> a
-    51:51:void stopTrackingCallSitesForMethodIfDefinitelyIneligibleForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.utils.collections.ProgramMethodMultiset):177 -> a
-    52:53:void lambda$stopTrackingCallSitesForMethodIfDefinitelyIneligibleForMultiCallerInlining$4(com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.utils.IntBox,com.android.tools.r8.graph.ProgramMethod,int):170:171 -> a
-    54:64:void onLastWaveDone(com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):194:204 -> a
-    65:65:com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraph lambda$onLastWaveDone$5(java.util.concurrent.ExecutorService):198:198 -> a
-    66:122:com.android.tools.r8.utils.collections.LongLivedProgramMethodSetBuilder computeMultiInlineCallerMethods(com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraph):212:268 -> a
-    123:172:void lambda$computeMultiInlineCallerMethods$9(com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraph,com.android.tools.r8.utils.collections.LongLivedProgramMethodSetBuilder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod,java.util.Optional):217:266 -> a
-    173:173:boolean lambda$computeMultiInlineCallerMethods$7(com.android.tools.r8.graph.ProgramMethod):232:232 -> a
-    174:175:void lambda$computeMultiInlineCallerMethods$8(com.android.tools.r8.utils.collections.LongLivedProgramMethodSetBuilder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod,int):262:263 -> a
+    6:6:void lambda$recordCallEdgesForMultiCallerInlining$0(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.conversion.MethodProcessor):67:67 -> a
+    7:7:com.android.tools.r8.ir.optimize.DefaultInliningOracle lambda$recordCallEdgesForMultiCallerInlining$1(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.MethodProcessor):76:76 -> a
+    8:10:void recordCallEdgeForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.MethodProcessor):132:134 -> a
+    11:27:void recordCallEdgeForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.MethodProcessor):133:149 -> a
+    28:28:java.util.Optional lambda$recordCallEdgeForMultiCallerInlining$2():134:134 -> a
+    29:45:void stopTrackingCallSitesForMethodIfDefinitelyIneligibleForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.utils.collections.ProgramMethodMultiset):160:176 -> a
+    46:46:void com.android.tools.r8.ir.optimize.MultiCallerInliner.stopTrackingCallSitesForMethod(com.android.tools.r8.graph.ProgramMethod):182:182 -> a
+    46:46:void stopTrackingCallSitesForMethodIfDefinitelyIneligibleForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.utils.collections.ProgramMethodMultiset):177 -> a
+    47:48:void lambda$stopTrackingCallSitesForMethodIfDefinitelyIneligibleForMultiCallerInlining$4(com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.utils.IntBox,com.android.tools.r8.graph.ProgramMethod,int):170:171 -> a
+    49:59:void onLastWaveDone(com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):194:204 -> a
+    60:60:com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraph lambda$onLastWaveDone$5(java.util.concurrent.ExecutorService):198:198 -> a
+    61:117:com.android.tools.r8.utils.collections.LongLivedProgramMethodSetBuilder computeMultiInlineCallerMethods(com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraph):212:268 -> a
+    118:167:void lambda$computeMultiInlineCallerMethods$9(com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraph,com.android.tools.r8.utils.collections.LongLivedProgramMethodSetBuilder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod,java.util.Optional):217:266 -> a
+    168:168:boolean lambda$computeMultiInlineCallerMethods$7(com.android.tools.r8.graph.ProgramMethod):232:232 -> a
+    169:170:void lambda$computeMultiInlineCallerMethods$8(com.android.tools.r8.utils.collections.LongLivedProgramMethodSetBuilder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod,int):262:263 -> a
     1:30:void recordCallEdgesForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.conversion.MethodProcessor):72:101 -> b
     31:31:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.ir.code.InvokeMethod.lookupSingleProgramTarget(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):119:119 -> b
     31:31:void recordCallEdgesForMultiCallerInlining(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.conversion.MethodProcessor):101 -> b
@@ -66738,7 +66758,7 @@
     54:54:boolean lambda$stopTrackingCallSitesForMethodIfDefinitelyIneligibleForMultiCallerInlining$3(com.android.tools.r8.graph.ProgramMethod):160:160 -> b
     55:55:com.android.tools.r8.utils.collections.LongLivedProgramMethodSetBuilder lambda$onLastWaveDone$6(com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraph):200:200 -> b
     1:1:void onMethodPruned(com.android.tools.r8.graph.ProgramMethod):186:186 -> c
-com.android.tools.r8.ir.optimize.NaturalIntLoopRemover -> com.android.tools.r8.internal.CG:
+com.android.tools.r8.ir.optimize.NaturalIntLoopRemover -> com.android.tools.r8.internal.DG:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():29:29 -> <clinit>
     1:1:void <init>():29:29 -> <init>
@@ -66815,7 +66835,7 @@
     127:130:boolean com.android.tools.r8.ir.optimize.NaturalIntLoopRemover.tryRemoveLoop(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.If):87:90 -> a
     127:130:void run(com.android.tools.r8.ir.code.IRCode):35 -> a
     131:132:void run(com.android.tools.r8.ir.code.IRCode):39:40 -> a
-com.android.tools.r8.ir.optimize.NaturalIntLoopRemover$NaturalIntLoopWithKnowIterations -> com.android.tools.r8.internal.BG:
+com.android.tools.r8.ir.optimize.NaturalIntLoopRemover$NaturalIntLoopWithKnowIterations -> com.android.tools.r8.internal.CG:
     com.android.tools.r8.ir.code.If comparison -> c
     java.util.Set loopBody -> g
     com.android.tools.r8.ir.code.BasicBlock backPredecessor -> f
@@ -66858,7 +66878,7 @@
     45:47:void com.android.tools.r8.ir.optimize.NaturalIntLoopRemover$NaturalIntLoopWithKnowIterations.patchControlFlow(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlock):350:352 -> a
     45:47:void com.android.tools.r8.ir.optimize.NaturalIntLoopRemover$NaturalIntLoopWithKnowIterations.remove1IterationLoop(com.android.tools.r8.ir.code.IRCode):341 -> a
     45:47:void access$000(com.android.tools.r8.ir.optimize.NaturalIntLoopRemover$NaturalIntLoopWithKnowIterations,com.android.tools.r8.ir.code.IRCode):229 -> a
-com.android.tools.r8.ir.optimize.NaturalIntLoopRemover$NaturalIntLoopWithKnowIterations$Builder -> com.android.tools.r8.internal.AG:
+com.android.tools.r8.ir.optimize.NaturalIntLoopRemover$NaturalIntLoopWithKnowIterations$Builder -> com.android.tools.r8.internal.BG:
     com.android.tools.r8.ir.code.If comparison -> c
     com.android.tools.r8.ir.code.BasicBlock backPredecessor -> g
     java.util.Set loopBody -> h
@@ -66878,7 +66898,7 @@
     3:3:com.android.tools.r8.ir.code.BasicBlock getBackPredecessor():292:292 -> b
     1:1:int getCounterIncrement():276:276 -> c
     1:1:com.android.tools.r8.ir.code.BasicBlock getLoopEntry():284:284 -> d
-com.android.tools.r8.ir.optimize.NestReducer -> com.android.tools.r8.internal.LG:
+com.android.tools.r8.ir.optimize.NestReducer -> com.android.tools.r8.internal.MG:
     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
@@ -66908,7 +66928,7 @@
     3:3:com.android.tools.r8.graph.DexClass com.android.tools.r8.graph.DexDefinitionSupplier.definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexProgramClass):42:42 -> c
     3:3:void processNestMember(com.android.tools.r8.graph.DexProgramClass):100 -> c
     4:6:void processNestMember(com.android.tools.r8.graph.DexProgramClass):100:102 -> c
-com.android.tools.r8.ir.optimize.NestUtils -> com.android.tools.r8.internal.MG:
+com.android.tools.r8.ir.optimize.NestUtils -> com.android.tools.r8.internal.NG:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():22:22 -> <clinit>
     1:14:boolean sameNest(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexDefinitionSupplier):28:41 -> a
@@ -66932,7 +66952,7 @@
     44:54:void rewriteNestCallsForInlining(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.AppView):73:83 -> a
     55:55:void com.android.tools.r8.ir.code.InstructionListIterator.replaceCurrentInstruction(com.android.tools.r8.ir.code.Instruction):42:42 -> a
     55:55:void rewriteNestCallsForInlining(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.AppView):78 -> a
-com.android.tools.r8.ir.optimize.OutlinerImpl -> com.android.tools.r8.internal.CL:
+com.android.tools.r8.ir.optimize.OutlinerImpl -> com.android.tools.r8.internal.DL:
     java.util.Map outlineSites -> b
     java.util.Map generatedOutlines -> c
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> e
@@ -67036,7 +67056,7 @@
     29:50:java.util.List buildOutlineMethods():1527:1548 -> c
     1:1:java.util.Map access$300(com.android.tools.r8.ir.optimize.OutlinerImpl):120:120 -> d
     1:1:java.util.Map access$400(com.android.tools.r8.ir.optimize.OutlinerImpl):120:120 -> e
-com.android.tools.r8.ir.optimize.OutlinerImpl$BinOpOutlineInstruction -> com.android.tools.r8.internal.qL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$BinOpOutlineInstruction -> com.android.tools.r8.internal.rL:
     com.android.tools.r8.ir.code.NumericType numericType -> c
     1:2:void <init>(com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineInstruction$OutlineInstructionType,com.android.tools.r8.ir.code.NumericType):229:230 -> <init>
     boolean needsLensRewriting(com.android.tools.r8.graph.GraphLens) -> a
@@ -67093,7 +67113,7 @@
     1:1:int com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineInstruction.hashCode():199:199 -> hashCode
     1:1:int hashCode():241 -> hashCode
     2:2:int hashCode():241:241 -> hashCode
-com.android.tools.r8.ir.optimize.OutlinerImpl$InvokeOutlineInstruction -> com.android.tools.r8.internal.rL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$InvokeOutlineInstruction -> com.android.tools.r8.internal.sL:
     com.android.tools.r8.ir.code.Invoke$Type invokeType -> d
     com.android.tools.r8.graph.DexProto proto -> f
     boolean hasOutValue -> e
@@ -67143,7 +67163,7 @@
     1:1:int com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineInstruction.hashCode():199:199 -> hashCode
     1:1:int hashCode():439 -> hashCode
     2:6:int hashCode():439:443 -> hashCode
-com.android.tools.r8.ir.optimize.OutlinerImpl$NewInstanceOutlineInstruction -> com.android.tools.r8.internal.sL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$NewInstanceOutlineInstruction -> com.android.tools.r8.internal.tL:
     com.android.tools.r8.graph.DexType clazz -> c
     1:2:void <init>(com.android.tools.r8.graph.DexType):336:337 -> <init>
     1:1:int compareTo(com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineInstruction):357:357 -> a
@@ -67174,7 +67194,7 @@
     1:1:int com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineInstruction.hashCode():199:199 -> hashCode
     1:1:int hashCode():352 -> hashCode
     2:2:int hashCode():352:352 -> hashCode
-com.android.tools.r8.ir.optimize.OutlinerImpl$Outline -> com.android.tools.r8.internal.tL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$Outline -> com.android.tools.r8.internal.uL:
     java.util.List argumentTypes -> b
     java.util.List templateInstructions -> d
     java.util.List argumentMap -> c
@@ -67219,7 +67239,7 @@
     1:18:boolean equals(java.lang.Object):638:655 -> equals
     1:6:int hashCode():663:668 -> hashCode
     1:37:java.lang.String toString():724:760 -> toString
-com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineCode -> com.android.tools.r8.internal.uL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineCode -> com.android.tools.r8.internal.vL:
     com.android.tools.r8.ir.optimize.OutlinerImpl this$0 -> e
     com.android.tools.r8.ir.optimize.OutlinerImpl$Outline outline -> d
     1:2:void <init>(com.android.tools.r8.ir.optimize.OutlinerImpl,com.android.tools.r8.ir.optimize.OutlinerImpl$Outline):1772:1773 -> <init>
@@ -67232,7 +67252,7 @@
     int estimatedDexCodeSizeUpperBoundInBytes() -> r0
     int estimatedSizeForInlining() -> s0
     1:1:java.lang.String toString():1805:1805 -> toString
-com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineInstruction -> com.android.tools.r8.internal.wL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineInstruction -> com.android.tools.r8.internal.xL:
     com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineInstruction$OutlineInstructionType type -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():140:140 -> <clinit>
@@ -67245,18 +67265,18 @@
     java.lang.String getInstructionName() -> b
     boolean hasOutValue() -> c
     int numberOfInputs() -> d
-com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineInstruction$OutlineInstructionType$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.vL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineInstruction$OutlineInstructionType$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.wL:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
     java.lang.String name(int) -> a
       # {"id":"com.android.tools.r8.synthesized"}
     java.lang.String stringValueOf(int) -> b
       # {"id":"com.android.tools.r8.synthesized"}
-com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineMethodIdentifier -> com.android.tools.r8.internal.xL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineMethodIdentifier -> com.android.tools.r8.internal.yL:
     java.util.List outlinesForMethod -> p
     1:2:void <init>(com.android.tools.r8.ir.optimize.OutlinerImpl,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode,java.util.List,java.util.List):1189:1190 -> <init>
     1:1:void handle(int,int,com.android.tools.r8.ir.optimize.OutlinerImpl$Outline):1195:1195 -> a
-com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineRewriter -> com.android.tools.r8.internal.yL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineRewriter -> com.android.tools.r8.internal.zL:
     com.android.tools.r8.ir.optimize.OutlinerImpl this$0 -> t
     boolean $assertionsDisabled -> u
     com.android.tools.r8.ir.code.IRCode code -> p
@@ -67283,12 +67303,12 @@
     82:82:boolean removeMethodFromOutlineList(com.android.tools.r8.ir.optimize.OutlinerImpl$Outline):1309:1309 -> a
     83:87:boolean removeMethodFromOutlineList(com.android.tools.r8.ir.optimize.OutlinerImpl$Outline):1306:1310 -> a
     88:88:boolean lambda$removeMethodFromOutlineList$0(com.android.tools.r8.graph.ProgramMethod):1308:1308 -> a
-com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineSiteIdentifier -> com.android.tools.r8.internal.zL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineSiteIdentifier -> com.android.tools.r8.internal.AL:
     com.android.tools.r8.ir.optimize.OutlinerImpl this$0 -> p
     1:2:void <init>(com.android.tools.r8.ir.optimize.OutlinerImpl,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode,java.util.List):1202:1203 -> <init>
     1:3:void handle(int,int,com.android.tools.r8.ir.optimize.OutlinerImpl$Outline):1208:1210 -> a
     4:4:java.util.List lambda$handle$0(com.android.tools.r8.ir.optimize.OutlinerImpl$Outline):1209:1209 -> a
-com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineSourceCode -> com.android.tools.r8.internal.AL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineSourceCode -> com.android.tools.r8.internal.BL:
     com.android.tools.r8.ir.optimize.OutlinerImpl$Outline outline -> a
     com.android.tools.r8.ir.optimize.OutlinerImpl this$0 -> e
     boolean $assertionsDisabled -> f
@@ -67325,7 +67345,7 @@
     1:1:com.android.tools.r8.ir.code.Position getCurrentPosition():1748:1748 -> e
     1:1:int getMoveExceptionRegister(int):1736:1736 -> f
     int instructionOffset(int) -> g
-com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineSpotter -> com.android.tools.r8.internal.BL:
+com.android.tools.r8.ir.optimize.OutlinerImpl$OutlineSpotter -> com.android.tools.r8.internal.CL:
     com.android.tools.r8.graph.DexType returnType -> j
     int returnValueUniqueUsersLeft -> l
     com.android.tools.r8.ir.optimize.OutlinerImpl this$0 -> n
@@ -67475,7 +67495,7 @@
     9:9:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> b
     9:9:boolean supportedArgumentType(com.android.tools.r8.ir.code.Value):981 -> b
     10:16:boolean supportedArgumentType(com.android.tools.r8.ir.code.Value):984:990 -> b
-com.android.tools.r8.ir.optimize.PeepholeOptimizer -> com.android.tools.r8.internal.XL:
+com.android.tools.r8.ir.optimize.PeepholeOptimizer -> com.android.tools.r8.internal.YL:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():35:35 -> <clinit>
     1:1:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.regalloc.LinearScanRegisterAllocator):40:40 -> a
@@ -67596,7 +67616,7 @@
     428:428:void removeIdenticalPredecessorBlocks(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.regalloc.RegisterAllocator):466 -> a
     429:432:void removeIdenticalPredecessorBlocks(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.regalloc.RegisterAllocator):466:469 -> a
     1:1:java.util.List lambda$shareIdenticalBlockSuffix$2(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):271:271 -> b
-com.android.tools.r8.ir.optimize.PhiOptimizations -> com.android.tools.r8.internal.aM:
+com.android.tools.r8.ir.optimize.PhiOptimizations -> com.android.tools.r8.internal.bM:
     1:1:boolean optimize(com.android.tools.r8.ir.code.IRCode):24:24 -> a
     1:6:boolean tryMovePhisToStack(com.android.tools.r8.ir.code.IRCode):112:117 -> b
     7:8:boolean com.android.tools.r8.ir.optimize.PhiOptimizations.predecessorsHaveNormalFlow(com.android.tools.r8.ir.code.BasicBlock):28:29 -> b
@@ -67644,7 +67664,7 @@
     39:50:boolean tryMovePhisToStack(com.android.tools.r8.ir.code.IRCode):118 -> b
     51:64:boolean com.android.tools.r8.ir.optimize.PhiOptimizations.tryMovePhiToStack(com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.code.Phi,java.util.Set):160:173 -> b
     51:64:boolean tryMovePhisToStack(com.android.tools.r8.ir.code.IRCode):118 -> b
-com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination -> com.android.tools.r8.internal.KQ:
+com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination -> com.android.tools.r8.internal.LQ:
     com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$BlockState activeState -> h
     com.android.tools.r8.graph.AppView appView -> a
     boolean $assertionsDisabled -> j
@@ -67672,10 +67692,10 @@
     13:20:void lambda$processInstructionsToRemove$1(com.android.tools.r8.ir.code.BasicBlock,java.util.Set):424:431 -> a
     21:21:boolean lambda$processInstructionsToRemove$0(com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.code.Instruction):423:423 -> a
     22:22:void handleInvokeDirect(com.android.tools.r8.ir.code.InvokeDirect):452:452 -> a
-    23:23:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    23:23:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     23:23:void handleInvokeDirect(com.android.tools.r8.ir.code.InvokeDirect):452 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    24:24:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    24:24:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     24:24:void handleInvokeDirect(com.android.tools.r8.ir.code.InvokeDirect):452 -> a
     25:45:void handleInvokeDirect(com.android.tools.r8.ir.code.InvokeDirect):453:473 -> a
     46:46:void handleInvokeDirect(com.android.tools.r8.ir.code.InvokeDirect):461:461 -> a
@@ -67804,11 +67824,11 @@
     121:124:void run():340 -> c
     125:132:void com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination.handleStaticGet(com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.StaticGet,com.android.tools.r8.graph.DexClassAndField,com.android.tools.r8.ir.optimize.AssumeRemover):724:731 -> c
     125:132:void run():340 -> c
-    133:133:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> c
+    133:133:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> c
     133:133:void com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination.handleStaticGet(com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.StaticGet,com.android.tools.r8.graph.DexClassAndField,com.android.tools.r8.ir.optimize.AssumeRemover):731 -> c
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     133:133:void run():340 -> c
-    134:134:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> c
+    134:134:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> c
     134:134:void com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination.handleStaticGet(com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.StaticGet,com.android.tools.r8.graph.DexClassAndField,com.android.tools.r8.ir.optimize.AssumeRemover):731 -> c
     134:134:void run():340 -> c
     135:142:void com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination.handleStaticGet(com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.StaticGet,com.android.tools.r8.graph.DexClassAndField,com.android.tools.r8.ir.optimize.AssumeRemover):733:740 -> c
@@ -67836,11 +67856,11 @@
     174:174:void run():355:355 -> c
     175:175:void com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination.handleInvokeStatic(com.android.tools.r8.ir.code.InvokeStatic):510:510 -> c
     175:175:void run():355 -> c
-    176:176:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():650:650 -> c
+    176:176:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():670:670 -> c
     176:176:void com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination.handleInvokeStatic(com.android.tools.r8.ir.code.InvokeStatic):510 -> c
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     176:176:void run():355 -> c
-    177:177:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():650:650 -> c
+    177:177:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():670:670 -> c
     177:177:void com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination.handleInvokeStatic(com.android.tools.r8.ir.code.InvokeStatic):510 -> c
     177:177:void run():355 -> c
     178:185:void com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination.handleInvokeStatic(com.android.tools.r8.ir.code.InvokeStatic):511:518 -> c
@@ -67909,14 +67929,14 @@
     655:655:void run():415 -> c
     656:657:void run():415:416 -> c
     1:1:com.android.tools.r8.ir.code.IRCode access$300(com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination):63:63 -> d
-com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ArraySlot -> com.android.tools.r8.internal.BQ:
+com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ArraySlot -> com.android.tools.r8.internal.CQ:
     com.android.tools.r8.ir.code.MemberType memberType -> b
     com.android.tools.r8.ir.code.Value array -> a
     1:1:void <init>(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.MemberType,com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$1):158:158 -> <init>
     2:4:void <init>(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.MemberType):163:165 -> <init>
     boolean maybeHasIndex(int) -> a
     1:5:com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ArraySlot create(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.MemberType):169:173 -> a
-com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ArraySlotWithConstantIndex -> com.android.tools.r8.internal.CQ:
+com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ArraySlotWithConstantIndex -> com.android.tools.r8.internal.DQ:
     int index -> c
     1:1:void <init>(com.android.tools.r8.ir.code.Value,int,com.android.tools.r8.ir.code.MemberType,com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$1):187:187 -> <init>
     2:3:void <init>(com.android.tools.r8.ir.code.Value,int,com.android.tools.r8.ir.code.MemberType):192:193 -> <init>
@@ -67925,7 +67945,7 @@
     6:6:boolean com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ArraySlot.baseEquals(com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ArraySlot):183:183 -> equals
     6:6:boolean equals(java.lang.Object):215 -> equals
     1:1:int hashCode():203:203 -> hashCode
-com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ArraySlotWithValueIndex -> com.android.tools.r8.internal.DQ:
+com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ArraySlotWithValueIndex -> com.android.tools.r8.internal.EQ:
     com.android.tools.r8.ir.code.Value index -> c
     1:1:void <init>(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.MemberType,com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$1):219:219 -> <init>
     2:3:void <init>(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.MemberType):224:225 -> <init>
@@ -67934,7 +67954,7 @@
     6:6:boolean com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ArraySlot.baseEquals(com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ArraySlot):183:183 -> equals
     6:6:boolean equals(java.lang.Object):247 -> equals
     1:1:int hashCode():235:235 -> hashCode
-com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$BlockState -> com.android.tools.r8.internal.EQ:
+com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$BlockState -> com.android.tools.r8.internal.FQ:
     java.util.LinkedHashMap arraySlotValues -> a
     java.util.LinkedHashSet initializedClasses -> d
     int maxCapacity -> j
@@ -68052,7 +68072,7 @@
     4:4:int com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$BlockState.size(java.util.Set):1372:1372 -> i
     4:4:int size():1364 -> i
     5:9:int size():1364:1368 -> i
-com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$BlockStates -> com.android.tools.r8.internal.FQ:
+com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$BlockStates -> com.android.tools.r8.internal.GQ:
     java.util.LinkedHashMap activeStateAtExit -> a
     int capacity -> b
     boolean $assertionsDisabled -> c
@@ -68089,7 +68109,7 @@
     80:80:void com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$BlockStates.ensureCapacity(com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$BlockState):902:902 -> a
     80:80:void recordActiveStateOnBlockExit(com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$BlockState):933 -> a
     81:83:void recordActiveStateOnBlockExit(com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$BlockState):934:936 -> a
-com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ExistingValue -> com.android.tools.r8.internal.GQ:
+com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ExistingValue -> com.android.tools.r8.internal.HQ:
     com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination this$0 -> b
     com.android.tools.r8.ir.code.Value value -> a
     1:1:void <init>(com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$1):110:110 -> <init>
@@ -68103,7 +68123,7 @@
     140:140:java.lang.String toString():137:137 -> toString
     141:141:java.lang.String toString():137:137 -> toString
     138:138:java.lang.String toString():137:137 -> toString
-com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$FieldAndObject -> com.android.tools.r8.internal.HQ:
+com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$FieldAndObject -> com.android.tools.r8.internal.IQ:
     com.android.tools.r8.graph.DexField field -> a
     com.android.tools.r8.ir.code.Value object -> b
     boolean $assertionsDisabled -> c
@@ -68113,10 +68133,10 @@
     1:1:com.android.tools.r8.graph.DexField access$1100(com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$FieldAndObject):251:251 -> a
     1:5:boolean equals(java.lang.Object):268:272 -> equals
     1:1:int hashCode():263:263 -> hashCode
-com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$FieldValue -> com.android.tools.r8.internal.IQ:
+com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$FieldValue -> com.android.tools.r8.internal.JQ:
     com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$ExistingValue asExistingValue() -> a
     void eliminateRedundantRead(com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.Instruction) -> a
-com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$MaterializableValue -> com.android.tools.r8.internal.JQ:
+com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination$MaterializableValue -> com.android.tools.r8.internal.KQ:
     com.android.tools.r8.ir.optimize.RedundantFieldLoadAndStoreElimination this$0 -> b
     com.android.tools.r8.ir.analysis.value.SingleValue value -> a
     boolean $assertionsDisabled -> c
@@ -68127,7 +68147,7 @@
     4:4:com.android.tools.r8.ir.code.Instruction com.android.tools.r8.ir.analysis.value.SingleValue.createMaterializingInstruction(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.TypeAndLocalInfoSupplier):43:43 -> a
     4:4:void eliminateRedundantRead(com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.Instruction):154 -> a
     5:5:void eliminateRedundantRead(com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.Instruction):153:153 -> a
-com.android.tools.r8.ir.optimize.ReflectionOptimizer -> com.android.tools.r8.internal.nS:
+com.android.tools.r8.ir.optimize.ReflectionOptimizer -> com.android.tools.r8.internal.oS:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():35:35 -> <clinit>
     1:11:void rewriteGetClassOrForNameToConstClass(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode):41:51 -> a
@@ -68199,7 +68219,7 @@
     217:219:void lambda$rewriteSingleGetClassOrForNameToConstClass$1(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InstructionListIterator,java.util.Set,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexClass):146:148 -> a
     220:220:void lambda$rewriteSingleGetClassOrForNameToConstClass$1(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InstructionListIterator,java.util.Set,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexClass):147:147 -> a
     221:223:void lambda$rewriteSingleGetClassOrForNameToConstClass$1(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InstructionListIterator,java.util.Set,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexClass):121:123 -> a
-com.android.tools.r8.ir.optimize.ServiceLoaderRewriter -> com.android.tools.r8.internal.uU:
+com.android.tools.r8.ir.optimize.ServiceLoaderRewriter -> com.android.tools.r8.internal.vU:
     java.util.List serviceLoadMethods -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.androidapi.AndroidApiLevelCompute apiLevelCompute -> c
@@ -68260,7 +68280,7 @@
     273:273:void com.android.tools.r8.graph.CfCode.<init>(com.android.tools.r8.graph.DexType,int,int,java.util.List,java.util.List,java.util.List):176 -> a
     273:273:com.android.tools.r8.graph.CfCode com.android.tools.r8.ir.desugar.ServiceLoaderSourceCode.generate(com.android.tools.r8.graph.DexType,java.util.List,com.android.tools.r8.graph.DexItemFactory):118 -> a
     273:273:com.android.tools.r8.graph.Code lambda$createSynthesizedMethod$2(com.android.tools.r8.graph.DexType,java.util.List,com.android.tools.r8.graph.DexMethod):215 -> a
-com.android.tools.r8.ir.optimize.ServiceLoaderRewriter$Rewriter -> com.android.tools.r8.internal.tU:
+com.android.tools.r8.ir.optimize.ServiceLoaderRewriter$Rewriter -> com.android.tools.r8.internal.uU:
     com.android.tools.r8.ir.code.IRCode code -> a
     com.android.tools.r8.ir.code.InstructionListIterator iterator -> c
     com.android.tools.r8.ir.code.InvokeStatic serviceLoaderLoad -> b
@@ -68277,7 +68297,7 @@
     31:31:void lambda$perform$0(com.android.tools.r8.utils.BooleanBox,com.android.tools.r8.ir.code.Instruction):269 -> a
     32:33:void lambda$perform$0(com.android.tools.r8.utils.BooleanBox,com.android.tools.r8.ir.code.Instruction):269:270 -> a
     34:34:boolean lambda$perform$1(com.android.tools.r8.ir.code.Instruction):274:274 -> a
-com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis -> com.android.tools.r8.internal.VU:
+com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis -> com.android.tools.r8.internal.WU:
     com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$SimpleEffectAnalysisResult NO_RESULT -> a
     boolean $assertionsDisabled -> b
     1:214:void <clinit>():31:244 -> <clinit>
@@ -68307,7 +68327,7 @@
     141:141:com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$SimpleEffectAnalysisResult triggersClassInitializationBeforeAnyStaticRead(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.graph.ProgramMethod):338 -> a
     142:142:com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$InstructionEffect lambda$triggersClassInitializationBeforeAnyStaticRead$1(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.Instruction):342:342 -> a
     143:161:com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$InstructionEffect lambda$triggersClassInitializationBeforeAnyStaticRead$1(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.Instruction):341:359 -> a
-com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$1 -> com.android.tools.r8.internal.OU:
+com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$1 -> com.android.tools.r8.internal.PU:
     com.android.tools.r8.utils.IntBox val$visitedInstructions -> e
     com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$SimpleEffectAnalysisResultBuilder val$builder -> g
     com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$InstructionAnalysis val$analysis -> f
@@ -68335,21 +68355,21 @@
     47:47:com.android.tools.r8.utils.TraversalContinuation joiner(com.android.tools.r8.utils.DepthFirstSearchWorkListBase$DFSNodeWithState,java.util.List):301 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     48:48:com.android.tools.r8.utils.TraversalContinuation joiner(com.android.tools.r8.utils.DepthFirstSearchWorkListBase$DFSNodeWithState,java.util.List):303:303 -> a
-com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$InstructionAnalysis -> com.android.tools.r8.internal.PU:
+com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$InstructionAnalysis -> com.android.tools.r8.internal.QU:
     com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$InstructionEffect analyze(com.android.tools.r8.ir.code.Instruction) -> a
     int maxNumberOfInstructions() -> a
     1:1:java.util.List getSuccessors(com.android.tools.r8.ir.code.BasicBlock):161:161 -> a
-com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$InstructionEffect$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.QU:
+com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$InstructionEffect$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.RU:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
     boolean com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$InstructionEffect.$assertionsDisabled -> a
     1:1:void com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$InstructionEffect.<clinit>():33:33 -> <clinit>
-com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultState$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.RU:
+com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultState$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.SU:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
     boolean com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultState.isNotComputed() -> a
     boolean com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultState.isPartial() -> b
-com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultStateWithPartialBlocks -> com.android.tools.r8.internal.SU:
+com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultStateWithPartialBlocks -> com.android.tools.r8.internal.TU:
     java.util.List failingBlocks -> b
     com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultState state -> a
     boolean $assertionsDisabled -> c
@@ -68362,7 +68382,7 @@
     9:12:com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultStateWithPartialBlocks joinChildren(java.util.List):128 -> a
     13:25:com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultStateWithPartialBlocks joinChildren(java.util.List):130:142 -> a
     1:1:java.util.List access$500(com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultStateWithPartialBlocks):110:110 -> b
-com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$SimpleEffectAnalysisResult -> com.android.tools.r8.internal.TU:
+com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$SimpleEffectAnalysisResult -> com.android.tools.r8.internal.UU:
     java.util.List satisfyingInstructions -> b
     java.util.List topmostNotSatisfiedBlocks -> c
     com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultState result -> a
@@ -68375,7 +68395,7 @@
     2:2:java.util.List getTopmostNotSatisfiedBlocks():192:192 -> a
     1:1:boolean isNotSatisfied():200:200 -> b
     1:1:boolean isPartial():208:208 -> c
-com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$SimpleEffectAnalysisResultBuilder -> com.android.tools.r8.internal.UU:
+com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$SimpleEffectAnalysisResultBuilder -> com.android.tools.r8.internal.VU:
     java.util.List failingBlocksForPartialResults -> b
     java.util.List satisfyingInstructions -> a
     com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultState result -> c
@@ -68384,7 +68404,7 @@
     1:1:void setResult(com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$ResultState):231:231 -> a
     2:4:com.android.tools.r8.ir.optimize.SimpleDominatingEffectAnalysis$SimpleEffectAnalysisResult build():235:237 -> a
     1:1:void fail():219:219 -> b
-com.android.tools.r8.ir.optimize.SwitchCaseEliminator -> com.android.tools.r8.internal.SX:
+com.android.tools.r8.ir.optimize.SwitchCaseEliminator -> com.android.tools.r8.internal.TX:
     com.android.tools.r8.ir.code.BasicBlock alwaysHitTarget -> f
     boolean $assertionsDisabled -> j
     com.android.tools.r8.ir.code.InstructionListIterator iterator -> c
@@ -68470,7 +68490,7 @@
     99:100:boolean optimize():105 -> f
     101:101:void com.android.tools.r8.ir.optimize.SwitchCaseEliminator.replaceSwitchByGoto():153:153 -> f
     101:101:boolean optimize():105 -> f
-com.android.tools.r8.ir.optimize.SwitchMapCollector -> com.android.tools.r8.internal.TX:
+com.android.tools.r8.ir.optimize.SwitchMapCollector -> com.android.tools.r8.internal.UX:
     com.android.tools.r8.graph.DexString switchMapPrefix -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.graph.DexString kotlinSwitchMapPrefix -> c
@@ -68597,19 +68617,19 @@
     134:151:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus com.android.tools.r8.ir.optimize.classinliner.ClassInliner.computeClassEligible(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):285:302 -> a
     134:151:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus com.android.tools.r8.ir.optimize.classinliner.ClassInliner.isClassEligible(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):270 -> a
     134:151:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus lambda$processMethodCode$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):160 -> a
-    152:152:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    152:152:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     152:152:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus com.android.tools.r8.ir.optimize.classinliner.ClassInliner.computeClassEligible(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):305 -> a
     152:152:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus com.android.tools.r8.ir.optimize.classinliner.ClassInliner.isClassEligible(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):270 -> a
     152:152:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus lambda$processMethodCode$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):160 -> a
     153:154:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus com.android.tools.r8.ir.optimize.classinliner.ClassInliner.computeClassEligible(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):305:306 -> a
     153:154:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus com.android.tools.r8.ir.optimize.classinliner.ClassInliner.isClassEligible(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):270 -> a
     153:154:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus lambda$processMethodCode$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):160 -> a
-    155:155:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
+    155:155:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
     155:155:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus com.android.tools.r8.ir.optimize.classinliner.ClassInliner.computeClassEligible(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):306 -> a
     155:155:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus com.android.tools.r8.ir.optimize.classinliner.ClassInliner.isClassEligible(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):270 -> a
     155:155:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus lambda$processMethodCode$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):160 -> a
-    156:156:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    156:156:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
+    156:156:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    156:156:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
     156:156:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus com.android.tools.r8.ir.optimize.classinliner.ClassInliner.computeClassEligible(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):306 -> a
     156:156:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus com.android.tools.r8.ir.optimize.classinliner.ClassInliner.isClassEligible(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):270 -> a
     156:156:com.android.tools.r8.ir.optimize.classinliner.ClassInliner$EligibilityStatus lambda$processMethodCode$1(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass):160 -> a
@@ -69065,10 +69085,10 @@
     1:1:com.android.tools.r8.graph.DexProgramClass getEligibleClass():130:130 -> b
     2:2:boolean lambda$forceInlineIndirectMethodInvocations$0(com.android.tools.r8.graph.ProgramMethod):511:511 -> b
     3:3:java.lang.RuntimeException reportUnknownFieldReadFromSingleton(com.android.tools.r8.ir.code.InstanceGet):820:820 -> b
-    4:4:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> b
+    4:4:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> b
     4:4:java.lang.RuntimeException reportUnknownFieldReadFromSingleton(com.android.tools.r8.ir.code.InstanceGet):821 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    5:5:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> b
+    5:5:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> b
     5:5:java.lang.RuntimeException reportUnknownFieldReadFromSingleton(com.android.tools.r8.ir.code.InstanceGet):821 -> b
     6:6:java.lang.RuntimeException reportUnknownFieldReadFromSingleton(com.android.tools.r8.ir.code.InstanceGet):0:0 -> b
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":834,"2":835,"3":836}}
@@ -69195,7 +69215,7 @@
     1:1:void <clinit>():9:9 -> <clinit>
     1:1:void <init>():11:11 -> <init>
     1:1:com.android.tools.r8.ir.optimize.classinliner.analysis.DefaultAnalysisContext getInstance():14:14 -> b
-com.android.tools.r8.ir.optimize.classinliner.analysis.InternalNonEmptyParameterUsage -> com.android.tools.r8.internal.nu:
+com.android.tools.r8.ir.optimize.classinliner.analysis.InternalNonEmptyParameterUsage -> com.android.tools.r8.internal.ou:
     java.util.Set methodCallsWithParameterAsReceiver -> c
     boolean isParameterReturned -> e
     boolean isParameterUsedAsLock -> f
@@ -69233,7 +69253,7 @@
     1:4:com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsage setParameterReturned():25 -> i
     1:4:com.android.tools.r8.ir.optimize.classinliner.analysis.InternalNonEmptyParameterUsage com.android.tools.r8.ir.optimize.classinliner.analysis.InternalNonEmptyParameterUsage.setParameterUsedAsLock():184:187 -> j
     1:4:com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsage setParameterUsedAsLock():25 -> j
-com.android.tools.r8.ir.optimize.classinliner.analysis.InternalNonEmptyParameterUsage$Builder -> com.android.tools.r8.internal.mu:
+com.android.tools.r8.ir.optimize.classinliner.analysis.InternalNonEmptyParameterUsage$Builder -> com.android.tools.r8.internal.nu:
     com.android.tools.r8.com.google.common.collect.ImmutableSet$Builder methodCallsWithParameterAsReceiverBuilder -> c
     boolean isParameterReturned -> e
     com.android.tools.r8.com.google.common.collect.ImmutableSet$Builder fieldsReadFromParameterBuilder -> b
@@ -69272,7 +69292,7 @@
     4:4:com.android.tools.r8.ir.optimize.classinliner.analysis.InternalNonEmptyParameterUsage$Builder joinIsReceiverUsedAsLock(boolean):300:300 -> c
     5:5:com.android.tools.r8.ir.optimize.classinliner.analysis.InternalNonEmptyParameterUsage$Builder setParameterReturned():310:310 -> c
     1:1:com.android.tools.r8.ir.optimize.classinliner.analysis.InternalNonEmptyParameterUsage$Builder setParameterUsedAsLock():315:315 -> d
-com.android.tools.r8.ir.optimize.classinliner.analysis.NonEmptyParameterUsage -> com.android.tools.r8.internal.IH:
+com.android.tools.r8.ir.optimize.classinliner.analysis.NonEmptyParameterUsage -> com.android.tools.r8.internal.JH:
     boolean isParameterReturned -> e
     boolean isParameterUsedAsLock -> f
     java.util.Set castsWithParameter -> a
@@ -69300,7 +69320,7 @@
     1:1:com.android.tools.r8.com.google.common.collect.Multiset getMethodCallsWithParameterAsReceiver():86:86 -> n
     1:1:boolean isParameterMutated():91:91 -> o
     1:1:boolean isParameterUsedAsLock():101:101 -> p
-com.android.tools.r8.ir.optimize.classinliner.analysis.NonEmptyParameterUsagePerContext -> com.android.tools.r8.internal.JH:
+com.android.tools.r8.ir.optimize.classinliner.analysis.NonEmptyParameterUsagePerContext -> com.android.tools.r8.internal.KH:
     java.util.Map backing -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():14:14 -> <clinit>
@@ -69381,7 +69401,7 @@
     1:1:int getNumberOfContexts():99:99 -> d
     1:6:boolean equals(java.lang.Object):133:138 -> equals
     1:1:int hashCode():143:143 -> hashCode
-com.android.tools.r8.ir.optimize.classinliner.analysis.NonEmptyParameterUsages -> com.android.tools.r8.internal.KH:
+com.android.tools.r8.ir.optimize.classinliner.analysis.NonEmptyParameterUsages -> com.android.tools.r8.internal.LH:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ObjectMap backing -> a
     com.android.tools.r8.ir.code.AssumeAndCheckCastAliasedValueConfiguration aliasedValueConfiguration -> b
     boolean $assertionsDisabled -> c
@@ -69476,7 +69496,7 @@
     10:10:com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsages externalize():113 -> e
     1:5:boolean equals(java.lang.Object):228:232 -> equals
     1:1:int hashCode():237:237 -> hashCode
-com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsage -> com.android.tools.r8.internal.PL:
+com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsage -> com.android.tools.r8.internal.QL:
     1:1:void <init>():11:11 -> <init>
     com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsage addCastWithParameter(com.android.tools.r8.graph.DexType) -> a
     com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsage addFieldReadFromParameter(com.android.tools.r8.graph.DexField) -> a
@@ -69492,13 +69512,13 @@
     com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsage setParameterReturned() -> i
     com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsage setParameterUsedAsLock() -> j
     1:1:com.android.tools.r8.ir.optimize.classinliner.analysis.UnknownParameterUsage top():91:91 -> k
-com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsagePerContext -> com.android.tools.r8.internal.QL:
+com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsagePerContext -> com.android.tools.r8.internal.RL:
     1:1:void <init>():9:9 -> <init>
     com.android.tools.r8.ir.optimize.classinliner.analysis.NonEmptyParameterUsagePerContext asKnown() -> a
     com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsage get(com.android.tools.r8.ir.optimize.classinliner.analysis.AnalysisContext) -> a
     com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsagePerContext rebuild(java.util.function.BiFunction) -> a
     com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsagePerContext externalize() -> b
-com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsages -> com.android.tools.r8.internal.RL:
+com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsages -> com.android.tools.r8.internal.SL:
     1:1:void <init>():10:10 -> <init>
     com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsagePerContext get(int) -> a
     com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsages put(int,com.android.tools.r8.ir.optimize.classinliner.analysis.ParameterUsagePerContext) -> a
@@ -69789,7 +69809,7 @@
     67:72:boolean com.android.tools.r8.ir.optimize.classinliner.constraint.ConditionalClassInlinerMethodConstraint.hasUnsafeCast(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.ir.optimize.classinliner.analysis.NonEmptyParameterUsage):145:150 -> a
     67:72:boolean isEligibleForStaticGetClassInlining(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass,int,com.android.tools.r8.ir.analysis.value.objectstate.ObjectState,com.android.tools.r8.graph.ProgramMethod):120 -> a
     73:84:boolean isEligibleForStaticGetClassInlining(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexProgramClass,int,com.android.tools.r8.ir.analysis.value.objectstate.ObjectState,com.android.tools.r8.graph.ProgramMethod):123:134 -> a
-com.android.tools.r8.ir.optimize.controlflow.SwitchCaseAnalyzer -> com.android.tools.r8.internal.RX:
+com.android.tools.r8.ir.optimize.controlflow.SwitchCaseAnalyzer -> com.android.tools.r8.internal.SX:
     com.android.tools.r8.ir.optimize.controlflow.SwitchCaseAnalyzer INSTANCE -> a
     boolean $assertionsDisabled -> b
     1:3:void <clinit>():15:17 -> <clinit>
@@ -71362,7 +71382,7 @@
     com.android.tools.r8.graph.DexType enumClass -> a
     1:1:void <init>(com.android.tools.r8.graph.DexType,com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceMap,com.android.tools.r8.ir.optimize.enums.EnumValueOptimizer$1):373:373 -> <init>
     2:7:void <init>(com.android.tools.r8.graph.DexType,com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceMap):386:391 -> <init>
-com.android.tools.r8.ir.optimize.enums.LocalEnumUnboxingUtilityClass -> com.android.tools.r8.internal.FC:
+com.android.tools.r8.ir.optimize.enums.LocalEnumUnboxingUtilityClass -> com.android.tools.r8.internal.GC:
     com.android.tools.r8.ir.optimize.enums.EnumDataMap$EnumData data -> c
     com.android.tools.r8.graph.DexProgramClass localUtilityClass -> b
     boolean $assertionsDisabled -> d
@@ -71397,9 +71417,9 @@
     115:118:com.android.tools.r8.graph.Code lambda$ensureValueOfMethod$3(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.graph.DexMethod):110:113 -> a
     119:126:com.android.tools.r8.graph.ProgramMethod internalEnsureMethod(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator):122:129 -> a
     127:127:com.android.tools.r8.graph.ProgramMethod internalEnsureMethod(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator):123:123 -> a
-    128:128:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):585:585 -> a
+    128:128:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):577:577 -> a
     128:128:com.android.tools.r8.graph.ProgramMethod internalEnsureMethod(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator):123 -> a
-    129:129:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):577:577 -> a
+    129:129:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):569:569 -> a
     129:129:com.android.tools.r8.graph.ProgramMethod internalEnsureMethod(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator):123 -> a
     130:134:void lambda$internalEnsureMethod$4(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator,com.android.tools.r8.synthesis.SyntheticMethodBuilder):132:136 -> a
     135:135:com.android.tools.r8.graph.DexProgramClass getDefinition():141:141 -> a
@@ -71408,7 +71428,7 @@
     1:5:com.android.tools.r8.graph.ProgramMethod ensureValueOfMethod(com.android.tools.r8.graph.AppView):101:105 -> c
     6:6:com.android.tools.r8.graph.ProgramMethod ensureValueOfMethod(com.android.tools.r8.graph.AppView):102:102 -> c
     7:7:com.android.tools.r8.graph.DexType getType():145:145 -> c
-com.android.tools.r8.ir.optimize.enums.LocalEnumUnboxingUtilityClass$Builder -> com.android.tools.r8.internal.EC:
+com.android.tools.r8.ir.optimize.enums.LocalEnumUnboxingUtilityClass$Builder -> com.android.tools.r8.internal.FC:
     com.android.tools.r8.ir.optimize.enums.EnumDataMap$EnumData data -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.graph.DexProgramClass enumToUnbox -> c
@@ -71420,7 +71440,7 @@
     1:2:com.android.tools.r8.ir.optimize.enums.LocalEnumUnboxingUtilityClass build():168:169 -> a
     3:3:void lambda$createClass$0(com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):180:180 -> a
     1:9:com.android.tools.r8.graph.DexProgramClass createClass():173:181 -> b
-com.android.tools.r8.ir.optimize.enums.SharedEnumUnboxingUtilityClass -> com.android.tools.r8.internal.IU:
+com.android.tools.r8.ir.optimize.enums.SharedEnumUnboxingUtilityClass -> com.android.tools.r8.internal.JU:
     com.android.tools.r8.graph.DexProgramClass sharedUtilityClass -> b
     com.android.tools.r8.graph.ProgramMethod valuesMethod -> c
     1:3:void <init>(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod):56:58 -> <init>
@@ -71428,9 +71448,9 @@
     6:6:com.android.tools.r8.graph.Code lambda$ensureCheckNotZeroMethod$0(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexMethod):85:85 -> a
     7:14:com.android.tools.r8.graph.ProgramMethod internalEnsureMethod(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator):138:145 -> a
     15:15:com.android.tools.r8.graph.ProgramMethod internalEnsureMethod(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator):139:139 -> a
-    16:16:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):585:585 -> a
+    16:16:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):577:577 -> a
     16:16:com.android.tools.r8.graph.ProgramMethod internalEnsureMethod(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator):139 -> a
-    17:17:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):577:577 -> a
+    17:17:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.synthesis.SyntheticItems.ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):569:569 -> a
     17:17:com.android.tools.r8.graph.ProgramMethod internalEnsureMethod(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator):139 -> a
     18:22:void lambda$internalEnsureMethod$5(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator,com.android.tools.r8.synthesis.SyntheticMethodBuilder):148:152 -> a
     23:23:com.android.tools.r8.graph.DexProgramClass getDefinition():157:157 -> a
@@ -71450,7 +71470,7 @@
     7:7:com.android.tools.r8.graph.Code lambda$ensureOrdinalMethod$4(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexMethod):125:125 -> e
     1:5:com.android.tools.r8.graph.ProgramMethod ensureOrdinalMethod(com.android.tools.r8.graph.AppView):120:124 -> f
     6:6:com.android.tools.r8.graph.ProgramMethod ensureOrdinalMethod(com.android.tools.r8.graph.AppView):121:121 -> f
-com.android.tools.r8.ir.optimize.enums.SharedEnumUnboxingUtilityClass$Builder -> com.android.tools.r8.internal.HU:
+com.android.tools.r8.ir.optimize.enums.SharedEnumUnboxingUtilityClass$Builder -> com.android.tools.r8.internal.IU:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.shaking.FieldAccessInfoCollectionModifier$Builder fieldAccessInfoCollectionModifierBuilder -> d
@@ -71598,7 +71618,7 @@
     123:123:java.lang.String toString():120:120 -> toString
     124:124:java.lang.String toString():120:120 -> toString
     121:121:java.lang.String toString():120:120 -> toString
-com.android.tools.r8.ir.optimize.enums.eligibility.Reason -> com.android.tools.r8.internal.kQ:
+com.android.tools.r8.ir.optimize.enums.eligibility.Reason -> com.android.tools.r8.internal.lQ:
     com.android.tools.r8.ir.optimize.enums.eligibility.Reason INVALID_INVOKE_ON_ARRAY -> p
     com.android.tools.r8.ir.optimize.enums.eligibility.Reason INVALID_INVOKE_CUSTOM -> o
     com.android.tools.r8.ir.optimize.enums.eligibility.Reason INVALID_FIELD_PUT -> r
@@ -71624,7 +71644,7 @@
     com.android.tools.r8.ir.optimize.enums.eligibility.Reason OTHER_UNSUPPORTED_INSTRUCTION -> w
     1:28:void <clinit>():12:39 -> <clinit>
     1:1:void <init>():11:11 -> <init>
-com.android.tools.r8.ir.optimize.enums.eligibility.Reason$IllegalInvokeWithImpreciseParameterTypeReason -> com.android.tools.r8.internal.hQ:
+com.android.tools.r8.ir.optimize.enums.eligibility.Reason$IllegalInvokeWithImpreciseParameterTypeReason -> com.android.tools.r8.internal.iQ:
     com.android.tools.r8.graph.DexMethod invokedMethod -> x
     1:2:void <init>(com.android.tools.r8.graph.DexMethod):70:71 -> <init>
     1:1:java.lang.String toString():0:0 -> toString
@@ -71633,11 +71653,11 @@
     84:84:java.lang.String toString():81:81 -> toString
     85:85:java.lang.String toString():81:81 -> toString
     82:82:java.lang.String toString():81:81 -> toString
-com.android.tools.r8.ir.optimize.enums.eligibility.Reason$StringReason -> com.android.tools.r8.internal.iQ:
+com.android.tools.r8.ir.optimize.enums.eligibility.Reason$StringReason -> com.android.tools.r8.internal.jQ:
     java.lang.String message -> x
     1:2:void <init>(java.lang.String):51:52 -> <init>
     1:1:java.lang.String toString():62:62 -> toString
-com.android.tools.r8.ir.optimize.enums.eligibility.Reason$UnsupportedLibraryInvokeReason -> com.android.tools.r8.internal.jQ:
+com.android.tools.r8.ir.optimize.enums.eligibility.Reason$UnsupportedLibraryInvokeReason -> com.android.tools.r8.internal.kQ:
     com.android.tools.r8.graph.DexMethod invokedMethod -> x
     1:2:void <init>(com.android.tools.r8.graph.DexMethod):207:208 -> <init>
     1:1:java.lang.String toString():0:0 -> toString
@@ -71772,18 +71792,17 @@
     int getReadBits() -> h
     boolean isDead() -> i
     boolean valueHasBeenPropagated() -> j
-com.android.tools.r8.ir.optimize.info.LibraryOptimizationInfoInitializerFeedback -> com.android.tools.r8.internal.MB:
+com.android.tools.r8.ir.optimize.info.LibraryOptimizationInfoInitializerFeedback -> com.android.tools.r8.internal.NB:
     com.android.tools.r8.ir.optimize.info.LibraryOptimizationInfoInitializerFeedback INSTANCE -> b
     1:1:void <clinit>():12:12 -> <clinit>
     1:1:void <init>():15:15 -> <init>
-    1:1:void recordLibraryFieldHasAbstractValue(com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.ir.analysis.value.AbstractValue):23:23 -> a
     1:1:com.android.tools.r8.ir.optimize.info.LibraryOptimizationInfoInitializerFeedback getInstance():18:18 -> c
-com.android.tools.r8.ir.optimize.info.MemberOptimizationInfo -> com.android.tools.r8.internal.aE:
+com.android.tools.r8.ir.optimize.info.MemberOptimizationInfo -> com.android.tools.r8.internal.bE:
     com.android.tools.r8.ir.optimize.info.MemberOptimizationInfo toMutableOptimizationInfo() -> a
     com.android.tools.r8.ir.optimize.info.MutableFieldOptimizationInfo asMutableFieldOptimizationInfo() -> b
     com.android.tools.r8.ir.optimize.info.MutableMethodOptimizationInfo asMutableMethodOptimizationInfo() -> c
     boolean isMutableOptimizationInfo() -> d
-com.android.tools.r8.ir.optimize.info.MethodOptimizationInfo -> com.android.tools.r8.internal.QE:
+com.android.tools.r8.ir.optimize.info.MethodOptimizationInfo -> com.android.tools.r8.internal.RE:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():22:22 -> <clinit>
     1:1:void <init>():22:22 -> <init>
@@ -71816,7 +71835,7 @@
     boolean isMultiCallerMethod() -> x
     boolean isReachabilitySensitive() -> y
     com.android.tools.r8.utils.OptionalBool isReturnValueUsed() -> z
-com.android.tools.r8.ir.optimize.info.MethodOptimizationInfoCollector -> com.android.tools.r8.internal.SE:
+com.android.tools.r8.ir.optimize.info.MethodOptimizationInfoCollector -> com.android.tools.r8.internal.TE:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> c
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.ir.optimize.typechecks.CheckCastAndInstanceOfMethodSpecialization checkCastAndInstanceOfMethodSpecialization -> b
@@ -72191,14 +72210,14 @@
     1185:1230:boolean isNonNullOnNormalExit(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.DominatorTree,java.util.Set):1112 -> a
     1231:1231:boolean lambda$isNonNullOnNormalExit$3(com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.ir.code.Instruction):1083:1083 -> a
     boolean lambda$computeMayHaveSideEffects$2(com.android.tools.r8.graph.DexProgramClass) -> b
-com.android.tools.r8.ir.optimize.info.MethodOptimizationInfoCollector$InstructionEffect -> com.android.tools.r8.internal.RE:
+com.android.tools.r8.ir.optimize.info.MethodOptimizationInfoCollector$InstructionEffect -> com.android.tools.r8.internal.SE:
     com.android.tools.r8.ir.optimize.info.MethodOptimizationInfoCollector$InstructionEffect NO_EFFECT -> e
     com.android.tools.r8.ir.optimize.info.MethodOptimizationInfoCollector$InstructionEffect OTHER_EFFECT -> d
     com.android.tools.r8.ir.optimize.info.MethodOptimizationInfoCollector$InstructionEffect CONDITIONAL_EFFECT -> c
     com.android.tools.r8.ir.optimize.info.MethodOptimizationInfoCollector$InstructionEffect DESIRED_EFFECT -> b
     1:4:void <clinit>():671:674 -> <clinit>
     1:1:void <init>(java.lang.String,int):670:670 -> <init>
-com.android.tools.r8.ir.optimize.info.MutableFieldOptimizationInfo -> com.android.tools.r8.internal.uG:
+com.android.tools.r8.ir.optimize.info.MutableFieldOptimizationInfo -> com.android.tools.r8.internal.vG:
     boolean $assertionsDisabled -> e
     com.android.tools.r8.ir.analysis.type.DynamicType dynamicType -> d
     int flags -> b
@@ -72226,7 +72245,7 @@
     1:1:void markAsPropagated():114:114 -> l
     1:1:void markCannotBeKept():87:87 -> m
     1:5:com.android.tools.r8.ir.optimize.info.MutableFieldOptimizationInfo mutableCopy():49:53 -> n
-com.android.tools.r8.ir.optimize.info.MutableMethodOptimizationInfo -> com.android.tools.r8.internal.vG:
+com.android.tools.r8.ir.optimize.info.MutableMethodOptimizationInfo -> com.android.tools.r8.internal.wG:
     com.android.tools.r8.ir.optimize.enums.classification.EnumUnboxerMethodClassification enumUnboxerMethodClassification -> g
     java.util.BitSet nonNullParamOrThrow -> m
     java.util.BitSet nonNullParamOnNormalExits -> n
@@ -72392,20 +72411,20 @@
     1:1:boolean isMultiCallerMethod():480:480 -> x
     1:1:boolean isReachabilitySensitive():385:385 -> y
     1:1:com.android.tools.r8.utils.OptionalBool isReturnValueUsed():485:485 -> z
-com.android.tools.r8.ir.optimize.info.OptimizationFeedback -> com.android.tools.r8.internal.RK:
+com.android.tools.r8.ir.optimize.info.OptimizationFeedback -> com.android.tools.r8.internal.SK:
     1:1:void <init>():20:20 -> <init>
     void modifyAppInfoWithLiveness(java.util.function.Consumer) -> a
     1:1:com.android.tools.r8.ir.optimize.info.OptimizationFeedbackSimple com.android.tools.r8.ir.optimize.info.OptimizationFeedback.getSimple():44:44 -> a
     1:1:com.android.tools.r8.ir.optimize.info.OptimizationFeedbackSimple getSimpleFeedback():48 -> a
     2:2:void fixupOptimizationInfos(java.lang.Iterable,java.util.concurrent.ExecutorService,com.android.tools.r8.ir.optimize.info.OptimizationFeedback$OptimizationInfoFixer):62:62 -> a
     3:3:void lambda$fixupOptimizationInfos$0(com.android.tools.r8.ir.optimize.info.OptimizationFeedback$OptimizationInfoFixer,com.android.tools.r8.graph.DexProgramClass):63:63 -> a
-com.android.tools.r8.ir.optimize.info.OptimizationFeedback$OptimizationInfoFixer -> com.android.tools.r8.internal.QK:
+com.android.tools.r8.ir.optimize.info.OptimizationFeedback$OptimizationInfoFixer -> com.android.tools.r8.internal.RK:
     void fixup(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.ir.optimize.info.MutableMethodOptimizationInfo) -> a
     void fixup(com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.ir.optimize.info.MutableFieldOptimizationInfo) -> a
     1:3:void fixup(com.android.tools.r8.graph.DexEncodedMember):30:32 -> a
     4:4:void lambda$fixup$0(com.android.tools.r8.ir.optimize.info.MemberOptimizationInfo,com.android.tools.r8.graph.DexEncodedField):33:33 -> a
     5:5:void lambda$fixup$1(com.android.tools.r8.ir.optimize.info.MemberOptimizationInfo,com.android.tools.r8.graph.DexEncodedMethod):34:34 -> a
-com.android.tools.r8.ir.optimize.info.OptimizationFeedbackDelayed -> com.android.tools.r8.internal.SK:
+com.android.tools.r8.ir.optimize.info.OptimizationFeedbackDelayed -> com.android.tools.r8.internal.TK:
     java.util.Map fieldOptimizationInfos -> b
     java.util.Map methodOptimizationInfos -> c
     java.util.Map processed -> d
@@ -72506,7 +72525,7 @@
     void markMethodCannotBeKept(com.android.tools.r8.graph.DexEncodedMethod) -> f
 com.android.tools.r8.ir.optimize.info.OptimizationFeedbackIgnore$1 -> com.android.tools.r8.ir.optimize.info.a:
     1:1:void <init>():26:26 -> <init>
-com.android.tools.r8.ir.optimize.info.OptimizationFeedbackSimple -> com.android.tools.r8.internal.TK:
+com.android.tools.r8.ir.optimize.info.OptimizationFeedbackSimple -> com.android.tools.r8.internal.UK:
     com.android.tools.r8.ir.optimize.info.OptimizationFeedbackSimple INSTANCE -> a
     1:1:void <clinit>():28:28 -> <clinit>
     1:1:void <init>():30:30 -> <init>
@@ -72715,7 +72734,7 @@
     1:6:boolean equals(java.lang.Object):87:92 -> equals
     1:1:int hashCode():79:79 -> hashCode
     1:1:java.lang.String toString():97:97 -> toString
-com.android.tools.r8.ir.optimize.info.field.NonTrivialInstanceFieldInitializationInfoCollection -> com.android.tools.r8.internal.LH:
+com.android.tools.r8.ir.optimize.info.field.NonTrivialInstanceFieldInitializationInfoCollection -> com.android.tools.r8.internal.MH:
     java.util.TreeMap infos -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():23:23 -> <clinit>
@@ -72799,7 +72818,7 @@
     5:5:com.android.tools.r8.ir.optimize.info.initializer.InstanceInitializerInfoCollection empty():23:23 -> a
     com.android.tools.r8.ir.optimize.info.initializer.InstanceInitializerInfo get(com.android.tools.r8.ir.code.InvokeDirect) -> b
     com.android.tools.r8.ir.optimize.info.initializer.InstanceInitializerInfo getContextInsensitive() -> c
-com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo -> com.android.tools.r8.internal.NH:
+com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo -> com.android.tools.r8.internal.OH:
     com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoCollection fieldInitializationInfos -> b
     boolean $assertionsDisabled -> e
     com.android.tools.r8.ir.analysis.fieldvalueanalysis.AbstractFieldSet readSet -> c
@@ -72824,7 +72843,7 @@
     130:130:java.lang.String toString():127:127 -> toString
     131:131:java.lang.String toString():127:127 -> toString
     128:128:java.lang.String toString():127:127 -> toString
-com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo$Builder -> com.android.tools.r8.internal.MH:
+com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo$Builder -> com.android.tools.r8.internal.NH:
     com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoCollection instanceFieldInitializationInfos -> a
     boolean $assertionsDisabled -> e
     com.android.tools.r8.ir.analysis.fieldvalueanalysis.AbstractFieldSet readSet -> c
@@ -72894,20 +72913,20 @@
     1:16:com.android.tools.r8.ir.optimize.Inliner$Reason computeInliningReason(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.DefaultInliningOracle,com.android.tools.r8.ir.conversion.MethodProcessor):39:54 -> a
     17:23:boolean com.android.tools.r8.ir.optimize.inliner.DefaultInliningReasonStrategy.isSingleCallerInliningTarget(com.android.tools.r8.graph.ProgramMethod):68:74 -> a
     17:23:com.android.tools.r8.ir.optimize.Inliner$Reason computeInliningReason(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.DefaultInliningOracle,com.android.tools.r8.ir.conversion.MethodProcessor):56 -> a
-    24:24:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    24:24:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     24:24:boolean com.android.tools.r8.ir.optimize.inliner.DefaultInliningReasonStrategy.isSingleCallerInliningTarget(com.android.tools.r8.graph.ProgramMethod):74 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     24:24:com.android.tools.r8.ir.optimize.Inliner$Reason computeInliningReason(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.DefaultInliningOracle,com.android.tools.r8.ir.conversion.MethodProcessor):56 -> a
-    25:25:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    25:25:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     25:25:boolean com.android.tools.r8.ir.optimize.inliner.DefaultInliningReasonStrategy.isSingleCallerInliningTarget(com.android.tools.r8.graph.ProgramMethod):74 -> a
     25:25:com.android.tools.r8.ir.optimize.Inliner$Reason computeInliningReason(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.DefaultInliningOracle,com.android.tools.r8.ir.conversion.MethodProcessor):56 -> a
     26:26:boolean com.android.tools.r8.ir.optimize.inliner.DefaultInliningReasonStrategy.isSingleCallerInliningTarget(com.android.tools.r8.graph.ProgramMethod):74:74 -> a
     26:26:com.android.tools.r8.ir.optimize.Inliner$Reason computeInliningReason(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.DefaultInliningOracle,com.android.tools.r8.ir.conversion.MethodProcessor):56 -> a
-    27:27:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    27:27:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     27:27:boolean com.android.tools.r8.ir.optimize.inliner.DefaultInliningReasonStrategy.isSingleCallerInliningTarget(com.android.tools.r8.graph.ProgramMethod):75 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     27:27:com.android.tools.r8.ir.optimize.Inliner$Reason computeInliningReason(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.DefaultInliningOracle,com.android.tools.r8.ir.conversion.MethodProcessor):56 -> a
-    28:28:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    28:28:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     28:28:boolean com.android.tools.r8.ir.optimize.inliner.DefaultInliningReasonStrategy.isSingleCallerInliningTarget(com.android.tools.r8.graph.ProgramMethod):75 -> a
     28:28:com.android.tools.r8.ir.optimize.Inliner$Reason computeInliningReason(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.DefaultInliningOracle,com.android.tools.r8.ir.conversion.MethodProcessor):56 -> a
     29:29:boolean com.android.tools.r8.ir.optimize.inliner.DefaultInliningReasonStrategy.isSingleCallerInliningTarget(com.android.tools.r8.graph.ProgramMethod):75:75 -> a
@@ -72976,7 +72995,7 @@
     boolean verifyIRCacheIsEmpty() -> c
 com.android.tools.r8.ir.optimize.inliner.InliningReasonStrategy -> com.android.tools.r8.internal.Tp:
     com.android.tools.r8.ir.optimize.Inliner$Reason computeInliningReason(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.DefaultInliningOracle,com.android.tools.r8.ir.conversion.MethodProcessor) -> a
-com.android.tools.r8.ir.optimize.inliner.NopWhyAreYouNotInliningReporter -> com.android.tools.r8.internal.PH:
+com.android.tools.r8.ir.optimize.inliner.NopWhyAreYouNotInliningReporter -> com.android.tools.r8.internal.QH:
     com.android.tools.r8.ir.optimize.inliner.NopWhyAreYouNotInliningReporter INSTANCE -> a
     1:1:void <clinit>():16:16 -> <clinit>
     1:1:void <init>():19:19 -> <init>
@@ -73116,23 +73135,23 @@
     1:1:void reportRecursiveMethod():227:227 -> t
     1:1:void reportUnknownTarget():232:232 -> u
     1:2:boolean unsetReasonHasBeenReportedFlag():288:289 -> v
-com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraph -> com.android.tools.r8.internal.XF:
+com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraph -> com.android.tools.r8.internal.YF:
     1:1:void <init>(java.util.Map):16:16 -> <init>
     1:1:com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraphBuilder builder(com.android.tools.r8.graph.AppView):20:20 -> a
-com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraphBuilder -> com.android.tools.r8.internal.YF:
+com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraphBuilder -> com.android.tools.r8.internal.ZF:
     1:1:void <init>(com.android.tools.r8.graph.AppView):21:21 -> <init>
     1:1:com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerNode com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraphBuilder.createNode(com.android.tools.r8.graph.ProgramMethod):26:26 -> a
     1:1:com.android.tools.r8.ir.conversion.callgraph.NodeBase createNode(com.android.tools.r8.graph.ProgramMethod):17 -> a
     2:3:com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerCallGraph build(java.util.concurrent.ExecutorService):31:32 -> a
     4:4:void processClass(com.android.tools.r8.graph.DexProgramClass):36:36 -> a
     1:4:void processMethod(com.android.tools.r8.graph.ProgramMethod):40:43 -> c
-com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerInvokeRegistry -> com.android.tools.r8.internal.ZF:
+com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerInvokeRegistry -> com.android.tools.r8.internal.aG:
     1:1:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerNode,java.util.function.Function,java.util.Map):28:28 -> <init>
     1:1:boolean com.android.tools.r8.graph.Definition.isProgramMethod():0:0 -> a
     1:1:void processInvokeWithDynamicDispatch(com.android.tools.r8.ir.code.Invoke$Type,com.android.tools.r8.graph.DexClassAndMethod,com.android.tools.r8.graph.ProgramMethod):40 -> a
     2:3:void processInvokeWithDynamicDispatch(com.android.tools.r8.ir.code.Invoke$Type,com.android.tools.r8.graph.DexClassAndMethod,com.android.tools.r8.graph.ProgramMethod):41:42 -> a
     1:1:com.android.tools.r8.graph.GraphLens getCodeLens():33:33 -> c
-com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerNode -> com.android.tools.r8.internal.aG:
+com.android.tools.r8.ir.optimize.inliner.multicallerinliner.MultiCallerInlinerNode -> com.android.tools.r8.internal.bG:
     java.util.concurrent.atomic.AtomicInteger numberOfCallSites -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():12:12 -> <clinit>
@@ -73200,10 +73219,10 @@
     com.android.tools.r8.graph.AppView appView -> a
     1:2:void <init>(com.android.tools.r8.graph.AppView):29:30 -> <init>
     1:1:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):47:47 -> a
-    2:2:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    2:2:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     2:2:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):47 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    3:3:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    3:3:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     3:3:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):47 -> a
     4:6:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):48:50 -> a
     7:26:void com.android.tools.r8.ir.optimize.library.EnumMethodOptimizer.insertAssumeDynamicType(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod):60:79 -> a
@@ -73221,7 +73240,7 @@
     30:31:void com.android.tools.r8.ir.optimize.library.EnumMethodOptimizer.insertAssumeDynamicType(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod):83:84 -> a
     30:31:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):50 -> a
     1:1:com.android.tools.r8.graph.DexType getType():35:35 -> getType
-com.android.tools.r8.ir.optimize.library.LibraryFieldSynthesis -> com.android.tools.r8.internal.CB:
+com.android.tools.r8.ir.optimize.library.LibraryFieldSynthesis -> com.android.tools.r8.internal.DB:
     1:3:void synthesizeEnumFields(com.android.tools.r8.graph.AppView):27:29 -> a
     4:4:com.android.tools.r8.graph.DexLibraryClass com.android.tools.r8.graph.DexLibraryClass.asLibraryClassOrNull(com.android.tools.r8.graph.DexClass):77:77 -> a
     4:4:void synthesizeEnumFields(com.android.tools.r8.graph.AppView):29 -> a
@@ -73232,48 +73251,40 @@
     17:17:void lambda$synthesizeEnumFields$0(com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexField):43 -> a
     18:18:void lambda$synthesizeEnumFields$0(com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexField):44:44 -> a
     19:19:void lambda$synthesizeEnumFields$0(com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexField):35:35 -> a
-com.android.tools.r8.ir.optimize.library.LibraryMemberOptimizer -> com.android.tools.r8.internal.DB:
+com.android.tools.r8.ir.optimize.library.LibraryMemberOptimizer -> com.android.tools.r8.internal.EB:
     com.android.tools.r8.graph.AppView appView -> a
     java.util.Map libraryMethodModelCollections -> d
     java.util.Set modeledLibraryTypes -> c
     boolean $assertionsDisabled -> e
     java.util.Set finalLibraryFields -> b
-    1:1:void <clinit>():30:30 -> <clinit>
-    1:1:void <init>(com.android.tools.r8.graph.AppView):43:43 -> <init>
-    2:32:void <init>(com.android.tools.r8.graph.AppView):35:65 -> <init>
-    1:2:void initializeFinalLibraryFields():69:70 -> a
-    3:3:void lambda$initializeFinalLibraryFields$0(com.android.tools.r8.graph.DexField):72:72 -> a
-    4:4:com.android.tools.r8.graph.DexClass com.android.tools.r8.graph.DexDefinitionSupplier.definitionForHolder(com.android.tools.r8.graph.DexMember):113:113 -> a
-    4:4:void lambda$initializeFinalLibraryFields$0(com.android.tools.r8.graph.DexField):72 -> a
-    5:5:void lambda$initializeFinalLibraryFields$0(com.android.tools.r8.graph.DexField):72:72 -> a
-    6:6:boolean com.android.tools.r8.graph.DexEncodedField.isFinal():208:208 -> a
-    6:6:void lambda$initializeFinalLibraryFields$0(com.android.tools.r8.graph.DexField):74 -> a
-    7:9:void lambda$initializeFinalLibraryFields$0(com.android.tools.r8.graph.DexField):75:77 -> a
-    10:10:void lambda$initializeFinalLibraryFields$0(com.android.tools.r8.graph.DexField):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":88,"2":89,"3":90}}
-    88:88:void lambda$initializeFinalLibraryFields$0(com.android.tools.r8.graph.DexField):77:77 -> a
-    89:89:void lambda$initializeFinalLibraryFields$0(com.android.tools.r8.graph.DexField):77:77 -> a
-    90:90:void lambda$initializeFinalLibraryFields$0(com.android.tools.r8.graph.DexField):77:77 -> a
-    87:87:void lambda$initializeFinalLibraryFields$0(com.android.tools.r8.graph.DexField):77:77 -> a
-    91:91:boolean isFinalLibraryField(com.android.tools.r8.graph.DexEncodedField):86:86 -> a
-    92:92:boolean isModeled(com.android.tools.r8.graph.DexType):102:102 -> a
-    93:97:void register(com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection):106:110 -> a
-    98:130:void 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):119:151 -> a
-    131:131:boolean com.android.tools.r8.ir.code.Instruction.instructionMayHaveSideEffects(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):613:613 -> a
-    131:131:void 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):151 -> a
-    132:137:void 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):152:157 -> a
-    138:138:void com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection.optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set,java.lang.Object,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):59:59 -> a
-    138:138:void 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):161 -> a
-    139:142:void 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):174:177 -> a
-    143:143:void com.android.tools.r8.ir.analysis.type.TypeAnalysis.<init>(com.android.tools.r8.graph.AppView):42:42 -> a
-    143:143:void 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):177 -> a
-    144:144:void 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):177:177 -> a
-    145:145:com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection$State lambda$optimize$1(com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection):160:160 -> a
-com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection -> com.android.tools.r8.internal.FB:
+    1:1:void <clinit>():32:32 -> <clinit>
+    1:1:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.Timing):45:45 -> <init>
+    2:38:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.Timing):37:73 -> <init>
+    1:2:void initializeFinalLibraryFields():78:79 -> a
+    3:3:boolean isModeled(com.android.tools.r8.graph.DexType):101:101 -> a
+    4:8:void register(com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection):105:109 -> a
+    9:41:void 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):118:150 -> a
+    42:42:boolean com.android.tools.r8.ir.code.Instruction.instructionMayHaveSideEffects(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):613:613 -> a
+    42:42:void 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):150 -> a
+    43:48:void 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):151:156 -> a
+    49:49:void com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection.optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set,java.lang.Object,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):59:59 -> a
+    49:49:void 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):160 -> a
+    50:53:void 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):173:176 -> a
+    54:54:void com.android.tools.r8.ir.analysis.type.TypeAnalysis.<init>(com.android.tools.r8.graph.AppView):42:42 -> a
+    54:54:void 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):176 -> a
+    55:55:void 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):176:176 -> a
+    56:56:com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection$State lambda$optimize$0(com.android.tools.r8.ir.conversion.MethodProcessor,com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection):159:159 -> a
+    57:57:boolean com.android.tools.r8.graph.DexEncodedField.isFinal():208:208 -> a
+    57:57:boolean isFinalLibraryField(com.android.tools.r8.graph.DexEncodedField):85 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    58:58:boolean com.android.tools.r8.graph.DexEncodedField.isFinal():208:208 -> a
+    58:58:boolean isFinalLibraryField(com.android.tools.r8.graph.DexEncodedField):85 -> a
+    59:59:boolean isFinalLibraryField(com.android.tools.r8.graph.DexEncodedField):85:85 -> a
+com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection -> com.android.tools.r8.internal.GB:
     com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection$State createInitialState(com.android.tools.r8.ir.conversion.MethodProcessor) -> a
     void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set,com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection$State,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext) -> a
-com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection$State -> com.android.tools.r8.internal.EB:
-com.android.tools.r8.ir.optimize.library.LibraryMethodSideEffectModelCollection -> com.android.tools.r8.internal.JB:
+com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection$State -> com.android.tools.r8.internal.FB:
+com.android.tools.r8.ir.optimize.library.LibraryMethodSideEffectModelCollection -> com.android.tools.r8.internal.KB:
     java.util.Map finalMethodsWithoutSideEffects -> a
     java.util.Set nonFinalMethodsWithoutSideEffects -> c
     java.util.Set unconditionalFinalMethodsWithoutSideEffects -> b
@@ -73298,92 +73309,82 @@
     2:2:boolean lambda$buildFinalMethodsWithoutSideEffects$3(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexMethod,java.util.List):56:56 -> b
     3:29:java.util.Set buildUnconditionalFinalMethodsWithoutSideEffects(com.android.tools.r8.graph.DexItemFactory):71:97 -> b
     1:1:boolean lambda$buildFinalMethodsWithoutSideEffects$2(com.android.tools.r8.graph.DexMethod,java.util.List):52:52 -> c
-com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer -> com.android.tools.r8.internal.LB:
-    com.android.tools.r8.graph.DexItemFactory dexItemFactory -> c
-    com.android.tools.r8.graph.AppView appView -> b
-    com.android.tools.r8.ir.analysis.value.AbstractValueFactory abstractValueFactory -> a
-    com.android.tools.r8.ir.optimize.info.LibraryOptimizationInfoInitializerFeedback feedback -> d
-    java.util.Set modeledLibraryTypes -> e
-    boolean $assertionsDisabled -> f
+com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer -> com.android.tools.r8.internal.MB:
+    com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
+    com.android.tools.r8.graph.AppView appView -> a
+    java.util.Set modeledLibraryTypes -> d
+    com.android.tools.r8.ir.optimize.info.LibraryOptimizationInfoInitializerFeedback feedback -> c
+    boolean $assertionsDisabled -> e
     1:1:void <clinit>():28:28 -> <clinit>
     1:1:void <init>(com.android.tools.r8.graph.AppView):38:38 -> <init>
     2:8:void <init>(com.android.tools.r8.graph.AppView):35:41 -> <init>
-    1:1:java.util.Set getModeledLibraryTypes():55:55 -> a
-    2:6:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():59:63 -> a
-    2:6:void run(java.util.Set):45 -> a
-    7:7:com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo$Builder com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo.builder(com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoCollection):64:64 -> a
-    7:7:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():66 -> a
-    7:7:void run(java.util.Set):45 -> a
-    8:8:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():66:66 -> a
-    8:8:void run(java.util.Set):45 -> a
-    9:9:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():65:65 -> a
-    9:9:void run(java.util.Set):45 -> a
-    10:21:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():63:74 -> a
-    10:21:void run(java.util.Set):45 -> a
-    22:22:com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoCollection$Builder com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoCollection.builder():28:28 -> a
-    22:22:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():76 -> a
-    22:22:void run(java.util.Set):45 -> a
-    23:25:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():76:78 -> a
-    23:25:void run(java.util.Set):45 -> a
-    26:29:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():77:80 -> a
-    26:29:void run(java.util.Set):45 -> a
-    30:33:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():79:82 -> a
-    30:33:void run(java.util.Set):45 -> a
-    34:34:com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo$Builder com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo.builder(com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoCollection):64:64 -> a
-    34:34:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():85 -> a
-    34:34:void run(java.util.Set):45 -> a
-    35:37:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():85:87 -> a
-    35:37:void run(java.util.Set):45 -> a
-    38:38:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():84:84 -> a
-    38:38:void run(java.util.Set):45 -> a
-    39:39:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():82:82 -> a
-    39:39:void run(java.util.Set):45 -> a
-    40:44:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelStaticFinalLibraryFields(java.util.Set):92:96 -> a
-    40:44:void run(java.util.Set):46 -> a
-    45:45:com.android.tools.r8.ir.analysis.value.objectstate.ObjectState com.android.tools.r8.ir.analysis.value.objectstate.ObjectState.empty():28:28 -> a
-    45:45:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelStaticFinalLibraryFields(java.util.Set):96 -> a
-    45:45:void run(java.util.Set):46 -> a
-    46:46:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelStaticFinalLibraryFields(java.util.Set):96:96 -> a
-    46:46:void run(java.util.Set):46 -> a
-    47:47:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelStaticFinalLibraryFields(java.util.Set):94:94 -> a
-    47:47:void run(java.util.Set):46 -> a
-    48:48:void run(java.util.Set):47:47 -> a
-    49:53:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelLibraryMethodsReturningNonNull():126:130 -> a
-    49:53:void run(java.util.Set):48 -> a
-    54:56:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelLibraryMethodsReturningNonNull():129:131 -> a
-    54:56:void run(java.util.Set):48 -> a
-    57:57:com.android.tools.r8.ir.analysis.type.NotNullDynamicType com.android.tools.r8.ir.analysis.type.DynamicType.definitelyNotNull():87:87 -> a
-    57:57:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelLibraryMethodsReturningNonNull():131 -> a
-    57:57:void run(java.util.Set):48 -> a
-    58:58:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelLibraryMethodsReturningNonNull():131:131 -> a
-    58:58:void run(java.util.Set):48 -> a
-    59:62:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelLibraryMethodsReturningReceiver():137:140 -> a
-    59:62:void run(java.util.Set):49 -> a
-    63:63:void run(java.util.Set):50:50 -> a
-    64:64:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelRequireNonNullMethods():158:158 -> a
-    64:64:void run(java.util.Set):51 -> a
-    65:65:java.lang.Iterable com.android.tools.r8.graph.DexItemFactory$ObjectsMethods.requireNonNullMethods():1517:1517 -> a
-    65:65:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelRequireNonNullMethods():158 -> a
-    65:65:void run(java.util.Set):51 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
-    66:66:java.lang.Iterable com.android.tools.r8.graph.DexItemFactory$ObjectsMethods.requireNonNullMethods():1517:1517 -> a
-    66:66:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelRequireNonNullMethods():158 -> a
-    66:66:void run(java.util.Set):51 -> a
-    67:70:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelRequireNonNullMethods():158:161 -> a
-    67:70:void run(java.util.Set):51 -> a
-    71:83:void lambda$modelLibraryMethodsNonNullParamOrThrow$0(com.android.tools.r8.graph.DexMethod,int[]):104:116 -> a
-    84:84:boolean com.android.tools.r8.ir.optimize.info.MethodOptimizationInfo.hasNonNullParamOnNormalExits():50:50 -> a
-    84:84:void lambda$modelLibraryMethodsNonNullParamOrThrow$0(com.android.tools.r8.graph.DexMethod,int[]):116 -> a
+    1:1:java.util.Set getModeledLibraryTypes():54:54 -> a
+    2:14:void lambda$modelLibraryMethodsNonNullParamOrThrow$0(com.android.tools.r8.graph.DexMethod,int[]):103:115 -> a
+    15:15:boolean com.android.tools.r8.ir.optimize.info.MethodOptimizationInfo.hasNonNullParamOnNormalExits():50:50 -> a
+    15:15:void lambda$modelLibraryMethodsNonNullParamOrThrow$0(com.android.tools.r8.graph.DexMethod,int[]):115 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    85:87:void lambda$modelLibraryMethodsNonNullParamOrThrow$0(com.android.tools.r8.graph.DexMethod,int[]):117:119 -> a
-    88:90:void lambda$modelLibraryMethodsWithoutSideEffects$1(com.android.tools.r8.graph.DexMethod):150:152 -> a
-    1:1:void modelLibraryMethodsNonNullParamOrThrow():102:102 -> b
-    2:2:com.android.tools.r8.graph.DexEncodedMethod lookupMethod(com.android.tools.r8.graph.DexMethod):167:167 -> b
+    16:18:void lambda$modelLibraryMethodsNonNullParamOrThrow$0(com.android.tools.r8.graph.DexMethod,int[]):116:118 -> a
+    19:21:void lambda$modelLibraryMethodsWithoutSideEffects$1(com.android.tools.r8.graph.DexMethod):149:151 -> a
+    1:1:void modelLibraryMethodsNonNullParamOrThrow():101:101 -> b
+    2:2:com.android.tools.r8.graph.DexEncodedMethod lookupMethod(com.android.tools.r8.graph.DexMethod):166:166 -> b
     3:3:com.android.tools.r8.graph.DexClass com.android.tools.r8.graph.DexDefinitionSupplier.definitionForHolder(com.android.tools.r8.graph.DexMember):113:113 -> b
-    3:3:com.android.tools.r8.graph.DexEncodedMethod lookupMethod(com.android.tools.r8.graph.DexMethod):167 -> b
-    4:6:com.android.tools.r8.graph.DexEncodedMethod lookupMethod(com.android.tools.r8.graph.DexMethod):168:170 -> b
-    1:3:void modelLibraryMethodsWithoutSideEffects():146:148 -> c
-com.android.tools.r8.ir.optimize.library.LogMethodOptimizer -> com.android.tools.r8.internal.KC:
+    3:3:com.android.tools.r8.graph.DexEncodedMethod lookupMethod(com.android.tools.r8.graph.DexMethod):166 -> b
+    4:6:com.android.tools.r8.graph.DexEncodedMethod lookupMethod(com.android.tools.r8.graph.DexMethod):167:169 -> b
+    1:3:void modelLibraryMethodsWithoutSideEffects():145:147 -> c
+    1:5:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():58:62 -> d
+    1:5:void run():45 -> d
+    6:6:com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo$Builder com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo.builder(com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoCollection):64:64 -> d
+    6:6:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():65 -> d
+    6:6:void run():45 -> d
+    7:7:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():65:65 -> d
+    7:7:void run():45 -> d
+    8:8:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():64:64 -> d
+    8:8:void run():45 -> d
+    9:20:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():62:73 -> d
+    9:20:void run():45 -> d
+    21:21:com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoCollection$Builder com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoCollection.builder():28:28 -> d
+    21:21:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():75 -> d
+    21:21:void run():45 -> d
+    22:24:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():75:77 -> d
+    22:24:void run():45 -> d
+    25:28:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():76:79 -> d
+    25:28:void run():45 -> d
+    29:32:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():78:81 -> d
+    29:32:void run():45 -> d
+    33:33:com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo$Builder com.android.tools.r8.ir.optimize.info.initializer.NonTrivialInstanceInitializerInfo.builder(com.android.tools.r8.ir.optimize.info.field.InstanceFieldInitializationInfoCollection):64:64 -> d
+    33:33:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():84 -> d
+    33:33:void run():45 -> d
+    34:36:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():84:86 -> d
+    34:36:void run():45 -> d
+    37:37:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():83:83 -> d
+    37:37:void run():45 -> d
+    38:38:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelInstanceInitializers():81:81 -> d
+    38:38:void run():45 -> d
+    39:39:void run():46:46 -> d
+    40:44:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelLibraryMethodsReturningNonNull():125:129 -> d
+    40:44:void run():47 -> d
+    45:47:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelLibraryMethodsReturningNonNull():128:130 -> d
+    45:47:void run():47 -> d
+    48:48:com.android.tools.r8.ir.analysis.type.NotNullDynamicType com.android.tools.r8.ir.analysis.type.DynamicType.definitelyNotNull():87:87 -> d
+    48:48:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelLibraryMethodsReturningNonNull():130 -> d
+    48:48:void run():47 -> d
+    49:49:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelLibraryMethodsReturningNonNull():130:130 -> d
+    49:49:void run():47 -> d
+    50:53:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelLibraryMethodsReturningReceiver():136:139 -> d
+    50:53:void run():48 -> d
+    54:54:void run():49:49 -> d
+    55:55:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelRequireNonNullMethods():157:157 -> d
+    55:55:void run():50 -> d
+    56:56:java.lang.Iterable com.android.tools.r8.graph.DexItemFactory$ObjectsMethods.requireNonNullMethods():1517:1517 -> d
+    56:56:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelRequireNonNullMethods():157 -> d
+    56:56:void run():50 -> d
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
+    57:57:java.lang.Iterable com.android.tools.r8.graph.DexItemFactory$ObjectsMethods.requireNonNullMethods():1517:1517 -> d
+    57:57:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelRequireNonNullMethods():157 -> d
+    57:57:void run():50 -> d
+    58:61:void com.android.tools.r8.ir.optimize.library.LibraryOptimizationInfoInitializer.modelRequireNonNullMethods():157:160 -> d
+    58:61:void run():50 -> d
+com.android.tools.r8.ir.optimize.library.LogMethodOptimizer -> com.android.tools.r8.internal.LC:
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.graph.DexMethod wtfMethod -> i
     com.android.tools.r8.graph.DexMethod eMethod -> h
@@ -73405,14 +73406,14 @@
     4:38:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):113:147 -> a
     39:42:void replaceInvokeWithConstNumber(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,int):154:157 -> a
     1:1:com.android.tools.r8.graph.DexType getType():101:101 -> getType
-com.android.tools.r8.ir.optimize.library.ObjectMethodOptimizer -> com.android.tools.r8.internal.kK:
+com.android.tools.r8.ir.optimize.library.ObjectMethodOptimizer -> com.android.tools.r8.internal.lK:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> a
     1:2:void <init>(com.android.tools.r8.graph.AppView):23:24 -> <init>
     1:1:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):41:41 -> a
     2:4:void com.android.tools.r8.ir.optimize.library.ObjectMethodOptimizer.optimizeGetClass(com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod):47:49 -> a
     2:4:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):42 -> a
     1:1:com.android.tools.r8.graph.DexType getType():29:29 -> getType
-com.android.tools.r8.ir.optimize.library.ObjectsMethodOptimizer -> com.android.tools.r8.internal.CK:
+com.android.tools.r8.ir.optimize.library.ObjectsMethodOptimizer -> com.android.tools.r8.internal.DK:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.utils.InternalOptions options -> d
@@ -73486,11 +73487,11 @@
     64:64:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):79 -> a
     65:74:void com.android.tools.r8.ir.optimize.library.ObjectsMethodOptimizer.optimizeRequireNonNull(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,java.util.Set,java.util.Set,com.android.tools.r8.graph.DexClassAndMethod):186:195 -> a
     65:74:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):79 -> a
-    75:75:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():650:650 -> a
+    75:75:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():670:670 -> a
     75:75:void com.android.tools.r8.ir.optimize.library.ObjectsMethodOptimizer.optimizeRequireNonNull(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,java.util.Set,java.util.Set,com.android.tools.r8.graph.DexClassAndMethod):195 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     75:75:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):79 -> a
-    76:76:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():650:650 -> a
+    76:76:boolean com.android.tools.r8.graph.AppView.hasClassHierarchy():670:670 -> a
     76:76:void com.android.tools.r8.ir.optimize.library.ObjectsMethodOptimizer.optimizeRequireNonNull(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,java.util.Set,java.util.Set,com.android.tools.r8.graph.DexClassAndMethod):195 -> a
     76:76:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):79 -> a
     77:79:void com.android.tools.r8.ir.optimize.library.ObjectsMethodOptimizer.optimizeRequireNonNull(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,java.util.Set,java.util.Set,com.android.tools.r8.graph.DexClassAndMethod):196:196 -> a
@@ -73531,14 +73532,14 @@
     138:138:void com.android.tools.r8.ir.optimize.library.ObjectsMethodOptimizer.optimizeEquals(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod):122:122 -> a
     138:138:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set):59 -> a
     1:1:com.android.tools.r8.graph.DexType getType():43:43 -> getType
-com.android.tools.r8.ir.optimize.library.StatelessLibraryMethodModelCollection -> com.android.tools.r8.internal.uW:
+com.android.tools.r8.ir.optimize.library.StatelessLibraryMethodModelCollection -> com.android.tools.r8.internal.vW:
     1:1:void <init>():19:19 -> <init>
     com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection$State createInitialState(com.android.tools.r8.ir.conversion.MethodProcessor) -> a
     void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set) -> a
     1:1:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set,com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection$State,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):19:19 -> a
     2:2:void com.android.tools.r8.ir.optimize.library.StatelessLibraryMethodModelCollection.optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set,com.android.tools.r8.ir.optimize.library.StatelessLibraryMethodModelCollection$State,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):48:48 -> a
     2:2:void optimize(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.DexClassAndMethod,java.util.Set,java.util.Set,com.android.tools.r8.ir.optimize.library.LibraryMethodModelCollection$State,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):19 -> a
-com.android.tools.r8.ir.optimize.library.StringBuilderMethodOptimizer -> com.android.tools.r8.internal.SW:
+com.android.tools.r8.ir.optimize.library.StringBuilderMethodOptimizer -> com.android.tools.r8.internal.TW:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.utils.InternalOptions options -> c
@@ -73620,7 +73621,7 @@
     90:90:void optimizeAppend(com.android.tools.r8.ir.code.InstructionListIterator,com.android.tools.r8.ir.code.InvokeMethodWithReceiver,com.android.tools.r8.graph.DexClassAndMethod,com.android.tools.r8.ir.optimize.library.StringBuilderMethodOptimizer$State,com.android.tools.r8.contexts.CompilationContext$MethodProcessingContext):109 -> a
     1:1:com.android.tools.r8.graph.DexItemFactory$StringBuildingMethods access$100(com.android.tools.r8.ir.optimize.library.StringBuilderMethodOptimizer):45:45 -> b
     1:1:com.android.tools.r8.graph.DexType getType():67:67 -> getType
-com.android.tools.r8.ir.optimize.library.StringBuilderMethodOptimizer$State -> com.android.tools.r8.internal.RW:
+com.android.tools.r8.ir.optimize.library.StringBuilderMethodOptimizer$State -> com.android.tools.r8.internal.SW:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap unusedBuilders -> b
     com.android.tools.r8.ir.conversion.MethodProcessor methodProcessor -> a
     com.android.tools.r8.ir.optimize.library.StringBuilderMethodOptimizer this$0 -> c
@@ -73649,7 +73650,7 @@
     156:156:void computeIsUnusedBuilder(com.android.tools.r8.ir.code.Value):192:192 -> a
     157:157:void lambda$computeIsUnusedBuilder$0(boolean,com.android.tools.r8.ir.code.Value):192:192 -> a
     1:5:boolean isUnusedBuilder(com.android.tools.r8.ir.code.Value):180:184 -> b
-com.android.tools.r8.ir.optimize.library.StringMethodOptimizer -> com.android.tools.r8.internal.YW:
+com.android.tools.r8.ir.optimize.library.StringMethodOptimizer -> com.android.tools.r8.internal.ZW:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     com.android.tools.r8.graph.AppView appView -> a
     1:3:void <init>(com.android.tools.r8.graph.AppView):32:34 -> <init>
@@ -73680,7 +73681,7 @@
     52:52:boolean isPrunedClassNameComparison(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.graph.ProgramMethod):128 -> a
     53:55:boolean isPrunedClassNameComparison(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.Value,com.android.tools.r8.graph.ProgramMethod):128:130 -> a
     1:1:com.android.tools.r8.graph.DexType getType():39:39 -> getType
-com.android.tools.r8.ir.optimize.library.sideeffects.JavaLangObjectsSideEffectCollection -> com.android.tools.r8.internal.Ev:
+com.android.tools.r8.ir.optimize.library.sideeffects.JavaLangObjectsSideEffectCollection -> com.android.tools.r8.internal.Fv:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():18:18 -> <clinit>
     1:20:boolean toStringMayHaveSideEffects(com.android.tools.r8.graph.AppView,java.util.List):22:41 -> a
@@ -73703,7 +73704,7 @@
     1:1:int hashCode():65:65 -> hashCode
 com.android.tools.r8.ir.optimize.membervaluepropagation.assume.AssumeInfoLookup -> com.android.tools.r8.internal.J3:
     1:15:com.android.tools.r8.ir.optimize.membervaluepropagation.assume.AssumeInfo lookupAssumeInfo(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexClassAndMember):35:49 -> a
-com.android.tools.r8.ir.optimize.outliner.OutlineCollection -> com.android.tools.r8.internal.mL:
+com.android.tools.r8.ir.optimize.outliner.OutlineCollection -> com.android.tools.r8.internal.nL:
     java.util.Map canonicalization -> a
     java.util.Map outlines -> c
     com.android.tools.r8.graph.GraphLens appliedGraphLens -> b
@@ -73731,7 +73732,7 @@
     48:51:void lambda$computeMethodsPerOutline$2(com.android.tools.r8.graph.AppView,java.util.Map,com.android.tools.r8.graph.DexMethod,java.util.List):100:103 -> a
     52:61:void lambda$computeMethodsPerOutline$2(com.android.tools.r8.graph.AppView,java.util.Map,com.android.tools.r8.graph.DexMethod,java.util.List):102:111 -> a
     1:5:com.android.tools.r8.utils.collections.ProgramMethodSet computeMethodsSubjectToOutlining(com.android.tools.r8.graph.AppView):84:88 -> b
-com.android.tools.r8.ir.optimize.outliner.Outliner -> com.android.tools.r8.internal.pL:
+com.android.tools.r8.ir.optimize.outliner.Outliner -> com.android.tools.r8.internal.qL:
     1:1:void <init>():19:19 -> <init>
     void collectOutlineSites(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.utils.Timing) -> a
     void onMethodCodePruned(com.android.tools.r8.graph.ProgramMethod) -> a
@@ -73743,7 +73744,7 @@
     3:3:com.android.tools.r8.ir.optimize.outliner.Outliner empty():26:26 -> a
     void onMethodPruned(com.android.tools.r8.graph.ProgramMethod) -> b
     void rewriteWithLens() -> b
-com.android.tools.r8.ir.optimize.outliner.Outliner$1 -> com.android.tools.r8.internal.oL:
+com.android.tools.r8.ir.optimize.outliner.Outliner$1 -> com.android.tools.r8.internal.pL:
     1:1:void <init>():26:26 -> <init>
     void collectOutlineSites(com.android.tools.r8.ir.code.IRCode,com.android.tools.r8.utils.Timing) -> a
     void onMethodCodePruned(com.android.tools.r8.graph.ProgramMethod) -> a
@@ -73794,7 +73795,7 @@
     2:2:boolean com.android.tools.r8.ir.code.Instruction.isDup():0:0 -> c
     2:2:boolean lambda$new$2(com.android.tools.r8.ir.code.Instruction):35 -> c
     3:3:boolean lambda$new$2(com.android.tools.r8.ir.code.Instruction):35:35 -> c
-com.android.tools.r8.ir.optimize.peepholes.LoadLoadDupPeephole -> com.android.tools.r8.internal.AC:
+com.android.tools.r8.ir.optimize.peepholes.LoadLoadDupPeephole -> com.android.tools.r8.internal.BC:
     com.android.tools.r8.ir.optimize.peepholes.Point firstLoadExp -> b
     com.android.tools.r8.ir.optimize.peepholes.Point lastLoadExp -> a
     com.android.tools.r8.ir.optimize.peepholes.PeepholeLayout layout -> c
@@ -73805,10 +73806,10 @@
     1:24:boolean match(com.android.tools.r8.ir.code.InstructionListIterator):41:64 -> a
     25:25:void com.android.tools.r8.ir.code.InstructionListIterator.replaceCurrentInstruction(com.android.tools.r8.ir.code.Instruction):42:42 -> a
     25:25:boolean match(com.android.tools.r8.ir.code.InstructionListIterator):64 -> a
-com.android.tools.r8.ir.optimize.peepholes.Match -> com.android.tools.r8.internal.YD:
+com.android.tools.r8.ir.optimize.peepholes.Match -> com.android.tools.r8.internal.ZD:
     java.util.List instructions -> a
     1:3:void <init>(com.android.tools.r8.ir.optimize.peepholes.PeepholeExpression[],java.util.List):14:16 -> <init>
-com.android.tools.r8.ir.optimize.peepholes.MoveLoadUpPeephole -> com.android.tools.r8.internal.MF:
+com.android.tools.r8.ir.optimize.peepholes.MoveLoadUpPeephole -> com.android.tools.r8.internal.NF:
     com.android.tools.r8.ir.optimize.peepholes.Point firstLoad -> d
     com.android.tools.r8.ir.optimize.peepholes.PeepholeLayout layout -> e
     com.android.tools.r8.ir.code.Instruction insertPosition -> c
@@ -73841,11 +73842,11 @@
     12:12:boolean com.android.tools.r8.ir.code.Instruction.isDebugPosition():0:0 -> b
     12:12:boolean lambda$new$1(com.android.tools.r8.ir.code.Instruction):59 -> b
     13:13:boolean lambda$new$1(com.android.tools.r8.ir.code.Instruction):60:60 -> b
-com.android.tools.r8.ir.optimize.peepholes.PeepholeExpression -> com.android.tools.r8.internal.UL:
+com.android.tools.r8.ir.optimize.peepholes.PeepholeExpression -> com.android.tools.r8.internal.VL:
     java.util.function.Predicate getPredicate() -> a
     int getMin() -> b
     int getMax() -> c
-com.android.tools.r8.ir.optimize.peepholes.PeepholeHelper -> com.android.tools.r8.internal.VL:
+com.android.tools.r8.ir.optimize.peepholes.PeepholeHelper -> com.android.tools.r8.internal.WL:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():14:14 -> <clinit>
     1:1:java.util.function.Predicate withoutLocalInfo(java.util.function.Predicate):17:17 -> a
@@ -73856,7 +73857,7 @@
     23:23:boolean lambda$moveInstructionsUpToCurrentPosition$1(java.util.List,com.android.tools.r8.ir.code.Instruction):66:66 -> a
     1:4:int numberOfValuesPutOnStack(com.android.tools.r8.ir.code.Instruction):38:41 -> b
     5:5:boolean lambda$moveInstructionsUpToCurrentPosition$2(java.util.List,com.android.tools.r8.ir.code.Instruction):72:72 -> b
-com.android.tools.r8.ir.optimize.peepholes.PeepholeLayout -> com.android.tools.r8.internal.WL:
+com.android.tools.r8.ir.optimize.peepholes.PeepholeLayout -> com.android.tools.r8.internal.XL:
     com.android.tools.r8.ir.optimize.peepholes.PeepholeExpression[] expressions -> b
     java.util.List instructions -> a
     boolean backwards -> c
@@ -73865,7 +73866,7 @@
     2:5:com.android.tools.r8.ir.optimize.peepholes.Match test(com.android.tools.r8.ir.code.InstructionListIterator):37:40 -> a
     6:42:com.android.tools.r8.ir.optimize.peepholes.Match testDirection(java.util.function.Supplier,java.util.function.Supplier,java.lang.Runnable):48:84 -> a
     1:1:com.android.tools.r8.ir.optimize.peepholes.PeepholeLayout lookForward(com.android.tools.r8.ir.optimize.peepholes.PeepholeExpression[]):29:29 -> b
-com.android.tools.r8.ir.optimize.peepholes.Point -> com.android.tools.r8.internal.fM:
+com.android.tools.r8.ir.optimize.peepholes.Point -> com.android.tools.r8.internal.gM:
     java.util.function.Predicate predicate -> a
     int index -> b
     boolean $assertionsDisabled -> c
@@ -73877,7 +73878,7 @@
     int getMin() -> b
     int getMax() -> c
     1:2:void setIndex(int):36:37 -> setIndex
-com.android.tools.r8.ir.optimize.peepholes.RemoveDebugPositionPeephole -> com.android.tools.r8.internal.HS:
+com.android.tools.r8.ir.optimize.peepholes.RemoveDebugPositionPeephole -> com.android.tools.r8.internal.IS:
     com.android.tools.r8.ir.optimize.peepholes.Point secondInstructionExp -> b
     com.android.tools.r8.ir.optimize.peepholes.Point debugPositionExp -> a
     com.android.tools.r8.ir.optimize.peepholes.PeepholeLayout layout -> c
@@ -73887,14 +73888,14 @@
     boolean lambda$match$0(com.android.tools.r8.ir.code.DebugPosition,com.android.tools.r8.ir.code.Instruction) -> a
     boolean resetAfterMatch() -> a
     1:33:boolean match(com.android.tools.r8.ir.code.InstructionListIterator):52:84 -> a
-com.android.tools.r8.ir.optimize.peepholes.StoreLoadPeephole -> com.android.tools.r8.internal.HW:
+com.android.tools.r8.ir.optimize.peepholes.StoreLoadPeephole -> com.android.tools.r8.internal.IW:
     com.android.tools.r8.ir.optimize.peepholes.Point loadExp -> b
     com.android.tools.r8.ir.optimize.peepholes.Point storeExp -> a
     com.android.tools.r8.ir.optimize.peepholes.PeepholeLayout layout -> c
     1:6:void <init>():22:27 -> <init>
     boolean resetAfterMatch() -> a
     1:18:boolean match(com.android.tools.r8.ir.code.InstructionListIterator):31:48 -> a
-com.android.tools.r8.ir.optimize.peepholes.StoreLoadToDupStorePeephole -> com.android.tools.r8.internal.IW:
+com.android.tools.r8.ir.optimize.peepholes.StoreLoadToDupStorePeephole -> com.android.tools.r8.internal.JW:
     com.android.tools.r8.ir.optimize.peepholes.Point loadExp -> b
     com.android.tools.r8.ir.optimize.peepholes.Point storeExp -> a
     com.android.tools.r8.ir.optimize.peepholes.PeepholeLayout layout -> d
@@ -73913,7 +73914,7 @@
     24:24:boolean com.android.tools.r8.ir.code.Instruction.isDup():0:0 -> a
     24:24:boolean match(com.android.tools.r8.ir.code.InstructionListIterator):62 -> a
     25:43:boolean match(com.android.tools.r8.ir.code.InstructionListIterator):62:80 -> a
-com.android.tools.r8.ir.optimize.peepholes.StoreSequenceLoadPeephole -> com.android.tools.r8.internal.JW:
+com.android.tools.r8.ir.optimize.peepholes.StoreSequenceLoadPeephole -> com.android.tools.r8.internal.KW:
     com.android.tools.r8.ir.optimize.peepholes.Point storeExp -> c
     com.android.tools.r8.ir.code.Store store -> a
     com.android.tools.r8.ir.optimize.peepholes.PeepholeLayout layout -> f
@@ -74233,7 +74234,7 @@
     125:125:void removeTrivialBuilders():820 -> b
     126:128:void removeTrivialBuilders():820:822 -> b
     1:1:java.util.Map lambda$createBuilderState$0(com.android.tools.r8.ir.code.Value):316:316 -> c
-com.android.tools.r8.ir.optimize.string.StringOptimizer -> com.android.tools.r8.internal.aX:
+com.android.tools.r8.ir.optimize.string.StringOptimizer -> com.android.tools.r8.internal.bX:
     com.android.tools.r8.graph.DexItemFactory factory -> b
     com.android.tools.r8.graph.AppView appView -> a
     boolean $assertionsDisabled -> i
@@ -74362,7 +74363,7 @@
     2:2:java.lang.Integer lambda$computeTrivialOperationsOnConstString$8(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexString):229 -> i
     3:3:java.lang.Integer lambda$computeTrivialOperationsOnConstString$8(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexString):229:229 -> i
     1:1:java.lang.Integer lambda$computeTrivialOperationsOnConstString$9(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexString):231:231 -> j
-com.android.tools.r8.ir.optimize.string.StringOptimizer$StringOptimizerEscapeAnalysisConfiguration -> com.android.tools.r8.internal.ZW:
+com.android.tools.r8.ir.optimize.string.StringOptimizer$StringOptimizerEscapeAnalysisConfiguration -> com.android.tools.r8.internal.aX:
     com.android.tools.r8.ir.optimize.string.StringOptimizer$StringOptimizerEscapeAnalysisConfiguration INSTANCE -> a
     1:1:void <clinit>():574:574 -> <clinit>
     1:1:void <init>():577:577 -> <init>
@@ -75310,7 +75311,7 @@
     6:6:boolean isRematerializable():116:116 -> z
     6:6:boolean isSpilledAndRematerializable():128 -> z
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-com.android.tools.r8.ir.regalloc.LiveIntervalsUse -> com.android.tools.r8.internal.wC:
+com.android.tools.r8.ir.regalloc.LiveIntervalsUse -> com.android.tools.r8.internal.xC:
     int position -> b
     int limit -> c
     1:3:void <init>(int,int):12:14 -> <init>
@@ -75322,7 +75323,7 @@
     2:5:int compareTo(java.lang.Object):8 -> compareTo
     1:5:boolean equals(java.lang.Object):32:36 -> equals
     1:1:int hashCode():27:27 -> hashCode
-com.android.tools.r8.ir.regalloc.LiveRange -> com.android.tools.r8.internal.yC:
+com.android.tools.r8.ir.regalloc.LiveRange -> com.android.tools.r8.internal.zC:
     com.android.tools.r8.ir.regalloc.LiveRange INFINITE -> d
     int start -> b
     int end -> c
@@ -75342,7 +75343,7 @@
     61:61:java.lang.String toString():28:28 -> toString
     62:62:java.lang.String toString():28:28 -> toString
     63:63:java.lang.String toString():28:28 -> toString
-com.android.tools.r8.ir.regalloc.RegisterAllocator -> com.android.tools.r8.internal.rS:
+com.android.tools.r8.ir.regalloc.RegisterAllocator -> com.android.tools.r8.internal.sS:
     void addNewBlockToShareIdenticalSuffix(com.android.tools.r8.ir.code.BasicBlock,int,java.util.List) -> a
     void allocateRegisters() -> a
     int getArgumentOrAllocateRegisterForValue(com.android.tools.r8.ir.code.Value,int) -> a
@@ -75351,7 +75352,7 @@
     void mergeBlocks(com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.code.BasicBlock) -> b
     int registersUsed() -> b
     com.android.tools.r8.utils.InternalOptions options() -> c
-com.android.tools.r8.ir.regalloc.RegisterMove -> com.android.tools.r8.internal.sS:
+com.android.tools.r8.ir.regalloc.RegisterMove -> com.android.tools.r8.internal.tS:
     com.android.tools.r8.ir.analysis.type.TypeElement type -> b
     com.android.tools.r8.ir.code.Instruction definition -> e
     boolean $assertionsDisabled -> f
@@ -75371,7 +75372,7 @@
     2:28:int compareTo(java.lang.Object):13 -> compareTo
     1:5:boolean equals(java.lang.Object):68:72 -> equals
     1:1:int hashCode():63:63 -> hashCode
-com.android.tools.r8.ir.regalloc.RegisterMoveScheduler -> com.android.tools.r8.internal.tS:
+com.android.tools.r8.ir.regalloc.RegisterMoveScheduler -> com.android.tools.r8.internal.uS:
     java.util.Map valueMap -> b
     int tempRegister -> f
     java.util.Set moveSet -> a
@@ -76014,13 +76015,13 @@
     5:5:com.android.tools.r8.ir.synthetic.ForwardMethodSourceCode build(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Position):91:91 -> a
     1:1:com.android.tools.r8.ir.synthetic.ForwardMethodSourceCode$Builder setTargetReceiver(com.android.tools.r8.graph.DexType):61:61 -> b
     2:2:com.android.tools.r8.ir.synthetic.ForwardMethodSourceCode$Builder setTarget(com.android.tools.r8.graph.DexMethod):66:66 -> b
-com.android.tools.r8.ir.synthetic.RecordCfCodeProvider$RecordEqualsCfCodeProvider -> com.android.tools.r8.internal.lQ:
+com.android.tools.r8.ir.synthetic.RecordCfCodeProvider$RecordEqualsCfCodeProvider -> com.android.tools.r8.internal.mQ:
     com.android.tools.r8.graph.DexMethod getFieldsAsObjects -> c
     1:2:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexMethod):146:147 -> <init>
     1:1:com.android.tools.r8.utils.collections.ImmutableInt2ReferenceSortedMap$Builder com.android.tools.r8.utils.collections.ImmutableInt2ReferenceSortedMap.builder():38:38 -> b
     1:1:com.android.tools.r8.graph.CfCode generateCfCode():165 -> b
     2:28:com.android.tools.r8.graph.CfCode generateCfCode():166:192 -> b
-com.android.tools.r8.ir.synthetic.RecordCfCodeProvider$RecordGetFieldsAsObjectsCfCodeProvider -> com.android.tools.r8.internal.mQ:
+com.android.tools.r8.ir.synthetic.RecordCfCodeProvider$RecordGetFieldsAsObjectsCfCodeProvider -> com.android.tools.r8.internal.nQ:
     com.android.tools.r8.graph.DexField[] fields -> c
     1:2:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexField[]):69:70 -> <init>
     1:2:void registerSynthesizedCodeReferences(com.android.tools.r8.graph.DexItemFactory):57:58 -> a
@@ -76038,18 +76039,18 @@
     4:12:com.android.tools.r8.graph.CfCode generateCfCode():81 -> b
     13:30:com.android.tools.r8.graph.CfCode com.android.tools.r8.ir.synthetic.RecordCfCodeProvider$RecordGetFieldsAsObjectsCfCodeProvider.generateCfCodeWithArray():86:103 -> b
     13:30:com.android.tools.r8.graph.CfCode generateCfCode():82 -> b
-com.android.tools.r8.ir.synthetic.SynthesizedCode -> com.android.tools.r8.internal.ZX:
+com.android.tools.r8.ir.synthetic.SynthesizedCode -> com.android.tools.r8.internal.aY:
     com.android.tools.r8.ir.synthetic.AbstractSynthesizedCode$SourceCodeProvider sourceCodeProvider -> d
     1:2:void <init>(com.android.tools.r8.ir.synthetic.AbstractSynthesizedCode$SourceCodeProvider):15:16 -> <init>
     1:1:com.android.tools.r8.ir.synthetic.AbstractSynthesizedCode$SourceCodeProvider getSourceCodeProvider():21:21 -> B0
     java.util.function.Consumer getRegistryCallback(com.android.tools.r8.graph.DexClassAndMethod) -> a
-com.android.tools.r8.ir.synthetic.SyntheticCfCodeProvider -> com.android.tools.r8.internal.cY:
+com.android.tools.r8.ir.synthetic.SyntheticCfCodeProvider -> com.android.tools.r8.internal.dY:
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.graph.DexType holder -> b
     1:3:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType):18:20 -> <init>
     1:1:com.android.tools.r8.graph.DexType getHolder():24:24 -> a
     2:2:com.android.tools.r8.graph.CfCode standardCfCodeFromInstructions(java.util.List):30:30 -> a
-com.android.tools.r8.ir.synthetic.SyntheticSourceCode -> com.android.tools.r8.internal.nY:
+com.android.tools.r8.ir.synthetic.SyntheticSourceCode -> com.android.tools.r8.internal.oY:
     com.android.tools.r8.ir.code.Position position -> h
     java.util.function.Predicate endsBlock -> j
     java.util.List constructors -> f
@@ -79108,7 +79109,7 @@
     2:2:java.lang.Integer lastKey():177:177 -> lastKey
     1:1:java.util.SortedMap subMap(java.lang.Object,java.lang.Object):57:57 -> subMap
     1:1:java.util.SortedMap tailMap(java.lang.Object):57:57 -> tailMap
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArrayList -> com.android.tools.r8.internal.jt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArrayList -> com.android.tools.r8.internal.kt:
     int[] a -> b
     int size -> c
     1:2:void <init>(int[],boolean):70:71 -> <init>
@@ -79275,7 +79276,7 @@
     6:6:void grow(int):250:250 -> n
     1:6:boolean removeAll(java.util.Collection):482:487 -> removeAll
     1:1:int size():327:327 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArrayList$1 -> com.android.tools.r8.internal.it:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArrayList$1 -> com.android.tools.r8.internal.jt:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArrayList this$0 -> d
     int pos -> b
     int last -> c
@@ -79289,7 +79290,7 @@
     1:3:int nextInt():506:506 -> nextInt
     1:1:int previousIndex():520:520 -> previousIndex
     1:10:void remove():534:534 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArraySet -> com.android.tools.r8.internal.lt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArraySet -> com.android.tools.r8.internal.mt:
     int[] a -> b
     int size -> c
     1:2:void <init>():55:56 -> <init>
@@ -79332,23 +79333,23 @@
     2:2:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArraySet.iterator():119:119 -> iterator
     2:2:java.util.Iterator iterator():29 -> iterator
     1:1:int size():148:148 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArraySet$1 -> com.android.tools.r8.internal.kt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArraySet$1 -> com.android.tools.r8.internal.lt:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArraySet this$0 -> c
     int next -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArraySet):119:120 -> <init>
     1:1:boolean hasNext():124:124 -> hasNext
     1:3:int nextInt():129:129 -> nextInt
     1:2:void remove():135:136 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArrays -> com.android.tools.r8.internal.mt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArrays -> com.android.tools.r8.internal.nt:
     int[] EMPTY_ARRAY -> a
     1:1:void <clinit>():100:100 -> <clinit>
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntBidirectionalIterator -> com.android.tools.r8.internal.nt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntBidirectionalIterator -> com.android.tools.r8.internal.ot:
     int previousInt() -> c
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection -> com.android.tools.r8.internal.pt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection -> com.android.tools.r8.internal.qt:
     boolean contains(int) -> f
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollections -> com.android.tools.r8.internal.st:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollections -> com.android.tools.r8.internal.tt:
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection unmodifiable(com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection):536:536 -> a
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollections$EmptyCollection -> com.android.tools.r8.internal.qt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollections$EmptyCollection -> com.android.tools.r8.internal.rt:
     1:1:void <init>():39:39 -> <init>
     1:1:boolean addAll(com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection):96:96 -> a
     1:1:boolean addAll(java.util.Collection):81:81 -> addAll
@@ -79359,7 +79360,7 @@
     1:1:boolean removeAll(java.util.Collection):86:86 -> removeAll
     1:1:boolean retainAll(java.util.Collection):91:91 -> retainAll
     1:1:java.lang.Object[] toArray():49:49 -> toArray
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollections$UnmodifiableCollection -> com.android.tools.r8.internal.rt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollections$UnmodifiableCollection -> com.android.tools.r8.internal.st:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection collection -> b
     1:3:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection):369:371 -> <init>
     1:1:boolean add(java.lang.Object):365:365 -> add
@@ -79384,10 +79385,10 @@
     1:1:java.lang.Object[] toArray(java.lang.Object[]):422:422 -> toArray
     2:2:java.lang.Object[] toArray():427:427 -> toArray
     1:1:java.lang.String toString():512:512 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntComparator -> com.android.tools.r8.internal.tt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntComparator -> com.android.tools.r8.internal.ut:
     int compare(int,int) -> a
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator -> com.android.tools.r8.internal.vt:
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterators -> com.android.tools.r8.internal.yt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator -> com.android.tools.r8.internal.wt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterators -> com.android.tools.r8.internal.zt:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterators$EmptyIterator EMPTY_ITERATOR -> a
     1:1:void <clinit>():103:103 -> <clinit>
     1:1:int unwrap(com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator,int[]):312:312 -> a
@@ -79411,28 +79412,28 @@
     15:15:int unwrap(com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator,int[]):312 -> a
     9:9:int com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterators.unwrap(com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator,int[],int,int):288:288 -> a
     9:9:int unwrap(com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator,int[]):312 -> a
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterators$EmptyIterator -> com.android.tools.r8.internal.wt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterators$EmptyIterator -> com.android.tools.r8.internal.xt:
     1:1:void <init>():42:42 -> <init>
     1:1:int previousInt():62:62 -> c
     1:1:java.lang.Object clone():87:87 -> clone
     1:1:int nextInt():57:57 -> nextInt
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterators$UnmodifiableIterator -> com.android.tools.r8.internal.xt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterators$UnmodifiableIterator -> com.android.tools.r8.internal.yt:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator i -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator):807:808 -> <init>
     1:1:boolean hasNext():813:813 -> hasNext
     1:1:int nextInt():818:818 -> nextInt
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntList -> com.android.tools.r8.internal.zt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntList -> com.android.tools.r8.internal.At:
     void getElements(int,int[],int,int) -> a
     void removeElements(int,int) -> a
     void add(int,int) -> b
     int getInt(int) -> b
     int set(int,int) -> c
     int removeInt(int) -> g
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntListIterator -> com.android.tools.r8.internal.At:
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntLists -> com.android.tools.r8.internal.Ct:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntListIterator -> com.android.tools.r8.internal.Bt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntLists -> com.android.tools.r8.internal.Dt:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntLists$EmptyList EMPTY_LIST -> a
     1:1:void <clinit>():323:323 -> <clinit>
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntLists$EmptyList -> com.android.tools.r8.internal.Bt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntLists$EmptyList -> com.android.tools.r8.internal.Ct:
     1:1:void <init>():65:65 -> <init>
     1:1:boolean add(java.lang.Integer):156:156 -> a
     2:3:void getElements(int,int[],int,int):263:264 -> a
@@ -79476,7 +79477,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntList com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntLists$EmptyList.subList(int,int):246:246 -> subList
     1:1:java.util.List subList(int,int):62 -> subList
     1:1:java.lang.String toString():311:311 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntOpenHashSet -> com.android.tools.r8.internal.Jt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntOpenHashSet -> com.android.tools.r8.internal.Kt:
     int[] key -> b
     float f -> h
     int maxFill -> f
@@ -79533,7 +79534,7 @@
     9:13:void com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntOpenHashSet.shiftKeys(int):339:343 -> k
     9:13:boolean removeEntry(int):349 -> k
     1:1:int size():412:412 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntOpenHashSet$SetIterator -> com.android.tools.r8.internal.It:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntOpenHashSet$SetIterator -> com.android.tools.r8.internal.Jt:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntArrayList wrapped -> f
     boolean mustReturnNull -> e
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntOpenHashSet this$0 -> g
@@ -79552,25 +79553,25 @@
     14:22:void remove():532 -> remove
     23:24:void remove():535:536 -> remove
     25:25:void remove():528:528 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSet -> com.android.tools.r8.internal.Kt:
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSets -> com.android.tools.r8.internal.Mt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSet -> com.android.tools.r8.internal.Lt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSets -> com.android.tools.r8.internal.Nt:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSets$EmptySet EMPTY_SET -> a
     1:1:void <clinit>():76:76 -> <clinit>
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSets$EmptySet -> com.android.tools.r8.internal.Lt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSets$EmptySet -> com.android.tools.r8.internal.Mt:
     1:1:void <init>():42:42 -> <init>
     1:1:java.lang.Object clone():52:52 -> clone
     1:1:boolean equals(java.lang.Object):58:58 -> equals
     1:1:boolean rem(int):64:64 -> h
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSortedSet -> com.android.tools.r8.internal.Nt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSortedSet -> com.android.tools.r8.internal.Ot:
     int firstInt() -> L
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSortedSet tailSet(int) -> a
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSortedSet headSet(int) -> d
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSortedSet subSet(int,int) -> d
     int lastInt() -> p
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSortedSets -> com.android.tools.r8.internal.Pt:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSortedSets -> com.android.tools.r8.internal.Qt:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSortedSets$EmptySet EMPTY_SET -> a
     1:1:void <clinit>():168:168 -> <clinit>
-com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSortedSets$EmptySet -> com.android.tools.r8.internal.Ot:
+com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSortedSets$EmptySet -> com.android.tools.r8.internal.Pt:
     1:1:void <init>():42:42 -> <init>
     1:1:java.lang.Object clone():155:155 -> clone
     1:1:java.lang.Integer com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntSortedSets$EmptySet.first():139:139 -> first
@@ -79857,9 +79858,9 @@
     2:2:int com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$KeySet.size():745:745 -> hashCode
     2:2:int hashCode():57 -> hashCode
     3:8:int hashCode():58:63 -> hashCode
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceMap$Entry -> com.android.tools.r8.internal.NC:
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceMap$FastEntrySet -> com.android.tools.r8.internal.OC:
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap -> com.android.tools.r8.internal.XC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceMap$Entry -> com.android.tools.r8.internal.OC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceMap$FastEntrySet -> com.android.tools.r8.internal.PC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap -> com.android.tools.r8.internal.YC:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollection values -> k
     java.lang.Object[] value -> c
     int size -> h
@@ -79920,14 +79921,14 @@
     1:1:int size():386:386 -> size
     1:22:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollection com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap.values():794:815 -> values
     1:22:java.util.Collection values():49 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$1 -> com.android.tools.r8.internal.PC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$1 -> com.android.tools.r8.internal.QC:
     com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap):794:794 -> <init>
     1:1:void clear():812:812 -> clear
     1:1:boolean contains(java.lang.Object):807:807 -> contains
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():797:797 -> iterator
     1:1:int size():802:802 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$EntryIterator -> com.android.tools.r8.internal.QC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$EntryIterator -> com.android.tools.r8.internal.RC:
     com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$MapEntry entry -> h
     com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap this$0 -> i
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap):600:600 -> <init>
@@ -79935,13 +79936,13 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$MapEntry com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$EntryIterator.next():605:605 -> next
     1:1:java.lang.Object next():600 -> next
     1:2:void remove():610:611 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$KeyIterator -> com.android.tools.r8.internal.RC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$KeyIterator -> com.android.tools.r8.internal.SC:
     com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap):721:722 -> <init>
     1:1:java.lang.Long com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$KeyIterator.next():733:733 -> next
     1:1:java.lang.Object next():720 -> next
     1:1:long nextLong():727:727 -> nextLong
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$KeySet -> com.android.tools.r8.internal.SC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$KeySet -> com.android.tools.r8.internal.TC:
     com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap):737:737 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$1):737:737 -> <init>
@@ -79949,7 +79950,7 @@
     1:1:boolean contains(long):750:750 -> b
     1:1:void clear():762:762 -> clear
     1:1:int size():745:745 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$MapEntry -> com.android.tools.r8.internal.TC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$MapEntry -> com.android.tools.r8.internal.UC:
     com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap this$0 -> c
     int index -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap,int):430:431 -> <init>
@@ -79961,7 +79962,7 @@
     1:1:int hashCode():476:476 -> hashCode
     1:2:java.lang.Object setValue(java.lang.Object):449:450 -> setValue
     1:1:java.lang.String toString():481:481 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.UC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.VC:
     com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap):625:625 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$1):625:625 -> <init>
@@ -79970,7 +79971,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():627:627 -> iterator
     1:29:boolean remove(java.lang.Object):659:687 -> remove
     1:1:int size():696:696 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$MapIterator -> com.android.tools.r8.internal.VC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$MapIterator -> com.android.tools.r8.internal.WC:
     com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap this$0 -> g
     boolean mustReturnNullKey -> e
     com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongArrayList wrapped -> f
@@ -79989,11 +79990,11 @@
     15:24:void remove():580 -> remove
     25:26:void remove():583:584 -> remove
     27:27:void remove():576:576 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$ValueIterator -> com.android.tools.r8.internal.WC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap$ValueIterator -> com.android.tools.r8.internal.XC:
     com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.longs.Long2ReferenceOpenHashMap):782:783 -> <init>
     1:1:java.lang.Object next():788:788 -> next
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongArrayList -> com.android.tools.r8.internal.ZC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongArrayList -> com.android.tools.r8.internal.aD:
     long[] a -> b
     int size -> c
     1:3:void <init>(int):81:83 -> <init>
@@ -80081,7 +80082,7 @@
     1:2:com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongListIterator listIterator(int):493:494 -> j
     1:6:boolean removeAll(java.util.Collection):482:487 -> removeAll
     1:1:int size():327:327 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongArrayList$1 -> com.android.tools.r8.internal.YC:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongArrayList$1 -> com.android.tools.r8.internal.ZC:
     com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongArrayList this$0 -> d
     int pos -> b
     int last -> c
@@ -80095,17 +80096,17 @@
     1:3:long nextLong():506:506 -> nextLong
     1:1:int previousIndex():520:520 -> previousIndex
     1:10:void remove():534:534 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongBidirectionalIterator -> com.android.tools.r8.internal.aD:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongBidirectionalIterator -> com.android.tools.r8.internal.bD:
     long previousLong() -> b
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongCollection -> com.android.tools.r8.internal.bD:
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongIterator -> com.android.tools.r8.internal.dD:
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongList -> com.android.tools.r8.internal.eD:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongCollection -> com.android.tools.r8.internal.cD:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongIterator -> com.android.tools.r8.internal.eD:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongList -> com.android.tools.r8.internal.fD:
     void add(int,long) -> a
     void removeElements(int,int) -> a
     long set(int,long) -> b
     long getLong(int) -> c
     long removeLong(int) -> e
-com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongSet -> com.android.tools.r8.internal.kD:
+com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongSet -> com.android.tools.r8.internal.lD:
 com.android.tools.r8.it.unimi.dsi.fastutil.objects.AbstractObject2BooleanMap -> com.android.tools.r8.internal.J0:
     1:1:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.AbstractObject2BooleanFunction.<init>():44:44 -> <init>
     1:1:void <init>():45 -> <init>
@@ -80827,7 +80828,7 @@
     1:7:int hashCode():57:63 -> hashCode
 com.android.tools.r8.it.unimi.dsi.fastutil.objects.AbstractReferenceSortedSet -> com.android.tools.r8.internal.o1:
     1:1:void <init>():23:23 -> <init>
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap -> com.android.tools.r8.internal.pI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap -> com.android.tools.r8.internal.qI:
     java.lang.Object[] key -> b
     boolean[] value -> c
     int size -> d
@@ -80855,7 +80856,7 @@
     1:1:int size():252:252 -> size
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.booleans.BooleanCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap.values():326:326 -> values
     1:1:java.util.Collection values():37 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap$EntrySet -> com.android.tools.r8.internal.oI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap$EntrySet -> com.android.tools.r8.internal.pI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap):133:133 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap$1):133:133 -> <init>
@@ -80865,7 +80866,7 @@
     2:2:java.util.Iterator iterator():133 -> iterator
     1:12:boolean remove(java.lang.Object):213:224 -> remove
     1:1:int size():197:197 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap$EntrySet$1 -> com.android.tools.r8.internal.nI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap$EntrySet$1 -> com.android.tools.r8.internal.oI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap$EntrySet this$1 -> d
     int curr -> b
     int next -> c
@@ -80874,7 +80875,7 @@
     1:3:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanMap$Entry com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanArrayMap$EntrySet$1.next():147:147 -> next
     1:3:java.lang.Object next():136 -> next
     1:7:void remove():153:153 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap -> com.android.tools.r8.internal.sI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap -> com.android.tools.r8.internal.tI:
     java.lang.Object[] key -> c
     int[] value -> d
     int size -> e
@@ -80905,7 +80906,7 @@
     1:1:int size():252:252 -> size
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap.values():326:326 -> values
     1:1:java.util.Collection values():37 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap$EntrySet -> com.android.tools.r8.internal.rI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap$EntrySet -> com.android.tools.r8.internal.sI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap):133:133 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap$1):133:133 -> <init>
@@ -80915,7 +80916,7 @@
     2:2:java.util.Iterator iterator():133 -> iterator
     1:12:boolean remove(java.lang.Object):213:224 -> remove
     1:1:int size():197:197 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap$EntrySet$1 -> com.android.tools.r8.internal.qI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap$EntrySet$1 -> com.android.tools.r8.internal.rI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap$EntrySet this$1 -> d
     int curr -> b
     int next -> c
@@ -80924,9 +80925,9 @@
     1:3:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntMap$Entry com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntArrayMap$EntrySet$1.next():147:147 -> next
     1:3:java.lang.Object next():136 -> next
     1:7:void remove():153:153 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntFunction -> com.android.tools.r8.internal.tI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntFunction -> com.android.tools.r8.internal.uI:
     int getInt(java.lang.Object) -> a
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap -> com.android.tools.r8.internal.CI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap -> com.android.tools.r8.internal.DI:
     int size -> l
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection values -> o
     java.lang.Object[] key -> c
@@ -81001,14 +81002,14 @@
     1:1:java.util.SortedMap tailMap(java.lang.Object):87 -> tailMap
     1:22:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap.values():1596:1617 -> values
     1:22:java.util.Collection values():87 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$1 -> com.android.tools.r8.internal.uI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$1 -> com.android.tools.r8.internal.vI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap):1596:1596 -> <init>
     1:1:void clear():1614:1614 -> clear
     1:1:boolean contains(int):1609:1609 -> f
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator iterator():1599:1599 -> iterator
     1:1:int size():1604:1604 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$EntryIterator -> com.android.tools.r8.internal.vI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$EntryIterator -> com.android.tools.r8.internal.wI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$MapEntry entry -> g
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap this$0 -> h
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap):1222:1222 -> <init>
@@ -81023,14 +81024,14 @@
     1:1:void set(java.lang.Object):1219:1219 -> set
     2:2:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$MapIterator.set(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntMap$Entry):1211:1211 -> set
     2:2:void set(java.lang.Object):1219 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$KeyIterator -> com.android.tools.r8.internal.wI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$KeyIterator -> com.android.tools.r8.internal.xI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap this$0 -> g
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap):1455:1456 -> <init>
     1:1:void add(java.lang.Object):1452:1452 -> add
     1:1:java.lang.Object next():1461:1461 -> next
     1:1:java.lang.Object previous():1442:1442 -> previous
     1:1:void set(java.lang.Object):1447:1447 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$KeySet -> com.android.tools.r8.internal.xI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$KeySet -> com.android.tools.r8.internal.yI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap):1465:1465 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$1):1465:1465 -> <init>
@@ -81052,7 +81053,7 @@
     1:1:java.util.SortedSet subSet(java.lang.Object,java.lang.Object):1465 -> subSet
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$KeySet.tailSet(java.lang.Object):1515:1515 -> tailSet
     1:1:java.util.SortedSet tailSet(java.lang.Object):1465 -> tailSet
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$MapEntry -> com.android.tools.r8.internal.yI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$MapEntry -> com.android.tools.r8.internal.zI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap this$0 -> c
     int index -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap,int):824:825 -> <init>
@@ -81071,7 +81072,7 @@
     5:5:java.lang.Integer com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$MapEntry.setValue(java.lang.Integer):869:869 -> setValue
     5:5:java.lang.Object setValue(java.lang.Object):819 -> setValue
     1:1:java.lang.String toString():887:887 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.zI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.AI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap):1269:1269 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$1):1269:1269 -> <init>
@@ -81093,7 +81094,7 @@
     1:1:java.util.SortedSet tailSet(java.lang.Object):1269:1269 -> tailSet
     2:2:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$MapEntrySet.tailSet(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntMap$Entry):1291:1291 -> tailSet
     2:2:java.util.SortedSet tailSet(java.lang.Object):1269 -> tailSet
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$MapIterator -> com.android.tools.r8.internal.AI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$MapIterator -> com.android.tools.r8.internal.BI:
     int curr -> d
     int index -> e
     int prev -> b
@@ -81111,7 +81112,7 @@
     1:2:int previousIndex():1122:1123 -> previousIndex
     1:47:void remove():1145:1191 -> remove
     48:48:void remove():1146:1146 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$ValueIterator -> com.android.tools.r8.internal.BI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$ValueIterator -> com.android.tools.r8.internal.CI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap this$0 -> g
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap):1578:1579 -> <init>
     1:1:void add(java.lang.Object):1544:1544 -> add
@@ -81126,11 +81127,11 @@
     1:1:void set(java.lang.Object):1544:1544 -> set
     2:2:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntLinkedOpenHashMap$ValueIterator.set(java.lang.Integer):1559:1559 -> set
     2:2:void set(java.lang.Object):1544 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntMap -> com.android.tools.r8.internal.FI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntMap -> com.android.tools.r8.internal.GI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSet object2IntEntrySet() -> e
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntMap$Entry -> com.android.tools.r8.internal.DI:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntMap$FastEntrySet -> com.android.tools.r8.internal.EI:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap -> com.android.tools.r8.internal.OI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntMap$Entry -> com.android.tools.r8.internal.EI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntMap$FastEntrySet -> com.android.tools.r8.internal.FI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap -> com.android.tools.r8.internal.PI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSet keys -> k
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection values -> l
     java.lang.Object[] key -> c
@@ -81193,14 +81194,14 @@
     1:1:int size():429:429 -> size
     1:22:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap.values():848:869 -> values
     1:22:java.util.Collection values():49 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$1 -> com.android.tools.r8.internal.GI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$1 -> com.android.tools.r8.internal.HI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap):848:848 -> <init>
     1:1:void clear():866:866 -> clear
     1:1:boolean contains(int):861:861 -> f
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator iterator():851:851 -> iterator
     1:1:int size():856:856 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$EntryIterator -> com.android.tools.r8.internal.HI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$EntryIterator -> com.android.tools.r8.internal.II:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$MapEntry entry -> h
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap this$0 -> i
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap):654:654 -> <init>
@@ -81208,11 +81209,11 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$MapEntry com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$EntryIterator.next():659:659 -> next
     1:1:java.lang.Object next():654 -> next
     1:2:void remove():664:665 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$KeyIterator -> com.android.tools.r8.internal.II:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$KeyIterator -> com.android.tools.r8.internal.JI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap):775:776 -> <init>
     1:1:java.lang.Object next():781:781 -> next
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$KeySet -> com.android.tools.r8.internal.JI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$KeySet -> com.android.tools.r8.internal.KI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap):785:785 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$1):785:785 -> <init>
@@ -81221,7 +81222,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():788:788 -> iterator
     1:3:boolean remove(java.lang.Object):803:805 -> remove
     1:1:int size():793:793 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$MapEntry -> com.android.tools.r8.internal.KI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$MapEntry -> com.android.tools.r8.internal.LI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap this$0 -> c
     int index -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap,int):473:474 -> <init>
@@ -81240,7 +81241,7 @@
     5:5:java.lang.Integer com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$MapEntry.setValue(java.lang.Integer):518:518 -> setValue
     5:5:java.lang.Object setValue(java.lang.Object):468 -> setValue
     1:1:java.lang.String toString():536:536 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.LI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.MI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap):679:679 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$1):679:679 -> <init>
@@ -81249,7 +81250,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():681:681 -> iterator
     1:29:boolean remove(java.lang.Object):713:741 -> remove
     1:1:int size():750:750 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$MapIterator -> com.android.tools.r8.internal.MI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$MapIterator -> com.android.tools.r8.internal.NI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArrayList wrapped -> f
     boolean mustReturnNullKey -> e
     int c -> d
@@ -81268,16 +81269,16 @@
     14:23:void remove():634 -> remove
     24:25:void remove():637:638 -> remove
     26:26:void remove():630:630 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$ValueIterator -> com.android.tools.r8.internal.NI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$ValueIterator -> com.android.tools.r8.internal.OI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap):830:831 -> <init>
     1:1:java.lang.Integer com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap$ValueIterator.next():842:842 -> next
     1:1:java.lang.Object next():829 -> next
     1:1:int nextInt():836:836 -> nextInt
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntSortedMap$FastSortedEntrySet -> com.android.tools.r8.internal.PI:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongMap$Entry -> com.android.tools.r8.internal.QI:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongMap$FastEntrySet -> com.android.tools.r8.internal.RI:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap -> com.android.tools.r8.internal.aJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntSortedMap$FastSortedEntrySet -> com.android.tools.r8.internal.QI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongMap$Entry -> com.android.tools.r8.internal.RI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongMap$FastEntrySet -> com.android.tools.r8.internal.SI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap -> com.android.tools.r8.internal.bJ:
     long[] value -> c
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSet keys -> j
     java.lang.Object[] key -> b
@@ -81339,7 +81340,7 @@
     1:1:int size():429:429 -> size
     1:22:com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap.values():848:869 -> values
     1:22:java.util.Collection values():49 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$1 -> com.android.tools.r8.internal.SI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$1 -> com.android.tools.r8.internal.TI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap):848:848 -> <init>
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongIterator iterator():851:851 -> a
@@ -81351,7 +81352,7 @@
     3:6:boolean contains(long):861 -> b
     1:1:void clear():866:866 -> clear
     1:1:int size():856:856 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$EntryIterator -> com.android.tools.r8.internal.TI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$EntryIterator -> com.android.tools.r8.internal.UI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap this$0 -> i
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$MapEntry entry -> h
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap):654:654 -> <init>
@@ -81359,11 +81360,11 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$MapEntry com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$EntryIterator.next():659:659 -> next
     1:1:java.lang.Object next():654 -> next
     1:2:void remove():664:665 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$KeyIterator -> com.android.tools.r8.internal.UI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$KeyIterator -> com.android.tools.r8.internal.VI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap):775:776 -> <init>
     1:1:java.lang.Object next():781:781 -> next
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$KeySet -> com.android.tools.r8.internal.VI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$KeySet -> com.android.tools.r8.internal.WI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap):785:785 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$1):785:785 -> <init>
@@ -81372,7 +81373,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():788:788 -> iterator
     1:3:boolean remove(java.lang.Object):803:805 -> remove
     1:1:int size():793:793 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$MapEntry -> com.android.tools.r8.internal.WI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$MapEntry -> com.android.tools.r8.internal.XI:
     int index -> b
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap this$0 -> c
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap,int):473:474 -> <init>
@@ -81391,7 +81392,7 @@
     5:5:java.lang.Long com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$MapEntry.setValue(java.lang.Long):518:518 -> setValue
     5:5:java.lang.Object setValue(java.lang.Object):468 -> setValue
     1:1:java.lang.String toString():536:536 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.XI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.YI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap):679:679 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$1):679:679 -> <init>
@@ -81400,7 +81401,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():681:681 -> iterator
     1:29:boolean remove(java.lang.Object):713:741 -> remove
     1:1:int size():750:750 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$MapIterator -> com.android.tools.r8.internal.YI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$MapIterator -> com.android.tools.r8.internal.ZI:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArrayList wrapped -> f
     boolean mustReturnNullKey -> e
     int c -> d
@@ -81419,13 +81420,13 @@
     14:23:void remove():634 -> remove
     24:25:void remove():637:638 -> remove
     26:26:void remove():630:630 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$ValueIterator -> com.android.tools.r8.internal.ZI:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$ValueIterator -> com.android.tools.r8.internal.aJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap):830:831 -> <init>
     1:1:java.lang.Long com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap$ValueIterator.next():842:842 -> next
     1:1:java.lang.Object next():829 -> next
     1:1:long nextLong():836:836 -> nextLong
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap -> com.android.tools.r8.internal.jJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap -> com.android.tools.r8.internal.kJ:
     java.lang.Object[] value -> d
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollection values -> p
     int maxFill -> l
@@ -81502,14 +81503,14 @@
     1:1:java.util.SortedMap tailMap(java.lang.Object):85 -> tailMap
     1:22:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap.values():1529:1550 -> values
     1:22:java.util.Collection values():85 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$1 -> com.android.tools.r8.internal.bJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$1 -> com.android.tools.r8.internal.cJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap):1529:1529 -> <init>
     1:1:void clear():1547:1547 -> clear
     1:1:boolean contains(java.lang.Object):1542:1542 -> contains
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():1532:1532 -> iterator
     1:1:int size():1537:1537 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$EntryIterator -> com.android.tools.r8.internal.cJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$EntryIterator -> com.android.tools.r8.internal.dJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$MapEntry entry -> g
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap this$0 -> h
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap):1181:1181 -> <init>
@@ -81524,14 +81525,14 @@
     1:1:void set(java.lang.Object):1178:1178 -> set
     2:2:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$MapIterator.set(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry):1170:1170 -> set
     2:2:void set(java.lang.Object):1178 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$KeyIterator -> com.android.tools.r8.internal.dJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$KeyIterator -> com.android.tools.r8.internal.eJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap this$0 -> g
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap):1412:1413 -> <init>
     1:1:void add(java.lang.Object):1409:1409 -> add
     1:1:java.lang.Object next():1418:1418 -> next
     1:1:java.lang.Object previous():1399:1399 -> previous
     1:1:void set(java.lang.Object):1404:1404 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$KeySet -> com.android.tools.r8.internal.eJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$KeySet -> com.android.tools.r8.internal.fJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap):1422:1422 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$1):1422:1422 -> <init>
@@ -81553,7 +81554,7 @@
     1:1:java.util.SortedSet subSet(java.lang.Object,java.lang.Object):1422 -> subSet
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$KeySet.tailSet(java.lang.Object):1472:1472 -> tailSet
     1:1:java.util.SortedSet tailSet(java.lang.Object):1422 -> tailSet
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$MapEntry -> com.android.tools.r8.internal.fJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$MapEntry -> com.android.tools.r8.internal.gJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap this$0 -> c
     int index -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap,int):805:806 -> <init>
@@ -81563,7 +81564,7 @@
     1:1:int hashCode():839:839 -> hashCode
     1:2:java.lang.Object setValue(java.lang.Object):824:825 -> setValue
     1:1:java.lang.String toString():844:844 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$MapEntrySet -> com.android.tools.r8.internal.gJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$MapEntrySet -> com.android.tools.r8.internal.hJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap):1228:1228 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$1):1228:1228 -> <init>
@@ -81585,7 +81586,7 @@
     1:1:java.util.SortedSet tailSet(java.lang.Object):1228:1228 -> tailSet
     2:2:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$MapEntrySet.tailSet(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry):1250:1250 -> tailSet
     2:2:java.util.SortedSet tailSet(java.lang.Object):1228 -> tailSet
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$MapIterator -> com.android.tools.r8.internal.hJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$MapIterator -> com.android.tools.r8.internal.iJ:
     int curr -> d
     int index -> e
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap this$0 -> f
@@ -81603,16 +81604,16 @@
     1:2:int previousIndex():1079:1080 -> previousIndex
     1:49:void remove():1102:1150 -> remove
     50:50:void remove():1103:1103 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$ValueIterator -> com.android.tools.r8.internal.iJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap$ValueIterator -> com.android.tools.r8.internal.jJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap this$0 -> g
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectLinkedOpenCustomHashMap):1517:1518 -> <init>
     1:1:void add(java.lang.Object):1514:1514 -> add
     1:1:java.lang.Object next():1523:1523 -> next
     1:1:java.lang.Object previous():1504:1504 -> previous
     1:1:void set(java.lang.Object):1509:1509 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap -> com.android.tools.r8.internal.lJ:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry -> com.android.tools.r8.internal.kJ:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap -> com.android.tools.r8.internal.DJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap -> com.android.tools.r8.internal.mJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry -> com.android.tools.r8.internal.lJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap -> com.android.tools.r8.internal.EJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Entry tree -> c
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet entries -> g
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet keys -> h
@@ -81724,7 +81725,7 @@
     1:1:int size():939:939 -> size
     1:22:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap.values():1311:1332 -> values
     1:22:java.util.Collection values():43 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1 -> com.android.tools.r8.internal.nJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1 -> com.android.tools.r8.internal.oJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap this$0 -> c
     java.util.Comparator comparator -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap):1116:1117 -> <init>
@@ -81747,20 +81748,20 @@
     1:1:java.util.SortedSet tailSet(java.lang.Object):1116:1116 -> tailSet
     2:2:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1.tailSet(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry):1189:1189 -> tailSet
     2:2:java.util.SortedSet tailSet(java.lang.Object):1116 -> tailSet
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1$1 -> com.android.tools.r8.internal.mJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1$1 -> com.android.tools.r8.internal.nJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1 this$1 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1):1117:1117 -> <init>
     1:1:int compare(java.lang.Object,java.lang.Object):1117:1117 -> compare
     2:2:int com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1$1.compare(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry):1119:1119 -> compare
     2:2:int compare(java.lang.Object,java.lang.Object):1117 -> compare
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$2 -> com.android.tools.r8.internal.oJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$2 -> com.android.tools.r8.internal.pJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap):1311:1311 -> <init>
     1:1:void clear():1329:1329 -> clear
     1:1:boolean contains(java.lang.Object):1319:1319 -> contains
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():1314:1314 -> iterator
     1:1:int size():1324:1324 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Entry -> com.android.tools.r8.internal.pJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Entry -> com.android.tools.r8.internal.qJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Entry left -> d
     int info -> f
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Entry right -> e
@@ -81781,7 +81782,7 @@
     1:1:int hashCode():906:906 -> hashCode
     1:2:java.lang.Object setValue(java.lang.Object):876:877 -> setValue
     1:1:java.lang.String toString():911:911 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$EntryIterator -> com.android.tools.r8.internal.qJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$EntryIterator -> com.android.tools.r8.internal.rJ:
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap):1086:1086 -> <init>
     1:1:void add(java.lang.Object):1085:1085 -> add
     2:2:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$EntryIterator.add(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry):1110:1110 -> add
@@ -81793,18 +81794,18 @@
     1:1:void set(java.lang.Object):1085:1085 -> set
     2:2:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$EntryIterator.set(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry):1105:1105 -> set
     2:2:void set(java.lang.Object):1085 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$KeyIterator -> com.android.tools.r8.internal.rJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$KeyIterator -> com.android.tools.r8.internal.sJ:
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap):1206:1206 -> <init>
     1:1:void add(java.lang.Object):1230:1230 -> add
     1:1:java.lang.Object next():1215:1215 -> next
     1:1:java.lang.Object previous():1220:1220 -> previous
     1:1:void set(java.lang.Object):1225:1225 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$KeySet -> com.android.tools.r8.internal.sJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$KeySet -> com.android.tools.r8.internal.tJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap this$0 -> c
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap):1237:1237 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1):1237:1237 -> <init>
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectBidirectionalIterator iterator():1239:1239 -> iterator
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap -> com.android.tools.r8.internal.AJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap -> com.android.tools.r8.internal.BJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet entries -> g
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet keys -> h
     java.lang.Object to -> d
@@ -81902,7 +81903,7 @@
     1:5:int size():1591:1595 -> size
     1:18:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap.values():1527:1544 -> values
     1:18:java.util.Collection values():1366 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$1 -> com.android.tools.r8.internal.tJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$1 -> com.android.tools.r8.internal.uJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap this$1 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap):1428:1428 -> <init>
     1:1:void clear():1478:1478 -> clear
@@ -81935,19 +81936,19 @@
     1:1:java.util.SortedSet tailSet(java.lang.Object):1428:1428 -> tailSet
     2:2:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$1.tailSet(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry):1503:1503 -> tailSet
     2:2:java.util.SortedSet tailSet(java.lang.Object):1428 -> tailSet
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$2 -> com.android.tools.r8.internal.uJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$2 -> com.android.tools.r8.internal.vJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap this$1 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap):1527:1527 -> <init>
     1:1:void clear():1541:1541 -> clear
     1:1:boolean contains(java.lang.Object):1533:1533 -> contains
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():1529:1529 -> iterator
     1:1:int size():1537:1537 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$KeySet -> com.android.tools.r8.internal.vJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$KeySet -> com.android.tools.r8.internal.wJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap this$1 -> c
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap):1509:1509 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1):1509:1509 -> <init>
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectBidirectionalIterator iterator():1511:1511 -> iterator
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$SubmapEntryIterator -> com.android.tools.r8.internal.wJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$SubmapEntryIterator -> com.android.tools.r8.internal.xJ:
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap):1734:1734 -> <init>
     1:1:void add(java.lang.Object):1733:1733 -> add
     2:2:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$SubmapEntryIterator.add(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry):1758:1758 -> add
@@ -81959,7 +81960,7 @@
     1:1:void set(java.lang.Object):1733:1733 -> set
     2:2:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$SubmapEntryIterator.set(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectMap$Entry):1753:1753 -> set
     2:2:void set(java.lang.Object):1733 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$SubmapIterator -> com.android.tools.r8.internal.xJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$SubmapIterator -> com.android.tools.r8.internal.yJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap this$1 -> g
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap):1703:1704 -> <init>
     1:1:void updateNext():1728:1728 -> l
@@ -81976,20 +81977,20 @@
     3:3:int com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap.compare(java.lang.Object,java.lang.Object):220:220 -> m
     3:3:void updatePrevious():1724 -> m
     4:4:void updatePrevious():1724:1724 -> m
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$SubmapKeyIterator -> com.android.tools.r8.internal.yJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$SubmapKeyIterator -> com.android.tools.r8.internal.zJ:
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap):1774:1774 -> <init>
     1:1:void add(java.lang.Object):1798:1798 -> add
     1:1:java.lang.Object next():1783:1783 -> next
     1:1:java.lang.Object previous():1788:1788 -> previous
     1:1:void set(java.lang.Object):1793:1793 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$SubmapValueIterator -> com.android.tools.r8.internal.zJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap$SubmapValueIterator -> com.android.tools.r8.internal.AJ:
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap):1812:1812 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Submap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1):1812:1812 -> <init>
     1:1:void add(java.lang.Object):1830:1830 -> add
     1:1:java.lang.Object next():1815:1815 -> next
     1:1:java.lang.Object previous():1820:1820 -> previous
     1:1:void set(java.lang.Object):1825:1825 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$TreeIterator -> com.android.tools.r8.internal.BJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$TreeIterator -> com.android.tools.r8.internal.CJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Entry next -> c
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Entry curr -> d
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$Entry prev -> b
@@ -82012,15 +82013,15 @@
     1:1:int nextIndex():1043:1043 -> nextIndex
     1:1:int previousIndex():1047:1047 -> previousIndex
     1:12:void remove():1051:1051 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$ValueIterator -> com.android.tools.r8.internal.CJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$ValueIterator -> com.android.tools.r8.internal.DJ:
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap):1275:1275 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectRBTreeMap$1):1275:1275 -> <init>
     1:1:void add(java.lang.Object):1293:1293 -> add
     1:1:java.lang.Object next():1278:1278 -> next
     1:1:java.lang.Object previous():1283:1283 -> previous
     1:1:void set(java.lang.Object):1288:1288 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectSortedMap$FastSortedEntrySet -> com.android.tools.r8.internal.EJ:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap -> com.android.tools.r8.internal.NJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ObjectSortedMap$FastSortedEntrySet -> com.android.tools.r8.internal.FJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap -> com.android.tools.r8.internal.OJ:
     java.lang.Object[] key -> b
     java.lang.Object[] value -> c
     int maxFill -> j
@@ -82093,14 +82094,14 @@
     1:1:java.util.SortedMap tailMap(java.lang.Object):85 -> tailMap
     1:22:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap.values():1498:1519 -> values
     1:22:java.util.Collection values():85 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$1 -> com.android.tools.r8.internal.FJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$1 -> com.android.tools.r8.internal.GJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap):1498:1498 -> <init>
     1:1:void clear():1516:1516 -> clear
     1:1:boolean contains(java.lang.Object):1511:1511 -> contains
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():1501:1501 -> iterator
     1:1:int size():1506:1506 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$EntryIterator -> com.android.tools.r8.internal.GJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$EntryIterator -> com.android.tools.r8.internal.HJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$MapEntry entry -> g
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap this$0 -> h
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap):1150:1150 -> <init>
@@ -82115,14 +82116,14 @@
     1:1:void set(java.lang.Object):1147:1147 -> set
     2:2:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$MapIterator.set(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceMap$Entry):1139:1139 -> set
     2:2:void set(java.lang.Object):1147 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$KeyIterator -> com.android.tools.r8.internal.HJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$KeyIterator -> com.android.tools.r8.internal.IJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap this$0 -> g
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap):1381:1382 -> <init>
     1:1:void add(java.lang.Object):1378:1378 -> add
     1:1:java.lang.Object next():1387:1387 -> next
     1:1:java.lang.Object previous():1368:1368 -> previous
     1:1:void set(java.lang.Object):1373:1373 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$KeySet -> com.android.tools.r8.internal.IJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$KeySet -> com.android.tools.r8.internal.JJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap):1391:1391 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$1):1391:1391 -> <init>
@@ -82144,7 +82145,7 @@
     1:1:java.util.SortedSet subSet(java.lang.Object,java.lang.Object):1391 -> subSet
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$KeySet.tailSet(java.lang.Object):1441:1441 -> tailSet
     1:1:java.util.SortedSet tailSet(java.lang.Object):1391 -> tailSet
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$MapEntry -> com.android.tools.r8.internal.JJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$MapEntry -> com.android.tools.r8.internal.KJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap this$0 -> c
     int index -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap,int):774:775 -> <init>
@@ -82154,7 +82155,7 @@
     1:1:int hashCode():808:808 -> hashCode
     1:2:java.lang.Object setValue(java.lang.Object):793:794 -> setValue
     1:1:java.lang.String toString():813:813 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.KJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.LJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap):1197:1197 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$1):1197:1197 -> <init>
@@ -82176,7 +82177,7 @@
     1:1:java.util.SortedSet tailSet(java.lang.Object):1197:1197 -> tailSet
     2:2:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$MapEntrySet.tailSet(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceMap$Entry):1219:1219 -> tailSet
     2:2:java.util.SortedSet tailSet(java.lang.Object):1197 -> tailSet
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$MapIterator -> com.android.tools.r8.internal.LJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$MapIterator -> com.android.tools.r8.internal.MJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap this$0 -> f
     int curr -> d
     int index -> e
@@ -82194,17 +82195,17 @@
     1:2:int previousIndex():1048:1049 -> previousIndex
     1:49:void remove():1071:1119 -> remove
     50:50:void remove():1072:1072 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$ValueIterator -> com.android.tools.r8.internal.MJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap$ValueIterator -> com.android.tools.r8.internal.NJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap this$0 -> g
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceLinkedOpenHashMap):1486:1487 -> <init>
     1:1:void add(java.lang.Object):1483:1483 -> add
     1:1:java.lang.Object next():1492:1492 -> next
     1:1:java.lang.Object previous():1473:1473 -> previous
     1:1:void set(java.lang.Object):1478:1478 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceMap -> com.android.tools.r8.internal.PJ:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceMap$Entry -> com.android.tools.r8.internal.OJ:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceSortedMap$FastSortedEntrySet -> com.android.tools.r8.internal.QJ:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArrayList -> com.android.tools.r8.internal.SJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceMap -> com.android.tools.r8.internal.QJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceMap$Entry -> com.android.tools.r8.internal.PJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2ReferenceSortedMap$FastSortedEntrySet -> com.android.tools.r8.internal.RJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArrayList -> com.android.tools.r8.internal.TJ:
     java.lang.Object[] a -> b
     int size -> c
     1:3:void <init>(int):96:98 -> <init>
@@ -82282,7 +82283,7 @@
     728:728:java.lang.Object set(int,java.lang.Object):357:357 -> set
     720:720:java.lang.Object set(int,java.lang.Object):357:357 -> set
     1:1:int size():372:372 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArrayList$1 -> com.android.tools.r8.internal.RJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArrayList$1 -> com.android.tools.r8.internal.SJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArrayList this$0 -> d
     int pos -> b
     int last -> c
@@ -82296,7 +82297,7 @@
     1:1:int previousIndex():524:524 -> previousIndex
     1:10:void remove():538:538 -> remove
     1:3:void set(java.lang.Object):533:533 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArraySet -> com.android.tools.r8.internal.UJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArraySet -> com.android.tools.r8.internal.VJ:
     java.lang.Object[] a -> b
     int size -> c
     1:4:void <init>(java.lang.Object[],int):104:107 -> <init>
@@ -82335,23 +82336,23 @@
     1:2:boolean remove(java.lang.Object):154 -> remove
     3:7:boolean remove(java.lang.Object):156:160 -> remove
     1:1:int size():149:149 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArraySet$1 -> com.android.tools.r8.internal.TJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArraySet$1 -> com.android.tools.r8.internal.UJ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArraySet this$0 -> c
     int next -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArraySet):119:120 -> <init>
     1:1:boolean hasNext():124:124 -> hasNext
     1:3:java.lang.Object next():129:129 -> next
     1:3:void remove():135:137 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArrays -> com.android.tools.r8.internal.VJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectArrays -> com.android.tools.r8.internal.WJ:
 # {"id":"sourceFile","fileName":"ObjectArrays.java"}
     java.lang.Object[] EMPTY_ARRAY -> a
     1:1:void <clinit>():88:88 -> <clinit>
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectBidirectionalIterator -> com.android.tools.r8.internal.XJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectBidirectionalIterator -> com.android.tools.r8.internal.YJ:
     java.lang.Object com.android.tools.r8.it.unimi.dsi.fastutil.BidirectionalIterator.previous() -> previous
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollection -> com.android.tools.r8.internal.YJ:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollections -> com.android.tools.r8.internal.bK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollection -> com.android.tools.r8.internal.ZJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollections -> com.android.tools.r8.internal.cK:
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollection unmodifiable(com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollection):383:383 -> a
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollections$EmptyCollection -> com.android.tools.r8.internal.ZJ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollections$EmptyCollection -> com.android.tools.r8.internal.aK:
     1:1:void <init>():39:39 -> <init>
     1:1:boolean addAll(java.util.Collection):81:81 -> addAll
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectBidirectionalIterator iterator():55:55 -> iterator
@@ -82362,7 +82363,7 @@
     1:1:boolean removeAll(java.util.Collection):86:86 -> removeAll
     1:1:boolean retainAll(java.util.Collection):91:91 -> retainAll
     1:1:java.lang.Object[] toArray():49:49 -> toArray
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollections$UnmodifiableCollection -> com.android.tools.r8.internal.aK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollections$UnmodifiableCollection -> com.android.tools.r8.internal.bK:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollection collection -> b
     1:3:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectCollection):276:278 -> <init>
     1:1:boolean add(java.lang.Object):283:283 -> add
@@ -82384,16 +82385,16 @@
     1:1:java.lang.Object[] toArray(java.lang.Object[]):329:329 -> toArray
     2:2:java.lang.Object[] toArray():334:334 -> toArray
     1:1:java.lang.String toString():359:359 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator -> com.android.tools.r8.internal.dK:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterators -> com.android.tools.r8.internal.hK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator -> com.android.tools.r8.internal.eK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterators -> com.android.tools.r8.internal.iK:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterators$EmptyIterator EMPTY_ITERATOR -> a
     1:1:void <clinit>():103:103 -> <clinit>
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterators$EmptyIterator -> com.android.tools.r8.internal.eK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterators$EmptyIterator -> com.android.tools.r8.internal.fK:
     1:1:void <init>():42:42 -> <init>
     1:1:java.lang.Object clone():87:87 -> clone
     1:1:java.lang.Object next():57:57 -> next
     1:1:java.lang.Object previous():62:62 -> previous
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterators$SingletonIterator -> com.android.tools.r8.internal.fK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterators$SingletonIterator -> com.android.tools.r8.internal.gK:
     java.lang.Object element -> b
     int curr -> c
     1:2:void <init>(java.lang.Object):127:128 -> <init>
@@ -82403,24 +82404,24 @@
     1:1:int nextIndex():157:157 -> nextIndex
     1:4:java.lang.Object previous():150:150 -> previous
     1:1:int previousIndex():162:162 -> previousIndex
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterators$UnmodifiableIterator -> com.android.tools.r8.internal.gK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterators$UnmodifiableIterator -> com.android.tools.r8.internal.hK:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator i -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator):739:740 -> <init>
     1:1:boolean hasNext():745:745 -> hasNext
     1:1:java.lang.Object next():750:750 -> next
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectList -> com.android.tools.r8.internal.iK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectList -> com.android.tools.r8.internal.jK:
     void removeElements(int,int) -> a
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectListIterator -> com.android.tools.r8.internal.jK:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSet -> com.android.tools.r8.internal.lK:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSets -> com.android.tools.r8.internal.oK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectListIterator -> com.android.tools.r8.internal.kK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSet -> com.android.tools.r8.internal.mK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSets -> com.android.tools.r8.internal.pK:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSets$EmptySet EMPTY_SET -> a
     1:1:void <clinit>():70:70 -> <clinit>
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSets$EmptySet -> com.android.tools.r8.internal.mK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSets$EmptySet -> com.android.tools.r8.internal.nK:
     1:1:void <init>():42:42 -> <init>
     1:1:java.lang.Object clone():52:52 -> clone
     1:1:boolean equals(java.lang.Object):58:58 -> equals
     1:1:boolean remove(java.lang.Object):47:47 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSets$Singleton -> com.android.tools.r8.internal.nK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSets$Singleton -> com.android.tools.r8.internal.oK:
     java.lang.Object element -> b
     1:2:void <init>(java.lang.Object):96:97 -> <init>
     1:1:boolean addAll(java.util.Collection):122:122 -> addAll
@@ -82438,11 +82439,11 @@
     1:1:boolean remove(java.lang.Object):107:107 -> remove
     1:1:boolean removeAll(java.util.Collection):127:127 -> removeAll
     1:1:boolean retainAll(java.util.Collection):132:132 -> retainAll
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet -> com.android.tools.r8.internal.pK:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSets -> com.android.tools.r8.internal.rK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet -> com.android.tools.r8.internal.qK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSets -> com.android.tools.r8.internal.sK:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSets$EmptySet EMPTY_SET -> a
     1:1:void <clinit>():114:114 -> <clinit>
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSets$EmptySet -> com.android.tools.r8.internal.qK:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSets$EmptySet -> com.android.tools.r8.internal.rK:
     1:1:void <init>():43:43 -> <init>
     1:1:java.lang.Object clone():101:101 -> clone
     1:1:java.lang.Object first():86:86 -> first
@@ -82453,17 +82454,17 @@
     1:1:java.util.SortedSet subSet(java.lang.Object,java.lang.Object):40 -> subSet
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSets$EmptySet.tailSet(java.lang.Object):81:81 -> tailSet
     1:1:java.util.SortedSet tailSet(java.lang.Object):40 -> tailSet
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanFunction -> com.android.tools.r8.internal.LQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanFunction -> com.android.tools.r8.internal.MQ:
     boolean getBoolean(java.lang.Object) -> b
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap -> com.android.tools.r8.internal.OQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap -> com.android.tools.r8.internal.PQ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSet reference2BooleanEntrySet() -> h
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap$Entry -> com.android.tools.r8.internal.MQ:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap$FastEntrySet -> com.android.tools.r8.internal.NQ:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMaps -> com.android.tools.r8.internal.RQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap$Entry -> com.android.tools.r8.internal.NQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap$FastEntrySet -> com.android.tools.r8.internal.OQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMaps -> com.android.tools.r8.internal.SQ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMaps$EmptyMap EMPTY_MAP -> a
     1:1:void <clinit>():135:135 -> <clinit>
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMap singleton(java.lang.Object,boolean):260:260 -> a
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMaps$EmptyMap -> com.android.tools.r8.internal.PQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMaps$EmptyMap -> com.android.tools.r8.internal.QQ:
     1:1:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanFunctions$EmptyFunction.<init>():41:41 -> <init>
     1:1:void <init>():46 -> <init>
     boolean com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanFunctions$EmptyFunction.getBoolean(java.lang.Object) -> b
@@ -82487,7 +82488,7 @@
     1:1:java.lang.String toString():127:127 -> toString
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.booleans.BooleanCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMaps$EmptyMap.values():97:97 -> values
     1:1:java.util.Collection values():43 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMaps$Singleton -> com.android.tools.r8.internal.QQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMaps$Singleton -> com.android.tools.r8.internal.RQ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSet keys -> e
     com.android.tools.r8.it.unimi.dsi.fastutil.booleans.BooleanCollection values -> f
     java.lang.Object com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanFunctions$Singleton.key -> b
@@ -82531,7 +82532,7 @@
     241:241:java.lang.String toString():240:240 -> toString
     1:2:com.android.tools.r8.it.unimi.dsi.fastutil.booleans.BooleanCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanMaps$Singleton.values():215:216 -> values
     1:2:java.util.Collection values():157 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap -> com.android.tools.r8.internal.aR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap -> com.android.tools.r8.internal.bR:
     com.android.tools.r8.it.unimi.dsi.fastutil.booleans.BooleanCollection values -> k
     java.lang.Object[] key -> b
     boolean[] value -> c
@@ -82636,7 +82637,7 @@
       # {"id":"com.android.tools.r8.synthesized"}
     1:22:com.android.tools.r8.it.unimi.dsi.fastutil.booleans.BooleanCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap.values():803:824 -> values
     1:22:java.util.Collection values():49 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$1 -> com.android.tools.r8.internal.SQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$1 -> com.android.tools.r8.internal.TQ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap):803:803 -> <init>
     1:1:boolean contains(boolean):816:816 -> b
@@ -82648,7 +82649,7 @@
     1:1:void clear():821:821 -> clear
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.booleans.BooleanIterator iterator():806:806 -> iterator
     1:1:int size():811:811 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$EntryIterator -> com.android.tools.r8.internal.TQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$EntryIterator -> com.android.tools.r8.internal.UQ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap this$0 -> i
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$MapEntry entry -> h
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap):609:609 -> <init>
@@ -82656,11 +82657,11 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$MapEntry com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$EntryIterator.next():614:614 -> next
     1:1:java.lang.Object next():609 -> next
     1:2:void remove():619:620 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$KeyIterator -> com.android.tools.r8.internal.UQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$KeyIterator -> com.android.tools.r8.internal.VQ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap):730:731 -> <init>
     1:1:java.lang.Object next():736:736 -> next
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$KeySet -> com.android.tools.r8.internal.VQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$KeySet -> com.android.tools.r8.internal.WQ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap):740:740 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$1):740:740 -> <init>
@@ -82669,7 +82670,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():743:743 -> iterator
     1:3:boolean remove(java.lang.Object):758:760 -> remove
     1:1:int size():748:748 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$MapEntry -> com.android.tools.r8.internal.WQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$MapEntry -> com.android.tools.r8.internal.XQ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap this$0 -> c
     int index -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap,int):428:429 -> <init>
@@ -82688,7 +82689,7 @@
     5:5:java.lang.Boolean com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$MapEntry.setValue(java.lang.Boolean):473:473 -> setValue
     5:5:java.lang.Object setValue(java.lang.Object):423 -> setValue
     1:1:java.lang.String toString():491:491 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.XQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.YQ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap):634:634 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$1):634:634 -> <init>
@@ -82697,7 +82698,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():636:636 -> iterator
     1:29:boolean remove(java.lang.Object):668:696 -> remove
     1:1:int size():705:705 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$MapIterator -> com.android.tools.r8.internal.YQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$MapIterator -> com.android.tools.r8.internal.ZQ:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap this$0 -> g
     boolean mustReturnNullKey -> e
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArrayList wrapped -> f
@@ -82716,13 +82717,13 @@
     14:23:void remove():589 -> remove
     24:25:void remove():592:593 -> remove
     26:26:void remove():585:585 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$ValueIterator -> com.android.tools.r8.internal.ZQ:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$ValueIterator -> com.android.tools.r8.internal.aR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap):785:786 -> <init>
     1:1:boolean nextBoolean():791:791 -> g
     1:1:java.lang.Boolean com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2BooleanOpenHashMap$ValueIterator.next():797:797 -> next
     1:1:java.lang.Object next():784 -> next
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap -> com.android.tools.r8.internal.dR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap -> com.android.tools.r8.internal.eR:
     java.lang.Object[] key -> c
     int[] value -> d
     int size -> e
@@ -82759,7 +82760,7 @@
     1:1:int size():252:252 -> size
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap.values():326:326 -> values
     1:1:java.util.Collection values():37 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap$EntrySet -> com.android.tools.r8.internal.cR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap$EntrySet -> com.android.tools.r8.internal.dR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap):133:133 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap$1):133:133 -> <init>
@@ -82769,7 +82770,7 @@
     2:2:java.util.Iterator iterator():133 -> iterator
     1:12:boolean remove(java.lang.Object):213:224 -> remove
     1:1:int size():197:197 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap$EntrySet$1 -> com.android.tools.r8.internal.bR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap$EntrySet$1 -> com.android.tools.r8.internal.cR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap$EntrySet this$1 -> d
     int curr -> b
     int next -> c
@@ -82778,9 +82779,9 @@
     1:3:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap$Entry com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntArrayMap$EntrySet$1.next():147:147 -> next
     1:3:java.lang.Object next():136 -> next
     1:7:void remove():153:153 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntFunction -> com.android.tools.r8.internal.eR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntFunction -> com.android.tools.r8.internal.fR:
     int getInt(java.lang.Object) -> a
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap -> com.android.tools.r8.internal.nR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap -> com.android.tools.r8.internal.oR:
     int size -> l
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection values -> o
     java.lang.Object[] key -> c
@@ -82856,14 +82857,14 @@
     1:1:java.util.SortedMap tailMap(java.lang.Object):87 -> tailMap
     1:22:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap.values():1596:1617 -> values
     1:22:java.util.Collection values():87 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$1 -> com.android.tools.r8.internal.fR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$1 -> com.android.tools.r8.internal.gR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap):1596:1596 -> <init>
     1:1:void clear():1614:1614 -> clear
     1:1:boolean contains(int):1609:1609 -> f
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator iterator():1599:1599 -> iterator
     1:1:int size():1604:1604 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$EntryIterator -> com.android.tools.r8.internal.gR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$EntryIterator -> com.android.tools.r8.internal.hR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$MapEntry entry -> g
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap this$0 -> h
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap):1222:1222 -> <init>
@@ -82878,14 +82879,14 @@
     1:1:void set(java.lang.Object):1219:1219 -> set
     2:2:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$MapIterator.set(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap$Entry):1211:1211 -> set
     2:2:void set(java.lang.Object):1219 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$KeyIterator -> com.android.tools.r8.internal.hR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$KeyIterator -> com.android.tools.r8.internal.iR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap this$0 -> g
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap):1455:1456 -> <init>
     1:1:void add(java.lang.Object):1452:1452 -> add
     1:1:java.lang.Object next():1461:1461 -> next
     1:1:java.lang.Object previous():1442:1442 -> previous
     1:1:void set(java.lang.Object):1447:1447 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$KeySet -> com.android.tools.r8.internal.iR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$KeySet -> com.android.tools.r8.internal.jR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap):1465:1465 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$1):1465:1465 -> <init>
@@ -82905,7 +82906,7 @@
     1:1:java.util.SortedSet subSet(java.lang.Object,java.lang.Object):1465 -> subSet
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSortedSet com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$KeySet.tailSet(java.lang.Object):1515:1515 -> tailSet
     1:1:java.util.SortedSet tailSet(java.lang.Object):1465 -> tailSet
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$MapEntry -> com.android.tools.r8.internal.jR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$MapEntry -> com.android.tools.r8.internal.kR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap this$0 -> c
     int index -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap,int):824:825 -> <init>
@@ -82924,7 +82925,7 @@
     5:5:java.lang.Integer com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$MapEntry.setValue(java.lang.Integer):869:869 -> setValue
     5:5:java.lang.Object setValue(java.lang.Object):819 -> setValue
     1:1:java.lang.String toString():887:887 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.kR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.lR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap):1269:1269 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$1):1269:1269 -> <init>
@@ -82946,7 +82947,7 @@
     1:1:java.util.SortedSet tailSet(java.lang.Object):1269:1269 -> tailSet
     2:2:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSortedSet com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$MapEntrySet.tailSet(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap$Entry):1291:1291 -> tailSet
     2:2:java.util.SortedSet tailSet(java.lang.Object):1269 -> tailSet
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$MapIterator -> com.android.tools.r8.internal.lR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$MapIterator -> com.android.tools.r8.internal.mR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap this$0 -> f
     int curr -> d
     int index -> e
@@ -82964,7 +82965,7 @@
     1:2:int previousIndex():1122:1123 -> previousIndex
     1:47:void remove():1145:1191 -> remove
     48:48:void remove():1146:1146 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$ValueIterator -> com.android.tools.r8.internal.mR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$ValueIterator -> com.android.tools.r8.internal.nR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap this$0 -> g
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap):1578:1579 -> <init>
     1:1:void add(java.lang.Object):1544:1544 -> add
@@ -82979,11 +82980,11 @@
     1:1:void set(java.lang.Object):1544:1544 -> set
     2:2:void com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap$ValueIterator.set(java.lang.Integer):1559:1559 -> set
     2:2:void set(java.lang.Object):1544 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap -> com.android.tools.r8.internal.qR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap -> com.android.tools.r8.internal.rR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectSet reference2IntEntrySet() -> c
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap$Entry -> com.android.tools.r8.internal.oR:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap$FastEntrySet -> com.android.tools.r8.internal.pR:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap -> com.android.tools.r8.internal.zR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap$Entry -> com.android.tools.r8.internal.pR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap$FastEntrySet -> com.android.tools.r8.internal.qR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap -> com.android.tools.r8.internal.AR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntMap$FastEntrySet entries -> j
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection values -> l
     java.lang.Object[] key -> c
@@ -83049,14 +83050,14 @@
     1:1:int size():429:429 -> size
     1:22:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap.values():848:869 -> values
     1:22:java.util.Collection values():49 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$1 -> com.android.tools.r8.internal.rR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$1 -> com.android.tools.r8.internal.sR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap):848:848 -> <init>
     1:1:void clear():866:866 -> clear
     1:1:boolean contains(int):861:861 -> f
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.ints.IntIterator iterator():851:851 -> iterator
     1:1:int size():856:856 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$EntryIterator -> com.android.tools.r8.internal.sR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$EntryIterator -> com.android.tools.r8.internal.tR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap this$0 -> i
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$MapEntry entry -> h
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap):654:654 -> <init>
@@ -83064,11 +83065,11 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$MapEntry com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$EntryIterator.next():659:659 -> next
     1:1:java.lang.Object next():654 -> next
     1:2:void remove():664:665 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$KeyIterator -> com.android.tools.r8.internal.tR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$KeyIterator -> com.android.tools.r8.internal.uR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap):775:776 -> <init>
     1:1:java.lang.Object next():781:781 -> next
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$KeySet -> com.android.tools.r8.internal.uR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$KeySet -> com.android.tools.r8.internal.vR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap):785:785 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$1):785:785 -> <init>
@@ -83077,7 +83078,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():788:788 -> iterator
     1:3:boolean remove(java.lang.Object):803:805 -> remove
     1:1:int size():793:793 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$MapEntry -> com.android.tools.r8.internal.vR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$MapEntry -> com.android.tools.r8.internal.wR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap this$0 -> c
     int index -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap,int):473:474 -> <init>
@@ -83096,7 +83097,7 @@
     5:5:java.lang.Integer com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$MapEntry.setValue(java.lang.Integer):518:518 -> setValue
     5:5:java.lang.Object setValue(java.lang.Object):468 -> setValue
     1:1:java.lang.String toString():536:536 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.wR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.xR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap):679:679 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$1):679:679 -> <init>
@@ -83105,7 +83106,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():681:681 -> iterator
     1:29:boolean remove(java.lang.Object):713:741 -> remove
     1:1:int size():750:750 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$MapIterator -> com.android.tools.r8.internal.xR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$MapIterator -> com.android.tools.r8.internal.yR:
     boolean mustReturnNullKey -> e
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArrayList wrapped -> f
     int c -> d
@@ -83124,16 +83125,16 @@
     14:23:void remove():634 -> remove
     24:25:void remove():637:638 -> remove
     26:26:void remove():630:630 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$ValueIterator -> com.android.tools.r8.internal.yR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$ValueIterator -> com.android.tools.r8.internal.zR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap):830:831 -> <init>
     1:1:java.lang.Integer com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap$ValueIterator.next():842:842 -> next
     1:1:java.lang.Object next():829 -> next
     1:1:int nextInt():836:836 -> nextInt
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntSortedMap$FastSortedEntrySet -> com.android.tools.r8.internal.AR:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongMap$Entry -> com.android.tools.r8.internal.BR:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongMap$FastEntrySet -> com.android.tools.r8.internal.CR:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap -> com.android.tools.r8.internal.MR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2IntSortedMap$FastSortedEntrySet -> com.android.tools.r8.internal.BR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongMap$Entry -> com.android.tools.r8.internal.CR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongMap$FastEntrySet -> com.android.tools.r8.internal.DR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap -> com.android.tools.r8.internal.NR:
     long[] value -> c
     java.lang.Object[] key -> b
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongMap$FastEntrySet entries -> i
@@ -83194,7 +83195,7 @@
     1:1:int size():429:429 -> size
     1:22:com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongCollection com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap.values():848:869 -> values
     1:22:java.util.Collection values():49 -> values
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$1 -> com.android.tools.r8.internal.DR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$1 -> com.android.tools.r8.internal.ER:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap):848:848 -> <init>
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.longs.LongIterator iterator():851:851 -> a
@@ -83206,7 +83207,7 @@
     3:6:boolean contains(long):861 -> b
     1:1:void clear():866:866 -> clear
     1:1:int size():856:856 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$EntryIterator -> com.android.tools.r8.internal.ER:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$EntryIterator -> com.android.tools.r8.internal.FR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap this$0 -> i
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$MapEntry entry -> h
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap):654:654 -> <init>
@@ -83214,11 +83215,11 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$MapEntry com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$EntryIterator.next():659:659 -> next
     1:1:java.lang.Object next():654 -> next
     1:2:void remove():664:665 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$KeyIterator -> com.android.tools.r8.internal.FR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$KeyIterator -> com.android.tools.r8.internal.GR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap):775:776 -> <init>
     1:1:java.lang.Object next():781:781 -> next
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$KeySet -> com.android.tools.r8.internal.GR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$KeySet -> com.android.tools.r8.internal.HR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap):785:785 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$1):785:785 -> <init>
@@ -83227,7 +83228,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():788:788 -> iterator
     1:3:boolean remove(java.lang.Object):803:805 -> remove
     1:1:int size():793:793 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$MapEntry -> com.android.tools.r8.internal.HR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$MapEntry -> com.android.tools.r8.internal.IR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap this$0 -> c
     int index -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap,int):473:474 -> <init>
@@ -83246,7 +83247,7 @@
     5:5:java.lang.Long com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$MapEntry.setValue(java.lang.Long):518:518 -> setValue
     5:5:java.lang.Object setValue(java.lang.Object):468 -> setValue
     1:1:java.lang.String toString():536:536 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.IR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$MapEntrySet -> com.android.tools.r8.internal.JR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap):679:679 -> <init>
     2:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap,com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$1):679:679 -> <init>
@@ -83255,7 +83256,7 @@
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectIterator iterator():681:681 -> iterator
     1:29:boolean remove(java.lang.Object):713:741 -> remove
     1:1:int size():750:750 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$MapIterator -> com.android.tools.r8.internal.JR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$MapIterator -> com.android.tools.r8.internal.KR:
     boolean mustReturnNullKey -> e
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArrayList wrapped -> f
     int c -> d
@@ -83274,13 +83275,13 @@
     14:23:void remove():634 -> remove
     24:25:void remove():637:638 -> remove
     26:26:void remove():630:630 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$ValueIterator -> com.android.tools.r8.internal.KR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$ValueIterator -> com.android.tools.r8.internal.MR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap this$0 -> h
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap):830:831 -> <init>
     1:1:java.lang.Long com.android.tools.r8.it.unimi.dsi.fastutil.objects.Reference2LongOpenHashMap$ValueIterator.next():842:842 -> next
     1:1:java.lang.Object next():829 -> next
     1:1:long nextLong():836:836 -> nextLong
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArrayList -> com.android.tools.r8.internal.OR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArrayList -> com.android.tools.r8.internal.PR:
     java.lang.Object[] a -> b
     int size -> c
     1:3:void <init>(int):96:98 -> <init>
@@ -83358,7 +83359,7 @@
     728:728:java.lang.Object set(int,java.lang.Object):357:357 -> set
     720:720:java.lang.Object set(int,java.lang.Object):357:357 -> set
     1:1:int size():372:372 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArrayList$1 -> com.android.tools.r8.internal.NR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArrayList$1 -> com.android.tools.r8.internal.OR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArrayList this$0 -> d
     int pos -> b
     int last -> c
@@ -83372,7 +83373,7 @@
     1:1:int previousIndex():524:524 -> previousIndex
     1:10:void remove():538:538 -> remove
     1:3:void set(java.lang.Object):533:533 -> set
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArraySet -> com.android.tools.r8.internal.QR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArraySet -> com.android.tools.r8.internal.RR:
     java.lang.Object[] a -> b
     int size -> c
     1:4:void <init>(java.lang.Object[],int):104:107 -> <init>
@@ -83411,17 +83412,17 @@
     1:2:boolean remove(java.lang.Object):154 -> remove
     3:7:boolean remove(java.lang.Object):156:160 -> remove
     1:1:int size():149:149 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArraySet$1 -> com.android.tools.r8.internal.PR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArraySet$1 -> com.android.tools.r8.internal.QR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArraySet this$0 -> c
     int next -> b
     1:2:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArraySet):119:120 -> <init>
     1:1:boolean hasNext():124:124 -> hasNext
     1:3:java.lang.Object next():129:129 -> next
     1:3:void remove():135:137 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollection -> com.android.tools.r8.internal.RR:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollections -> com.android.tools.r8.internal.UR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollection -> com.android.tools.r8.internal.SR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollections -> com.android.tools.r8.internal.VR:
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollection unmodifiable(com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollection):383:383 -> a
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollections$EmptyCollection -> com.android.tools.r8.internal.SR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollections$EmptyCollection -> com.android.tools.r8.internal.TR:
     1:1:void <init>():39:39 -> <init>
     1:1:boolean addAll(java.util.Collection):81:81 -> addAll
     1:1:com.android.tools.r8.it.unimi.dsi.fastutil.objects.ObjectBidirectionalIterator com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollections$EmptyCollection.iterator():55:55 -> iterator
@@ -83431,7 +83432,7 @@
     1:1:boolean removeAll(java.util.Collection):86:86 -> removeAll
     1:1:boolean retainAll(java.util.Collection):91:91 -> retainAll
     1:1:java.lang.Object[] toArray():49:49 -> toArray
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollections$UnmodifiableCollection -> com.android.tools.r8.internal.TR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollections$UnmodifiableCollection -> com.android.tools.r8.internal.UR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollection collection -> b
     1:3:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceCollection):276:278 -> <init>
     1:1:boolean add(java.lang.Object):283:283 -> add
@@ -83453,9 +83454,9 @@
     1:1:java.lang.Object[] toArray(java.lang.Object[]):329:329 -> toArray
     2:2:java.lang.Object[] toArray():334:334 -> toArray
     1:1:java.lang.String toString():359:359 -> toString
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceList -> com.android.tools.r8.internal.VR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceList -> com.android.tools.r8.internal.WR:
     void removeElements(int,int) -> a
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet -> com.android.tools.r8.internal.XR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet -> com.android.tools.r8.internal.YR:
     java.lang.Object[] key -> b
     float f -> h
     int maxFill -> f
@@ -83500,7 +83501,7 @@
     2:5:boolean remove(java.lang.Object):332 -> remove
     6:13:boolean remove(java.lang.Object):336:343 -> remove
     1:1:int size():380:380 -> size
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet$SetIterator -> com.android.tools.r8.internal.WR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet$SetIterator -> com.android.tools.r8.internal.XR:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet this$0 -> g
     boolean mustReturnNull -> e
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceArrayList wrapped -> f
@@ -83519,16 +83520,16 @@
     14:22:void remove():500 -> remove
     23:24:void remove():503:504 -> remove
     25:25:void remove():496:496 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSet -> com.android.tools.r8.internal.YR:
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSets -> com.android.tools.r8.internal.bS:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSet -> com.android.tools.r8.internal.ZR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSets -> com.android.tools.r8.internal.cS:
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSets$EmptySet EMPTY_SET -> a
     1:1:void <clinit>():70:70 -> <clinit>
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSets$EmptySet -> com.android.tools.r8.internal.ZR:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSets$EmptySet -> com.android.tools.r8.internal.aS:
     1:1:void <init>():42:42 -> <init>
     1:1:java.lang.Object clone():52:52 -> clone
     1:1:boolean equals(java.lang.Object):58:58 -> equals
     1:1:boolean remove(java.lang.Object):47:47 -> remove
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSets$Singleton -> com.android.tools.r8.internal.aS:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSets$Singleton -> com.android.tools.r8.internal.bS:
     java.lang.Object element -> b
     1:2:void <init>(java.lang.Object):96:97 -> <init>
     1:1:boolean addAll(java.util.Collection):122:122 -> addAll
@@ -83546,7 +83547,7 @@
     1:1:boolean remove(java.lang.Object):107:107 -> remove
     1:1:boolean removeAll(java.util.Collection):127:127 -> removeAll
     1:1:boolean retainAll(java.util.Collection):132:132 -> retainAll
-com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSortedSet -> com.android.tools.r8.internal.cS:
+com.android.tools.r8.it.unimi.dsi.fastutil.objects.ReferenceSortedSet -> com.android.tools.r8.internal.dS:
 com.android.tools.r8.jar.CfApplicationWriter -> com.android.tools.r8.internal.C6:
     com.android.tools.r8.graph.DexApplication application -> a
     com.android.tools.r8.graph.AppView appView -> b
@@ -83670,7 +83671,7 @@
     30:30:boolean com.android.tools.r8.jar.CfApplicationWriter.includeMarker(com.android.tools.r8.dex.Marker):131:131 -> b
     30:30:void writeApplication(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.ClassFileConsumer):150 -> b
     31:38:void writeApplication(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.ClassFileConsumer):150:157 -> b
-    39:39:boolean com.android.tools.r8.synthesis.SyntheticNaming.verifyNotInternalSynthetic(com.android.tools.r8.graph.DexType):224:224 -> b
+    39:39:boolean com.android.tools.r8.synthesis.SyntheticNaming.verifyNotInternalSynthetic(com.android.tools.r8.graph.DexType):228:228 -> b
     39:39:void writeApplication(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.ClassFileConsumer):157 -> b
     40:52:void writeApplication(com.android.tools.r8.utils.AndroidApp,com.android.tools.r8.ClassFileConsumer):159:171 -> b
     53:53:com.android.tools.r8.origin.Origin com.android.tools.r8.graph.DexClass.getOrigin():778:778 -> b
@@ -83712,7 +83713,7 @@
 # {"id":"com.android.tools.r8.synthesized"}
     java.lang.String stringValueOf(int) -> a
       # {"id":"com.android.tools.r8.synthesized"}
-com.android.tools.r8.jetbrains.kotlin.Lazy -> com.android.tools.r8.internal.dB:
+com.android.tools.r8.jetbrains.kotlin.Lazy -> com.android.tools.r8.internal.eB:
 # {"id":"sourceFile","fileName":"Lazy.kt"}
 com.android.tools.r8.jetbrains.kotlin.LazyKt -> com.android.tools.r8.jetbrains.kotlin.a:
     1:38:com.android.tools.r8.jetbrains.kotlin.Lazy com.android.tools.r8.jetbrains.kotlin.LazyKt__LazyJVMKt.lazy(com.android.tools.r8.jetbrains.kotlin.LazyThreadSafetyMode,com.android.tools.r8.jetbrains.kotlin.jvm.functions.Function0):0:37 -> a
@@ -83737,10 +83738,10 @@
       # {"id":"com.android.tools.r8.synthesized"}
 com.android.tools.r8.jetbrains.kotlin.LazyKt__LazyKt -> com.android.tools.r8.jetbrains.kotlin.b:
 # {"id":"sourceFile","fileName":"Lazy.kt"}
-com.android.tools.r8.jetbrains.kotlin.NoWhenBranchMatchedException -> com.android.tools.r8.internal.yH:
+com.android.tools.r8.jetbrains.kotlin.NoWhenBranchMatchedException -> com.android.tools.r8.internal.zH:
 # {"id":"sourceFile","fileName":"NoWhenBranchMatchedException.kt"}
     1:1:void <init>():9:9 -> <init>
-com.android.tools.r8.jetbrains.kotlin.Pair -> com.android.tools.r8.internal.JL:
+com.android.tools.r8.jetbrains.kotlin.Pair -> com.android.tools.r8.internal.KL:
 # {"id":"sourceFile","fileName":"Tuples.kt"}
     java.lang.Object first -> b
     java.lang.Object second -> c
@@ -84226,7 +84227,7 @@
     1:1:boolean hasNext():40:40 -> hasNext
     1:1:com.android.tools.r8.jetbrains.kotlin.collections.IndexedValue com.android.tools.r8.jetbrains.kotlin.collections.IndexingIterator.next():41:41 -> next
     1:1:java.lang.Object next():38 -> next
-com.android.tools.r8.jetbrains.kotlin.collections.MapsKt -> com.android.tools.r8.internal.TD:
+com.android.tools.r8.jetbrains.kotlin.collections.MapsKt -> com.android.tools.r8.internal.UD:
     int mapCapacity(int) -> a
       # {"id":"com.android.tools.r8.synthesized"}
     1:4:java.util.Map com.android.tools.r8.jetbrains.kotlin.collections.MapsKt__MapsKt.toMap(java.lang.Iterable):547:550 -> a
@@ -84247,11 +84248,11 @@
     36:36:java.util.Map com.android.tools.r8.jetbrains.kotlin.collections.MapsKt__MapsKt.toMap(java.lang.Iterable):548:548 -> a
     36:36:java.util.Map toMap(java.lang.Iterable):0 -> a
       # {"id":"com.android.tools.r8.synthesized"}
-com.android.tools.r8.jetbrains.kotlin.collections.MapsKt__MapsJVMKt -> com.android.tools.r8.internal.UD:
+com.android.tools.r8.jetbrains.kotlin.collections.MapsKt__MapsJVMKt -> com.android.tools.r8.internal.VD:
 # {"id":"sourceFile","fileName":"MapsJVM.kt"}
-com.android.tools.r8.jetbrains.kotlin.collections.MapsKt___MapsKt -> com.android.tools.r8.internal.VD:
+com.android.tools.r8.jetbrains.kotlin.collections.MapsKt___MapsKt -> com.android.tools.r8.internal.WD:
 # {"id":"sourceFile","fileName":"_Maps.kt"}
-com.android.tools.r8.jetbrains.kotlin.internal.ProgressionUtilKt -> com.android.tools.r8.internal.sN:
+com.android.tools.r8.jetbrains.kotlin.internal.ProgressionUtilKt -> com.android.tools.r8.internal.tN:
 # {"id":"sourceFile","fileName":"progressionUtil.kt"}
     1:1:int com.android.tools.r8.jetbrains.kotlin.internal.ProgressionUtilKt.mod(int,int):10:10 -> a
     1:1:int com.android.tools.r8.jetbrains.kotlin.internal.ProgressionUtilKt.differenceModulo(int,int,int):21 -> a
@@ -84260,7 +84261,7 @@
     2:2:int com.android.tools.r8.jetbrains.kotlin.internal.ProgressionUtilKt.differenceModulo(int,int,int):21 -> a
     2:2:int getProgressionLastElement(int,int,int):47 -> a
     3:3:int getProgressionLastElement(int,int,int):48:48 -> a
-com.android.tools.r8.jetbrains.kotlin.jvm.JvmClassMappingKt -> com.android.tools.r8.internal.mw:
+com.android.tools.r8.jetbrains.kotlin.jvm.JvmClassMappingKt -> com.android.tools.r8.internal.nw:
 # {"id":"sourceFile","fileName":"JvmClassMapping.kt"}
     1:4:java.lang.Class getJavaObjectType(com.android.tools.r8.jetbrains.kotlin.reflect.KClass):58:61 -> a
 com.android.tools.r8.jetbrains.kotlin.jvm.functions.Function0 -> com.android.tools.r8.internal.tl:
@@ -84359,7 +84360,7 @@
     251:316:java.lang.Object[] toArray(java.util.Collection):21:86 -> a
     317:399:java.lang.Object[] toArray(java.util.Collection):22:104 -> a
     400:400:java.lang.Object[] toArray(java.util.Collection):23:23 -> a
-com.android.tools.r8.jetbrains.kotlin.jvm.internal.Intrinsics -> com.android.tools.r8.internal.Au:
+com.android.tools.r8.jetbrains.kotlin.jvm.internal.Intrinsics -> com.android.tools.r8.internal.Bu:
     1:1:void throwUninitializedPropertyAccessException(java.lang.String):0:0 -> a
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":3,"2":4,"3":5,"4":6,"5":7,"6":8}}
     3:3:void throwUninitializedPropertyAccessException(java.lang.String):58:58 -> a
@@ -84392,11 +84393,11 @@
     2:13:void checkNotNullParameter(java.lang.Object,java.lang.String):131 -> b
     14:14:void com.android.tools.r8.jetbrains.kotlin.jvm.internal.Intrinsics.throwParameterIsNullNPE(java.lang.String):140:140 -> b
     14:14:void checkNotNullParameter(java.lang.Object,java.lang.String):131 -> b
-com.android.tools.r8.jetbrains.kotlin.jvm.internal.Lambda -> com.android.tools.r8.internal.IA:
+com.android.tools.r8.jetbrains.kotlin.jvm.internal.Lambda -> com.android.tools.r8.internal.JA:
 # {"id":"sourceFile","fileName":"Lambda.kt"}
     1:1:void <init>(int):10:10 -> <init>
     1:1:java.lang.String toString():11:11 -> toString
-com.android.tools.r8.jetbrains.kotlin.jvm.internal.Reflection -> com.android.tools.r8.internal.fS:
+com.android.tools.r8.jetbrains.kotlin.jvm.internal.Reflection -> com.android.tools.r8.internal.gS:
     com.android.tools.r8.jetbrains.kotlin.jvm.internal.ReflectionFactory factory -> a
     1:9:void <clinit>():26:34 -> <clinit>
     1:1:com.android.tools.r8.jetbrains.kotlin.reflect.KClass getOrCreateKotlinClass(java.lang.Class):59:59 -> a
@@ -84406,11 +84407,11 @@
     4:5:java.lang.String com.android.tools.r8.jetbrains.kotlin.jvm.internal.ReflectionFactory.renderLambdaToString(com.android.tools.r8.jetbrains.kotlin.jvm.internal.FunctionBase):44:45 -> a
     4:5:java.lang.String com.android.tools.r8.jetbrains.kotlin.jvm.internal.ReflectionFactory.renderLambdaToString(com.android.tools.r8.jetbrains.kotlin.jvm.internal.Lambda):39 -> a
     4:5:java.lang.String renderLambdaToString(com.android.tools.r8.jetbrains.kotlin.jvm.internal.Lambda):78 -> a
-com.android.tools.r8.jetbrains.kotlin.jvm.internal.ReflectionFactory -> com.android.tools.r8.internal.gS:
+com.android.tools.r8.jetbrains.kotlin.jvm.internal.ReflectionFactory -> com.android.tools.r8.internal.hS:
     1:1:void <init>():14:14 -> <init>
-com.android.tools.r8.jetbrains.kotlin.reflect.KClass -> com.android.tools.r8.internal.ox:
+com.android.tools.r8.jetbrains.kotlin.reflect.KClass -> com.android.tools.r8.internal.px:
 # {"id":"sourceFile","fileName":"KClass.kt"}
-com.android.tools.r8.jetbrains.kotlin.text.StringsKt -> com.android.tools.r8.internal.uX:
+com.android.tools.r8.jetbrains.kotlin.text.StringsKt -> com.android.tools.r8.internal.vX:
     1:71:java.lang.String com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringsJVMKt.replace(java.lang.String,char,char,boolean):0:70 -> a
     1:71:java.lang.String com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringsJVMKt.replace$default(java.lang.String,char,char,boolean,int,java.lang.Object):68 -> a
     1:71:java.lang.String replace$default(java.lang.String,char,char,boolean,int,java.lang.Object):0 -> a
@@ -84438,15 +84439,15 @@
     4:4:java.lang.String com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringsKt.substringAfterLast$default(java.lang.String,char,java.lang.String,int,java.lang.Object):483 -> b
     4:4:java.lang.String substringAfterLast$default(java.lang.String,char,java.lang.String,int,java.lang.Object):0 -> b
       # {"id":"com.android.tools.r8.synthesized"}
-com.android.tools.r8.jetbrains.kotlin.text.StringsKt__IndentKt -> com.android.tools.r8.internal.vX:
+com.android.tools.r8.jetbrains.kotlin.text.StringsKt__IndentKt -> com.android.tools.r8.internal.wX:
 # {"id":"sourceFile","fileName":"Indent.kt"}
-com.android.tools.r8.jetbrains.kotlin.text.StringsKt__RegexExtensionsKt -> com.android.tools.r8.internal.wX:
+com.android.tools.r8.jetbrains.kotlin.text.StringsKt__RegexExtensionsKt -> com.android.tools.r8.internal.xX:
 # {"id":"sourceFile","fileName":"RegexExtensions.kt"}
-com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringBuilderKt -> com.android.tools.r8.internal.xX:
+com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringBuilderKt -> com.android.tools.r8.internal.yX:
 # {"id":"sourceFile","fileName":"StringBuilder.kt"}
-com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringNumberConversionsKt -> com.android.tools.r8.internal.yX:
+com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringNumberConversionsKt -> com.android.tools.r8.internal.zX:
 # {"id":"sourceFile","fileName":"StringNumberConversions.kt"}
-com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringsKt -> com.android.tools.r8.internal.zX:
+com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringsKt -> com.android.tools.r8.internal.AX:
 # {"id":"sourceFile","fileName":"Strings.kt"}
     1:1:boolean com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringsKt.contains(java.lang.CharSequence,char,boolean):0:0 -> a
     1:1:boolean contains$default(java.lang.CharSequence,char,boolean,int,java.lang.Object):1158 -> a
@@ -84478,7 +84479,7 @@
     1108:1108:boolean com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringsJVMKt.startsWith(java.lang.String,java.lang.String,boolean):418:418 -> a
     1109:1111:boolean com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringsJVMKt.regionMatches(java.lang.String,int,java.lang.String,int,int,boolean):654:656 -> a
     1109:1111:boolean com.android.tools.r8.jetbrains.kotlin.text.StringsKt__StringsJVMKt.startsWith(java.lang.String,java.lang.String,boolean):420 -> a
-com.android.tools.r8.jetbrains.kotlin.text.StringsKt___StringsKt -> com.android.tools.r8.internal.AX:
+com.android.tools.r8.jetbrains.kotlin.text.StringsKt___StringsKt -> com.android.tools.r8.internal.BX:
 # {"id":"sourceFile","fileName":"_Strings.kt"}
 com.android.tools.r8.jetbrains.kotlinx.metadata.Flag -> com.android.tools.r8.internal.Pk:
 # {"id":"sourceFile","fileName":"Flag.kt"}
@@ -84515,7 +84516,7 @@
 com.android.tools.r8.jetbrains.kotlinx.metadata.InconsistentKotlinMetadataException -> com.android.tools.r8.internal.mp:
 # {"id":"sourceFile","fileName":"InconsistentKotlinMetadataException.kt"}
     1:1:void <init>(java.lang.String,java.lang.Throwable):8:8 -> <init>
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation -> com.android.tools.r8.internal.px:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation -> com.android.tools.r8.internal.qx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     java.util.Map arguments -> b
     java.lang.String className -> a
@@ -84528,10 +84529,10 @@
     4:4:java.lang.String toString():0:0 -> toString
     5:5:java.lang.String toString():0:0 -> toString
     2:2:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument -> com.android.tools.r8.internal.rx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument -> com.android.tools.r8.internal.sx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     1:1:void <init>():23:23 -> <init>
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$AnnotationValue -> com.android.tools.r8.internal.qx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$AnnotationValue -> com.android.tools.r8.internal.rx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation annotation -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation):65:65 -> <init>
@@ -84542,7 +84543,7 @@
     4:4:java.lang.String toString():0:0 -> toString
     5:5:java.lang.String toString():0:0 -> toString
     2:2:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$ArrayValue -> com.android.tools.r8.internal.rx$a:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$ArrayValue -> com.android.tools.r8.internal.sx$a:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     java.util.List elements -> a
     1:1:void <init>(java.util.List):66:66 -> <init>
@@ -84553,7 +84554,7 @@
     4:4:java.lang.String toString():0:0 -> toString
     5:5:java.lang.String toString():0:0 -> toString
     2:2:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$BooleanValue -> com.android.tools.r8.internal.sx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$BooleanValue -> com.android.tools.r8.internal.tx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     boolean value -> a
     1:1:void <init>(boolean):44:44 -> <init>
@@ -84578,7 +84579,7 @@
     2:2:java.lang.Boolean com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$BooleanValue.getValue():44:44 -> toString
     2:2:java.lang.String toString():0 -> toString
     3:3:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$ByteValue -> com.android.tools.r8.internal.tx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$ByteValue -> com.android.tools.r8.internal.ux:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     byte value -> a
     1:1:void <init>(byte):37:37 -> <init>
@@ -84599,7 +84600,7 @@
     2:2:java.lang.Byte com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$ByteValue.getValue():37:37 -> toString
     2:2:java.lang.String toString():0 -> toString
     3:3:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$CharValue -> com.android.tools.r8.internal.ux:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$CharValue -> com.android.tools.r8.internal.vx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     char value -> a
     1:1:void <init>(char):38:38 -> <init>
@@ -84624,7 +84625,7 @@
     2:2:java.lang.Character com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$CharValue.getValue():38:38 -> toString
     2:2:java.lang.String toString():0 -> toString
     3:3:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$DoubleValue -> com.android.tools.r8.internal.vx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$DoubleValue -> com.android.tools.r8.internal.wx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     double value -> a
     1:1:void <init>(double):43:43 -> <init>
@@ -84648,7 +84649,7 @@
     2:2:java.lang.Double com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$DoubleValue.getValue():43:43 -> toString
     2:2:java.lang.String toString():0 -> toString
     3:3:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$EnumValue -> com.android.tools.r8.internal.wx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$EnumValue -> com.android.tools.r8.internal.xx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     java.lang.String enumClassName -> a
     java.lang.String enumEntryName -> b
@@ -84661,7 +84662,7 @@
     4:4:java.lang.String toString():0:0 -> toString
     5:5:java.lang.String toString():0:0 -> toString
     2:2:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$FloatValue -> com.android.tools.r8.internal.xx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$FloatValue -> com.android.tools.r8.internal.yx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     float value -> a
     1:1:void <init>(float):42:42 -> <init>
@@ -84685,7 +84686,7 @@
     2:2:java.lang.Float com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$FloatValue.getValue():42:42 -> toString
     2:2:java.lang.String toString():0 -> toString
     3:3:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$IntValue -> com.android.tools.r8.internal.yx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$IntValue -> com.android.tools.r8.internal.zx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     int value -> a
     1:1:void <init>(int):40:40 -> <init>
@@ -84710,7 +84711,7 @@
     2:2:java.lang.Integer com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$IntValue.getValue():40:40 -> toString
     2:2:java.lang.String toString():0 -> toString
     3:3:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$KClassValue -> com.android.tools.r8.internal.zx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$KClassValue -> com.android.tools.r8.internal.Ax:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     java.lang.String className -> a
     int arrayDimensionCount -> b
@@ -84723,10 +84724,10 @@
     4:4:java.lang.String toString():0:0 -> toString
     5:5:java.lang.String toString():0:0 -> toString
     2:2:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$LiteralValue -> com.android.tools.r8.internal.Ax:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$LiteralValue -> com.android.tools.r8.internal.Bx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     1:1:void <init>():30:30 -> <init>
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$LongValue -> com.android.tools.r8.internal.Bx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$LongValue -> com.android.tools.r8.internal.Cx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     long value -> a
     1:1:void <init>(long):41:41 -> <init>
@@ -84751,7 +84752,7 @@
     2:2:java.lang.Long com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$LongValue.getValue():41:41 -> toString
     2:2:java.lang.String toString():0 -> toString
     3:3:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$ShortValue -> com.android.tools.r8.internal.Cx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$ShortValue -> com.android.tools.r8.internal.Dx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     short value -> a
     1:1:void <init>(short):39:39 -> <init>
@@ -84776,7 +84777,7 @@
     2:2:java.lang.Short com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$ShortValue.getValue():39:39 -> toString
     2:2:java.lang.String toString():0 -> toString
     3:3:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$StringValue -> com.android.tools.r8.internal.Dx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$StringValue -> com.android.tools.r8.internal.Ex:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     java.lang.String value -> a
     1:1:void <init>(java.lang.String):59:59 -> <init>
@@ -84798,7 +84799,7 @@
     2:2:java.lang.String com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$StringValue.getValue():59:59 -> toString
     2:2:java.lang.String toString():0 -> toString
     3:3:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$UByteValue -> com.android.tools.r8.internal.Ex:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$UByteValue -> com.android.tools.r8.internal.Fx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     byte value -> a
     1:1:void <init>(byte):48:48 -> <init>
@@ -84820,7 +84821,7 @@
     3:3:java.lang.String com.android.tools.r8.jetbrains.kotlin.UByte.toString-impl(byte):343:343 -> toString
     3:3:java.lang.String toString():0 -> toString
     4:4:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$UIntValue -> com.android.tools.r8.internal.Fx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$UIntValue -> com.android.tools.r8.internal.Gx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     int value -> a
     1:1:void <init>(int):54:54 -> <init>
@@ -84842,7 +84843,7 @@
     3:3:java.lang.String com.android.tools.r8.jetbrains.kotlin.UInt.toString-impl(int):365:365 -> toString
     3:3:java.lang.String toString():0 -> toString
     4:4:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$ULongValue -> com.android.tools.r8.internal.Gx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$ULongValue -> com.android.tools.r8.internal.Hx:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     long value -> a
     1:1:void <init>(long):57:57 -> <init>
@@ -84871,7 +84872,7 @@
     12:12:java.lang.String com.android.tools.r8.jetbrains.kotlin.ULong.toString-impl(long):368 -> toString
     12:12:java.lang.String toString():0 -> toString
     13:13:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$UShortValue -> com.android.tools.r8.internal.Hx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$UShortValue -> com.android.tools.r8.internal.Ix:
 # {"id":"sourceFile","fileName":"annotations.kt"}
     short value -> a
     1:1:void <init>(short):51:51 -> <init>
@@ -84893,7 +84894,7 @@
     3:3:java.lang.String com.android.tools.r8.jetbrains.kotlin.UShort.toString-impl(short):344:344 -> toString
     3:3:java.lang.String toString():0 -> toString
     4:4:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmClass -> com.android.tools.r8.internal.Ix:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmClass -> com.android.tools.r8.internal.Jx:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.util.List extensions -> q
     java.util.List versionRequirements -> p
@@ -84980,9 +84981,9 @@
     1:1:java.util.List getTypeParameters():49:49 -> p
     1:1:java.util.List getVersionRequirements():109:109 -> q
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVisitor visitVersionRequirement():161:161 -> r
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassExtensionVisitor -> com.android.tools.r8.internal.Kx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassExtensionVisitor -> com.android.tools.r8.internal.Lx:
 # {"id":"sourceFile","fileName":"extensions.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassVisitor -> com.android.tools.r8.internal.Lx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassVisitor -> com.android.tools.r8.internal.Mx:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):57:57 -> <init>
     2:2:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassVisitor):57:57 -> <init>
@@ -84990,10 +84991,10 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassVisitor com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassVisitor.getDelegate():59:59 -> e
     1:1:void visitEnd():170 -> e
     2:2:void visitEnd():170:170 -> e
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassifier -> com.android.tools.r8.internal.Nx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassifier -> com.android.tools.r8.internal.Ox:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     1:1:void <init>():972:972 -> <init>
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassifier$Class -> com.android.tools.r8.internal.Mx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassifier$Class -> com.android.tools.r8.internal.Nx:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.lang.String name -> a
     1:1:void <init>(java.lang.String):978:978 -> <init>
@@ -85004,7 +85005,7 @@
     4:4:java.lang.String toString():0:0 -> toString
     5:5:java.lang.String toString():0:0 -> toString
     2:2:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassifier$TypeAlias -> com.android.tools.r8.internal.Nx$a:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassifier$TypeAlias -> com.android.tools.r8.internal.Ox$a:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.lang.String name -> a
     1:1:void <init>(java.lang.String):993:993 -> <init>
@@ -85015,7 +85016,7 @@
     4:4:java.lang.String toString():0:0 -> toString
     5:5:java.lang.String toString():0:0 -> toString
     2:2:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassifier$TypeParameter -> com.android.tools.r8.internal.Nx$b:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassifier$TypeParameter -> com.android.tools.r8.internal.Ox$b:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     int id -> a
     1:1:void <init>(int):985:985 -> <init>
@@ -85026,7 +85027,7 @@
     4:4:java.lang.String toString():0:0 -> toString
     5:5:java.lang.String toString():0:0 -> toString
     2:2:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstantValue -> com.android.tools.r8.internal.Ox:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstantValue -> com.android.tools.r8.internal.Px:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.lang.Object value -> a
     1:1:void <init>(java.lang.Object):1042:1042 -> <init>
@@ -85037,7 +85038,7 @@
     4:4:java.lang.String toString():0:0 -> toString
     5:5:java.lang.String toString():0:0 -> toString
     2:2:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstructor -> com.android.tools.r8.internal.Px:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstructor -> com.android.tools.r8.internal.Qx:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.util.List extensions -> e
     java.util.List versionRequirements -> d
@@ -85057,9 +85058,9 @@
     1:1:int getFlags():307:307 -> c
     1:1:java.util.List getValueParameters():311:311 -> d
     1:1:java.util.List getVersionRequirements():316:316 -> e
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstructorExtensionVisitor -> com.android.tools.r8.internal.Rx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstructorExtensionVisitor -> com.android.tools.r8.internal.Sx:
 # {"id":"sourceFile","fileName":"extensions.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstructorVisitor -> com.android.tools.r8.internal.Sx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstructorVisitor -> com.android.tools.r8.internal.Tx:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstructorVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstructorVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):263:263 -> <init>
@@ -85068,7 +85069,7 @@
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmValueParameterVisitor visitValueParameter(int,java.lang.String) -> a
     1:1:void visitEnd():291:291 -> a
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVisitor visitVersionRequirement() -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmContract -> com.android.tools.r8.internal.Tx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmContract -> com.android.tools.r8.internal.Ux:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.util.List effects -> b
     1:5:void <init>():832:836 -> <init>
@@ -85076,19 +85077,19 @@
     2:205:void accept(com.android.tools.r8.jetbrains.kotlinx.metadata.KmContractVisitor):847:847 -> a
     206:206:void accept(com.android.tools.r8.jetbrains.kotlinx.metadata.KmContractVisitor):848:848 -> a
     1:1:java.util.List getEffects():836:836 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmContractVisitor -> com.android.tools.r8.internal.Ux:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmContractVisitor -> com.android.tools.r8.internal.Vx:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmContractVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmContractVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):732:732 -> <init>
     2:2:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmContractVisitor):732:732 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectVisitor visitEffect(com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectType,com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectInvocationKind):741:741 -> a
     2:2:void visitEnd():747:747 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmDeclarationContainer -> com.android.tools.r8.internal.Vx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmDeclarationContainer -> com.android.tools.r8.internal.Wx:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.util.List getFunctions() -> a
     java.util.List getProperties() -> b
     java.util.List getTypeAliases() -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmDeclarationContainerVisitor -> com.android.tools.r8.internal.Wx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmDeclarationContainerVisitor -> com.android.tools.r8.internal.Xx:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmDeclarationContainerVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmDeclarationContainerVisitor):11:11 -> <init>
@@ -85096,7 +85097,7 @@
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyVisitor visitProperty(int,java.lang.String,int,int) -> a
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeAliasVisitor visitTypeAlias(int,java.lang.String) -> b
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmDeclarationContainerVisitor getDelegate():11:11 -> d
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffect -> com.android.tools.r8.internal.Xx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffect -> com.android.tools.r8.internal.Yx:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.util.List constructorArguments -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectType type -> b
@@ -85112,7 +85113,7 @@
     1:1:java.util.List getConstructorArguments():870:870 -> e
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectInvocationKind getInvocationKind():864:864 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectType getType():863:863 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpression -> com.android.tools.r8.internal.Yx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpression -> com.android.tools.r8.internal.Zx:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.lang.Integer parameterIndex -> c
     java.util.List andArguments -> f
@@ -85135,7 +85136,7 @@
     1:1:java.util.List getOrArguments():933:933 -> g
     1:1:java.lang.Integer getParameterIndex():911:911 -> h
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmType isInstanceType():921:921 -> i
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpressionVisitor -> com.android.tools.r8.internal.Zx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpressionVisitor -> com.android.tools.r8.internal.ay:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpressionVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpressionVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):791:791 -> <init>
@@ -85146,7 +85147,7 @@
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpressionVisitor visitAndArgument():825:825 -> a
     1:1:void visitEnd():838:838 -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpressionVisitor visitOrArgument() -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectInvocationKind -> com.android.tools.r8.internal.ay:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectInvocationKind -> com.android.tools.r8.internal.by:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectInvocationKind AT_MOST_ONCE -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectInvocationKind AT_LEAST_ONCE -> d
@@ -85158,7 +85159,7 @@
     5:5:void <clinit>():884:884 -> <clinit>
     1:1:void <init>(java.lang.String,int):881:881 -> <init>
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectInvocationKind[] values() -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectType -> com.android.tools.r8.internal.by:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectType -> com.android.tools.r8.internal.cy:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectType RETURNS_CONSTANT -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectType RETURNS_NOT_NULL -> d
@@ -85170,7 +85171,7 @@
     5:5:void <clinit>():872:872 -> <clinit>
     1:1:void <init>(java.lang.String,int):869:869 -> <init>
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectType[] values() -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectVisitor -> com.android.tools.r8.internal.cy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectVisitor -> com.android.tools.r8.internal.dy:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):760:760 -> <init>
@@ -85178,7 +85179,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpressionVisitor visitConclusionOfConditionalEffect():773:773 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpressionVisitor visitConstructorArgument():766:766 -> b
     1:1:void visitEnd():779:779 -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType -> com.android.tools.r8.internal.ey:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType -> com.android.tools.r8.internal.fy:
 # {"id":"sourceFile","fileName":"extensions.kt"}
     com.android.tools.r8.jetbrains.kotlin.reflect.KClass klass -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlin.reflect.KClass):31:31 -> <init>
@@ -85190,9 +85191,9 @@
     2:30:java.lang.Class com.android.tools.r8.jetbrains.kotlin.jvm.JvmClassMappingKt.getJavaClass(com.android.tools.r8.jetbrains.kotlin.reflect.KClass):0:28 -> toString
     2:30:java.lang.String toString():39 -> toString
     31:31:java.lang.String toString():39:39 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionVisitor -> com.android.tools.r8.internal.fy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionVisitor -> com.android.tools.r8.internal.gy:
 # {"id":"sourceFile","fileName":"extensions.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmFlexibleTypeUpperBound -> com.android.tools.r8.internal.gy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmFlexibleTypeUpperBound -> com.android.tools.r8.internal.hy:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmType type -> a
     java.lang.String typeFlexibilityId -> b
@@ -85205,7 +85206,7 @@
     4:4:java.lang.String toString():0:0 -> toString
     5:5:java.lang.String toString():0:0 -> toString
     2:2:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunction -> com.android.tools.r8.internal.hy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunction -> com.android.tools.r8.internal.iy:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.util.List valueParameters -> f
     java.util.List typeParameters -> d
@@ -85244,9 +85245,9 @@
     1:1:java.util.List getTypeParameters():356:356 -> i
     1:1:java.util.List getValueParameters():366:366 -> j
     1:1:java.util.List getVersionRequirements():376:376 -> k
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunctionExtensionVisitor -> com.android.tools.r8.internal.jy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunctionExtensionVisitor -> com.android.tools.r8.internal.ky:
 # {"id":"sourceFile","fileName":"extensions.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunctionVisitor -> com.android.tools.r8.internal.ky:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunctionVisitor -> com.android.tools.r8.internal.ly:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunctionVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunctionVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):301:301 -> <init>
@@ -85259,21 +85260,21 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor visitReturnType(int):337:337 -> b
     2:2:void visitEnd():363:363 -> b
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVisitor visitVersionRequirement():343:343 -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmLambda -> com.android.tools.r8.internal.ly:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmLambda -> com.android.tools.r8.internal.my:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunction function -> b
     1:1:void <init>():282:282 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunctionVisitor visitFunction(int,java.lang.String):289:289 -> a
     2:2:void com.android.tools.r8.jetbrains.kotlinx.metadata.KmLambda.setFunction(com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunction):286:286 -> a
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunctionVisitor visitFunction(int,java.lang.String):289 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmLambdaVisitor -> com.android.tools.r8.internal.my:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmLambdaVisitor -> com.android.tools.r8.internal.ny:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmLambdaVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmLambdaVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):240:240 -> <init>
     2:2:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmLambdaVisitor):240:240 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunctionVisitor visitFunction(int,java.lang.String):248:248 -> a
     2:2:void visitEnd():254:254 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage -> com.android.tools.r8.internal.ny:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage -> com.android.tools.r8.internal.oy:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.util.List functions -> b
     java.util.List extensions -> e
@@ -85313,9 +85314,9 @@
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeAliasVisitor visitTypeAlias(int,java.lang.String):220 -> b
     4:4:com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeAliasVisitor visitTypeAlias(int,java.lang.String):220:220 -> b
     1:1:java.util.List getTypeAliases():208:208 -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackageExtensionVisitor -> com.android.tools.r8.internal.py:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackageExtensionVisitor -> com.android.tools.r8.internal.qy:
 # {"id":"sourceFile","fileName":"extensions.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackageVisitor -> com.android.tools.r8.internal.qy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackageVisitor -> com.android.tools.r8.internal.ry:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackageVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):179:179 -> <init>
     2:2:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackageVisitor):179:179 -> <init>
@@ -85323,7 +85324,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackageVisitor com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackageVisitor.getDelegate():181:181 -> e
     1:1:void visitEnd():195 -> e
     2:2:void visitEnd():195:195 -> e
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmProperty -> com.android.tools.r8.internal.ry:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmProperty -> com.android.tools.r8.internal.sy:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.util.List typeParameters -> f
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmValueParameter setterParameter -> h
@@ -85362,9 +85363,9 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmValueParameter getSetterParameter():453:453 -> i
     1:1:java.util.List getTypeParameters():443:443 -> j
     1:1:java.util.List getVersionRequirements():463:463 -> k
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyExtensionVisitor -> com.android.tools.r8.internal.ty:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyExtensionVisitor -> com.android.tools.r8.internal.uy:
 # {"id":"sourceFile","fileName":"extensions.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyVisitor -> com.android.tools.r8.internal.uy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyVisitor -> com.android.tools.r8.internal.vy:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):373:373 -> <init>
@@ -85376,7 +85377,7 @@
     5:5:void visitEnd():429:429 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor visitReturnType(int):409:409 -> b
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVisitor visitVersionRequirement():415:415 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmType -> com.android.tools.r8.internal.vy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmType -> com.android.tools.r8.internal.wy:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmFlexibleTypeUpperBound flexibleTypeUpperBound -> g
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassifier classifier -> c
@@ -85422,7 +85423,7 @@
     1:1:int getFlags():668:668 -> e
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmFlexibleTypeUpperBound getFlexibleTypeUpperBound():707:707 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmType getOuterType():700:700 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeAlias -> com.android.tools.r8.internal.wy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeAlias -> com.android.tools.r8.internal.xy:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.util.List typeParameters -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmType expandedType -> f
@@ -85476,7 +85477,7 @@
     1:1:java.lang.String getName():510:510 -> e
     1:1:java.util.List getTypeParameters():515:515 -> f
     1:1:java.util.List getVersionRequirements():536:536 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeAliasVisitor -> com.android.tools.r8.internal.yy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeAliasVisitor -> com.android.tools.r8.internal.zy:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeAliasVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeAliasVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):439:439 -> <init>
@@ -85487,9 +85488,9 @@
     4:4:void visitEnd():496:496 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor visitUnderlyingType(int):458:458 -> b
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVisitor visitVersionRequirement():482:482 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeExtensionVisitor -> com.android.tools.r8.internal.Ay:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeExtensionVisitor -> com.android.tools.r8.internal.By:
 # {"id":"sourceFile","fileName":"extensions.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeParameter -> com.android.tools.r8.internal.By:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeParameter -> com.android.tools.r8.internal.Cy:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.util.List upperBounds -> f
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance variance -> e
@@ -85512,9 +85513,9 @@
     1:1:java.lang.String getName():633:633 -> d
     1:1:java.util.List getUpperBounds():640:640 -> e
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance getVariance():635:635 -> f
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeParameterExtensionVisitor -> com.android.tools.r8.internal.Dy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeParameterExtensionVisitor -> com.android.tools.r8.internal.Ey:
 # {"id":"sourceFile","fileName":"extensions.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeParameterVisitor -> com.android.tools.r8.internal.Ey:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeParameterVisitor -> com.android.tools.r8.internal.Fy:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeParameterVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeParameterVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):544:544 -> <init>
@@ -85522,7 +85523,7 @@
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeParameterExtensionVisitor visitExtensions(com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType) -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor visitUpperBound(int):551:551 -> a
     2:2:void visitEnd():565:565 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeProjection -> com.android.tools.r8.internal.Fy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeProjection -> com.android.tools.r8.internal.Gy:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmType type -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance variance -> a
@@ -85539,7 +85540,7 @@
     4:4:java.lang.String toString():0:0 -> toString
     5:5:java.lang.String toString():0:0 -> toString
     2:2:java.lang.String toString():0:0 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor -> com.android.tools.r8.internal.Gy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor -> com.android.tools.r8.internal.Hy:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):580:580 -> <init>
@@ -85554,7 +85555,7 @@
     2:2:void visitStarProjection():624:624 -> b
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor visitOuterType(int):654:654 -> b
     1:1:void visitTypeParameter(int):606:606 -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmValueParameter -> com.android.tools.r8.internal.Hy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmValueParameter -> com.android.tools.r8.internal.Iy:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.util.List extensions -> f
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmType type -> d
@@ -85576,7 +85577,7 @@
     1:1:java.lang.String getName():584:584 -> c
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmType getType():590:590 -> d
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmType getVarargElementType():595:595 -> e
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmValueParameterVisitor -> com.android.tools.r8.internal.Jy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmValueParameterVisitor -> com.android.tools.r8.internal.Ky:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmValueParameterVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmValueParameterVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):506:506 -> <init>
@@ -85584,14 +85585,14 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor visitType(int):513:513 -> a
     2:2:void visitEnd():535:535 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor visitVarargElementType(int):521:521 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance -> com.android.tools.r8.internal.Ky:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance -> com.android.tools.r8.internal.Ly:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance INVARIANT -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance OUT -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance IN -> c
     1:11:void <clinit>():850:860 -> <clinit>
     1:1:void <init>(java.lang.String,int):846:846 -> <init>
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersion -> com.android.tools.r8.internal.Ly:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersion -> com.android.tools.r8.internal.My:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     int minor -> b
     int patch -> c
@@ -85601,7 +85602,7 @@
     1:1:int getMinor():1030:1030 -> b
     1:1:int getPatch():1030:1030 -> c
     1:1:java.lang.String toString():1031:1031 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirement -> com.android.tools.r8.internal.My:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirement -> com.android.tools.r8.internal.Ny:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     java.lang.Integer errorCode -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementLevel level -> c
@@ -85639,7 +85640,7 @@
     21:21:void visitVersion(int,int,int):811 -> a
     1:1:java.lang.Integer getErrorCode():791:791 -> b
     1:1:java.lang.String getMessage():796:796 -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementLevel -> com.android.tools.r8.internal.Ny:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementLevel -> com.android.tools.r8.internal.Oy:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementLevel HIDDEN -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementLevel ERROR -> c
@@ -85650,7 +85651,7 @@
     4:4:void <clinit>():893 -> <clinit>
     5:5:void <clinit>():893:893 -> <clinit>
     1:1:void <init>(java.lang.String,int):890:890 -> <init>
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVersionKind -> com.android.tools.r8.internal.Oy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVersionKind -> com.android.tools.r8.internal.Py:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVersionKind COMPILER_VERSION -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVersionKind API_VERSION -> d
@@ -85661,7 +85662,7 @@
     4:4:void <clinit>():902 -> <clinit>
     5:5:void <clinit>():902:902 -> <clinit>
     1:1:void <init>(java.lang.String,int):899:899 -> <init>
-com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVisitor -> com.android.tools.r8.internal.Py:
+com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVisitor -> com.android.tools.r8.internal.Qy:
 # {"id":"sourceFile","fileName":"visitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVisitor delegate -> a
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):691:691 -> <init>
@@ -85669,7 +85670,7 @@
     void visit(com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVersionKind,com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementLevel,java.lang.Integer,java.lang.String) -> a
     void visitVersion(int,int,int) -> a
     1:1:void visitEnd():720:720 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.NodesKt -> com.android.tools.r8.internal.BH:
+com.android.tools.r8.jetbrains.kotlinx.metadata.NodesKt -> com.android.tools.r8.internal.CH:
 # {"id":"sourceFile","fileName":"nodes.kt"}
     1:1:java.lang.Object addTo(java.lang.Object,java.util.Collection):1045:1045 -> a
 com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ClassWriter -> com.android.tools.r8.internal.jb:
@@ -85779,7 +85780,7 @@
     2:2:void com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ClassWriter$visitVersionRequirement$1.invoke(int):468:468 -> a
     2:2:java.lang.Object invoke(java.lang.Object):468 -> a
     3:3:java.lang.Object invoke(java.lang.Object):468:468 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.LambdaWriter -> com.android.tools.r8.internal.aB:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.LambdaWriter -> com.android.tools.r8.internal.bB:
 # {"id":"sourceFile","fileName":"writers.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$Builder t -> b
     1:3:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.StringTable):532:534 -> <init>
@@ -85790,14 +85791,14 @@
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunctionVisitor visitFunction(int,java.lang.String):537 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext getC():534:534 -> b
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$Builder getT():533:533 -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.LambdaWriter$visitFunction$1 -> com.android.tools.r8.internal.ZA:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.LambdaWriter$visitFunction$1 -> com.android.tools.r8.internal.aB:
 # {"id":"sourceFile","fileName":"writers.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.LambdaWriter this$0 -> b
     1:1:java.lang.Object invoke(java.lang.Object):537:537 -> a
     2:539:void com.android.tools.r8.jetbrains.kotlinx.metadata.impl.LambdaWriter$visitFunction$1.invoke(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$Builder):0:537 -> a
     2:539:java.lang.Object invoke(java.lang.Object):537 -> a
     540:540:java.lang.Object invoke(java.lang.Object):537:537 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter -> com.android.tools.r8.internal.HL:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter -> com.android.tools.r8.internal.IL:
 # {"id":"sourceFile","fileName":"writers.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$Builder t -> b
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.StringTable,java.util.List,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):482:482 -> <init>
@@ -85815,35 +85816,35 @@
     1:2:void visitEnd():501:502 -> e
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext getC():484:484 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$Builder getT():483:483 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitExtensions$1 -> com.android.tools.r8.internal.DL:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitExtensions$1 -> com.android.tools.r8.internal.EL:
 # {"id":"sourceFile","fileName":"writers.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter this$0 -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType $type -> b
     1:1:java.lang.Object invoke(java.lang.Object):496:496 -> a
     2:499:com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackageExtensionVisitor com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitExtensions$1.invoke(com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.MetadataExtensions):0:497 -> a
     2:499:java.lang.Object invoke(java.lang.Object):496 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitFunction$1 -> com.android.tools.r8.internal.EL:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitFunction$1 -> com.android.tools.r8.internal.FL:
 # {"id":"sourceFile","fileName":"writers.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter this$0 -> b
     1:1:java.lang.Object invoke(java.lang.Object):487:487 -> a
     2:489:void com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitFunction$1.invoke(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$Builder):0:487 -> a
     2:489:java.lang.Object invoke(java.lang.Object):487 -> a
     490:490:java.lang.Object invoke(java.lang.Object):487:487 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitProperty$1 -> com.android.tools.r8.internal.FL:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitProperty$1 -> com.android.tools.r8.internal.GL:
 # {"id":"sourceFile","fileName":"writers.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter this$0 -> b
     1:1:java.lang.Object invoke(java.lang.Object):490:490 -> a
     2:492:void com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitProperty$1.invoke(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$Builder):0:490 -> a
     2:492:java.lang.Object invoke(java.lang.Object):490 -> a
     493:493:java.lang.Object invoke(java.lang.Object):490:490 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitTypeAlias$1 -> com.android.tools.r8.internal.GL:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitTypeAlias$1 -> com.android.tools.r8.internal.HL:
 # {"id":"sourceFile","fileName":"writers.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter this$0 -> b
     1:1:java.lang.Object invoke(java.lang.Object):493:493 -> a
     2:495:void com.android.tools.r8.jetbrains.kotlinx.metadata.impl.PackageWriter$visitTypeAlias$1.invoke(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias$Builder):0:493 -> a
     2:495:java.lang.Object invoke(java.lang.Object):493 -> a
     496:496:java.lang.Object invoke(java.lang.Object):493:493 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ReadContext -> com.android.tools.r8.internal.dQ:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ReadContext -> com.android.tools.r8.internal.eQ:
 # {"id":"sourceFile","fileName":"readers.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.TypeTable types -> b
     java.util.List contextExtensions -> e
@@ -85865,7 +85866,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.TypeTable getTypes():23:23 -> c
     2:2:java.lang.Integer getTypeParameterId(int):39:39 -> c
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.VersionRequirementTable getVersionRequirements$kotlinx_metadata():24:24 -> d
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ReadUtilsKt -> com.android.tools.r8.internal.fQ:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ReadUtilsKt -> com.android.tools.r8.internal.gQ:
 # {"id":"sourceFile","fileName":"readUtils.kt"}
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation readAnnotation(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.NameResolver):18:18 -> a
     2:3:java.lang.String com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ReadUtilsKt.getClassName(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.NameResolver,int):57:58 -> a
@@ -85909,10 +85910,10 @@
     214:214:com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument readAnnotationArgument(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.NameResolver):42:42 -> a
     215:215:com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument readAnnotationArgument(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.NameResolver):41:41 -> a
     216:216:com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument readAnnotationArgument(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.NameResolver):39:39 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ReadUtilsKt$WhenMappings -> com.android.tools.r8.internal.eQ:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ReadUtilsKt$WhenMappings -> com.android.tools.r8.internal.fQ:
 # {"id":"sourceFile","fileName":"readUtils.kt"}
     int[] $EnumSwitchMapping$0 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ReadersKt -> com.android.tools.r8.internal.gQ:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ReadersKt -> com.android.tools.r8.internal.hQ:
 # {"id":"sourceFile","fileName":"readers.kt"}
     1:1:void accept$default(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class,com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassVisitor,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.NameResolver,java.util.List,int,java.lang.Object):52:52 -> a
     2:59:void com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ReadersKt.accept(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class,com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassVisitor,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.NameResolver,java.util.List):0:57 -> a
@@ -86799,27 +86800,27 @@
 # {"id":"sourceFile","fileName":"extensionUtils.kt"}
     1:4:com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionVisitor applySingleExtension(com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType,com.android.tools.r8.jetbrains.kotlin.jvm.functions.Function1):13:16 -> a
     5:13:com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmExtension singleOfType(java.util.Collection,com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType):25:33 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmClassExtension -> com.android.tools.r8.internal.Jx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmClassExtension -> com.android.tools.r8.internal.Kx:
 # {"id":"sourceFile","fileName":"extensionNodes.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmConstructorExtension -> com.android.tools.r8.internal.Qx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmConstructorExtension -> com.android.tools.r8.internal.Rx:
 # {"id":"sourceFile","fileName":"extensionNodes.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmExtension -> com.android.tools.r8.internal.dy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmExtension -> com.android.tools.r8.internal.ey:
 # {"id":"sourceFile","fileName":"extensionNodes.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmFunctionExtension -> com.android.tools.r8.internal.iy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmFunctionExtension -> com.android.tools.r8.internal.jy:
 # {"id":"sourceFile","fileName":"extensionNodes.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmPackageExtension -> com.android.tools.r8.internal.oy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmPackageExtension -> com.android.tools.r8.internal.py:
 # {"id":"sourceFile","fileName":"extensionNodes.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmPropertyExtension -> com.android.tools.r8.internal.sy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmPropertyExtension -> com.android.tools.r8.internal.ty:
 # {"id":"sourceFile","fileName":"extensionNodes.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmTypeAliasExtension -> com.android.tools.r8.internal.xy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmTypeAliasExtension -> com.android.tools.r8.internal.yy:
 # {"id":"sourceFile","fileName":"extensionNodes.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmTypeExtension -> com.android.tools.r8.internal.zy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmTypeExtension -> com.android.tools.r8.internal.Ay:
 # {"id":"sourceFile","fileName":"extensionNodes.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmTypeParameterExtension -> com.android.tools.r8.internal.Cy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmTypeParameterExtension -> com.android.tools.r8.internal.Dy:
 # {"id":"sourceFile","fileName":"extensionNodes.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmValueParameterExtension -> com.android.tools.r8.internal.Iy:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmValueParameterExtension -> com.android.tools.r8.internal.Jy:
 # {"id":"sourceFile","fileName":"extensionNodes.kt"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.MetadataExtensions -> com.android.tools.r8.internal.wE:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.MetadataExtensions -> com.android.tools.r8.internal.xE:
 # {"id":"sourceFile","fileName":"MetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.MetadataExtensions$Companion Companion -> a
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassExtensionVisitor writeClassExtensions(com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Builder,com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext) -> a
@@ -86829,19 +86830,19 @@
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyExtensionVisitor writePropertyExtensions(com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$Builder,com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext) -> a
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeExtensionVisitor writeTypeExtensions(com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Builder,com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext) -> a
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeParameterExtensionVisitor writeTypeParameterExtensions(com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Builder,com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext) -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.MetadataExtensions$Companion -> com.android.tools.r8.internal.vE:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.MetadataExtensions$Companion -> com.android.tools.r8.internal.wE:
 # {"id":"sourceFile","fileName":"MetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.MetadataExtensions$Companion $$INSTANCE -> a
     com.android.tools.r8.jetbrains.kotlin.Lazy INSTANCES$delegate -> b
     1:1:void <clinit>():84:84 -> <clinit>
     1:1:void <init>():83:83 -> <init>
     1:1:java.util.List getINSTANCES():84:84 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.MetadataExtensions$Companion$INSTANCES$2 -> com.android.tools.r8.internal.uE:
+com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.MetadataExtensions$Companion$INSTANCES$2 -> com.android.tools.r8.internal.vE:
 # {"id":"sourceFile","fileName":"MetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.MetadataExtensions$Companion$INSTANCES$2 INSTANCE -> b
     1:3:java.util.List com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.MetadataExtensions$Companion$INSTANCES$2.invoke():85:87 -> a
     1:3:java.lang.Object invoke():84 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation -> com.android.tools.r8.internal.cO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation -> com.android.tools.r8.internal.dO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
     java.util.List argument_ -> e
     int memoizedSerializedSize -> g
@@ -86895,11 +86896,11 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Builder toBuilder():4329 -> m
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation.newBuilder(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation):4327:4327 -> m
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Builder toBuilder():4329 -> m
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$1 -> com.android.tools.r8.internal.TN:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$1 -> com.android.tools.r8.internal.UN:
     1:1:void <init>():1957:1957 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):1962:1962 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):1957 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument -> com.android.tools.r8.internal.aO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument -> com.android.tools.r8.internal.bO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument defaultInstance -> h
     int memoizedSerializedSize -> g
@@ -86946,11 +86947,11 @@
     1:1:boolean hasValue():3813:3813 -> k
     1:2:void initFields():3823:3824 -> l
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Builder newBuilder():3939:3939 -> m
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$1 -> com.android.tools.r8.internal.UN:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$1 -> com.android.tools.r8.internal.VN:
     1:1:void <init>():2080:2080 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):2085:2085 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):2080 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Builder -> com.android.tools.r8.internal.VN:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Builder -> com.android.tools.r8.internal.WN:
     int nameId_ -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value value_ -> e
     int bitField0_ -> c
@@ -87001,7 +87002,7 @@
     14:14:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.UninitializedMessageException com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.AbstractMessageLite$Builder.newUninitializedMessageException(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLite):316:316 -> g
     14:14:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument build():3986 -> g
     15:15:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument build():3986:3986 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value -> com.android.tools.r8.internal.ZN:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value -> com.android.tools.r8.internal.aO:
     int flags_ -> n
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value defaultInstance -> q
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
@@ -87115,11 +87116,11 @@
     1:1:boolean hasFlags():2793:2793 -> x
     1:1:boolean hasFloatValue():2617:2617 -> y
     1:1:boolean hasIntValue():2602:2602 -> z
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$1 -> com.android.tools.r8.internal.WN:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$1 -> com.android.tools.r8.internal.XN:
     1:1:void <init>():2399:2399 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):2404:2404 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):2399 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Builder -> com.android.tools.r8.internal.XN:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Builder -> com.android.tools.r8.internal.YN:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Type type_ -> d
     int flags_ -> n
     int arrayDimensionCount_ -> m
@@ -87193,7 +87194,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Builder.create():3019:3019 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Builder access$2100():3005 -> f
     1:49:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value buildPartial():3066:3114 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Type -> com.android.tools.r8.internal.YN:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Type -> com.android.tools.r8.internal.ZN:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Type[] $VALUES -> p
     int value -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Type BYTE -> c
@@ -87227,7 +87228,7 @@
     13:13:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Type valueOf(int):2531:2531 -> a
     14:14:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Type valueOf(int):2530:2530 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Argument$Value$Type[] values():2416:2416 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Builder -> com.android.tools.r8.internal.bO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Builder -> com.android.tools.r8.internal.cO:
     java.util.List argument_ -> e
     int id_ -> d
     int bitField0_ -> c
@@ -87260,7 +87261,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Builder.create():4348:4348 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Builder access$4200():4334 -> f
     1:13:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation buildPartial():4377:4389 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class -> com.android.tools.r8.internal.gO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class -> com.android.tools.r8.internal.hO:
     java.util.List enumEntry_ -> r
     java.util.List property_ -> p
     int fqName_ -> f
@@ -87460,11 +87461,11 @@
     1:1:java.util.List getSupertypeIdList():9110:9110 -> x
     1:1:java.util.List getSupertypeList():9074:9074 -> y
     1:1:java.util.List getTypeAliasList():9260:9260 -> z
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$1 -> com.android.tools.r8.internal.dO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$1 -> com.android.tools.r8.internal.eO:
     1:1:void <init>():8838:8838 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):8843:8843 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):8838 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Builder -> com.android.tools.r8.internal.eO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Builder -> com.android.tools.r8.internal.fO:
     java.util.List sealedSubclassFqName_ -> r
     java.util.List enumEntry_ -> q
     java.util.List typeAlias_ -> p
@@ -87672,7 +87673,7 @@
     2:3:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Builder setFqName(int):10319:10320 -> f
     1:91:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class buildPartial():9897:9987 -> g
     92:93:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Builder setInlineClassUnderlyingPropertyName(int):11456:11457 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Kind -> com.android.tools.r8.internal.fO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Kind -> com.android.tools.r8.internal.gO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Kind INTERFACE -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Kind CLASS -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Kind COMPANION_OBJECT -> i
@@ -87687,7 +87688,7 @@
     1:2:void <init>(java.lang.String,int,int,int):8954:8955 -> <init>
     1:1:int getNumber():8925:8925 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Kind[] values():8855:8855 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor -> com.android.tools.r8.internal.jO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor -> com.android.tools.r8.internal.kO:
     java.util.List valueParameter_ -> f
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor defaultInstance -> j
     int memoizedSerializedSize -> i
@@ -87747,11 +87748,11 @@
     1:1:boolean hasFlags():13802:13802 -> o
     1:3:void initFields():13888:13890 -> p
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor$Builder newBuilder():14020:14020 -> q
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor$1 -> com.android.tools.r8.internal.hO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor$1 -> com.android.tools.r8.internal.iO:
     1:1:void <init>():13774:13774 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):13779:13779 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):13774 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor$Builder -> com.android.tools.r8.internal.iO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor$Builder -> com.android.tools.r8.internal.jO:
     int flags_ -> f
     java.util.List versionRequirement_ -> h
     int bitField0_ -> e
@@ -87793,7 +87794,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor$Builder.create():14043:14043 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor$Builder access$12800():14030 -> f
     1:18:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor buildPartial():14074:14091 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract -> com.android.tools.r8.internal.mO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract -> com.android.tools.r8.internal.nO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract defaultInstance -> f
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.Parser PARSER -> g
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
@@ -87842,11 +87843,11 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract$Builder toBuilder():23860 -> k
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract.newBuilder(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract):23858:23858 -> k
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract$Builder toBuilder():23860 -> k
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract$1 -> com.android.tools.r8.internal.kO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract$1 -> com.android.tools.r8.internal.lO:
     1:1:void <init>():23703:23703 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):23708:23708 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):23703 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract$Builder -> com.android.tools.r8.internal.lO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract$Builder -> com.android.tools.r8.internal.mO:
     java.util.List effect_ -> d
     int bitField0_ -> c
     1:91:void <init>():23872:23962 -> <init>
@@ -87888,7 +87889,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract$Builder.create():23879:23879 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract$Builder access$22600():23865 -> f
     1:7:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Contract buildPartial():23906:23912 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect -> com.android.tools.r8.internal.rO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect -> com.android.tools.r8.internal.sO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$EffectType effectType_ -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
     java.util.List effectConstructorArgument_ -> e
@@ -87950,11 +87951,11 @@
     1:1:boolean hasKind():24530:24530 -> n
     1:4:void initFields():24540:24543 -> o
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$Builder newBuilder():24672:24672 -> p
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$1 -> com.android.tools.r8.internal.nO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$1 -> com.android.tools.r8.internal.oO:
     1:1:void <init>():24270:24270 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):24275:24275 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):24270 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$Builder -> com.android.tools.r8.internal.oO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$Builder -> com.android.tools.r8.internal.pO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$EffectType effectType_ -> d
     java.util.List effectConstructorArgument_ -> e
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression conclusionOfConditionalEffect_ -> f
@@ -88014,7 +88015,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$Builder.create():24696:24696 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$Builder access$23100():24682 -> f
     1:21:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect buildPartial():24729:24749 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$EffectType -> com.android.tools.r8.internal.pO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$EffectType -> com.android.tools.r8.internal.qO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$EffectType RETURNS_CONSTANT -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$EffectType CALLS -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$EffectType RETURNS_NOT_NULL -> e
@@ -88027,7 +88028,7 @@
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$EffectType valueOf(int):24357:24357 -> a
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$EffectType valueOf(int):24356:24356 -> a
     4:4:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$EffectType valueOf(int):24355:24355 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$InvocationKind -> com.android.tools.r8.internal.qO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$InvocationKind -> com.android.tools.r8.internal.rO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$InvocationKind AT_MOST_ONCE -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$InvocationKind[] $VALUES -> f
     int value -> b
@@ -88040,7 +88041,7 @@
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$InvocationKind valueOf(int):24422:24422 -> a
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$InvocationKind valueOf(int):24421:24421 -> a
     4:4:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Effect$InvocationKind valueOf(int):24420:24420 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$EnumEntry -> com.android.tools.r8.internal.uO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$EnumEntry -> com.android.tools.r8.internal.vO:
     int memoizedSerializedSize -> g
     int bitField0_ -> d
     int name_ -> e
@@ -88084,11 +88085,11 @@
     1:1:boolean hasName():20864:20864 -> m
     1:1:void initFields():20874:20874 -> n
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$EnumEntry$Builder newBuilder():20979:20979 -> o
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$EnumEntry$1 -> com.android.tools.r8.internal.sO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$EnumEntry$1 -> com.android.tools.r8.internal.tO:
     1:1:void <init>():20843:20843 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$EnumEntry com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$EnumEntry$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):20848:20848 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):20843 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$EnumEntry$Builder -> com.android.tools.r8.internal.tO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$EnumEntry$Builder -> com.android.tools.r8.internal.uO:
     int name_ -> f
     int bitField0_ -> e
     1:1:void <init>():20995:20995 -> <init>
@@ -88127,7 +88128,7 @@
     10:10:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.UninitializedMessageException com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.AbstractMessageLite$Builder.newUninitializedMessageException(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLite):316:316 -> g
     10:10:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$EnumEntry build():21023 -> g
     11:11:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$EnumEntry build():21023:21023 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression -> com.android.tools.r8.internal.yO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression -> com.android.tools.r8.internal.zO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
     int memoizedSerializedSize -> l
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression defaultInstance -> m
@@ -88214,11 +88215,11 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$Builder toBuilder():25872 -> v
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression.newBuilder(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression):25870:25870 -> v
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$Builder toBuilder():25872 -> v
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$1 -> com.android.tools.r8.internal.vO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$1 -> com.android.tools.r8.internal.wO:
     1:1:void <init>():25389:25389 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):25394:25394 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):25389 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$Builder -> com.android.tools.r8.internal.wO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$Builder -> com.android.tools.r8.internal.xO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type isInstanceType_ -> g
     int isInstanceTypeId_ -> h
     java.util.List orArgument_ -> j
@@ -88302,7 +88303,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$Builder.create():25896:25896 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$Builder access$24000():25882 -> f
     1:34:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression buildPartial():25935:25968 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$ConstantValue -> com.android.tools.r8.internal.xO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$ConstantValue -> com.android.tools.r8.internal.yO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$ConstantValue FALSE -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$ConstantValue NULL -> e
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$ConstantValue[] $VALUES -> f
@@ -88315,7 +88316,7 @@
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$ConstantValue valueOf(int):25442:25442 -> a
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$ConstantValue valueOf(int):25441:25441 -> a
     4:4:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Expression$ConstantValue valueOf(int):25440:25440 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function -> com.android.tools.r8.internal.BO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function -> com.android.tools.r8.internal.CO:
     int receiverTypeId_ -> l
     java.util.List versionRequirement_ -> o
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function defaultInstance -> s
@@ -88437,11 +88438,11 @@
     1:1:boolean hasContract():15086:15086 -> x
     1:1:boolean hasFlags():14847:14847 -> y
     1:1:boolean hasName():14892:14892 -> z
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$1 -> com.android.tools.r8.internal.zO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$1 -> com.android.tools.r8.internal.AO:
     1:1:void <init>():14811:14811 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):14816:14816 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):14811 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$Builder -> com.android.tools.r8.internal.AO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$Builder -> com.android.tools.r8.internal.BO:
     java.util.List versionRequirement_ -> p
     int receiverTypeId_ -> m
     int returnTypeId_ -> j
@@ -88581,7 +88582,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$Builder.create():15357:15357 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$Builder access$13600():15344 -> f
     1:55:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function buildPartial():15406:15460 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$MemberKind -> com.android.tools.r8.internal.CO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$MemberKind -> com.android.tools.r8.internal.DO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$MemberKind DELEGATION -> e
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$MemberKind[] $VALUES -> g
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$MemberKind SYNTHESIZED -> f
@@ -88593,7 +88594,7 @@
     1:2:void <init>(java.lang.String,int,int,int):268:269 -> <init>
     1:1:int getNumber():242:242 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$MemberKind[] values():196:196 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Modality -> com.android.tools.r8.internal.DO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Modality -> com.android.tools.r8.internal.EO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Modality SEALED -> f
     int value -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Modality OPEN -> d
@@ -88605,7 +88606,7 @@
     1:2:void <init>(java.lang.String,int,int,int):86:87 -> <init>
     1:1:int getNumber():60:60 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Modality[] values():14:14 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package -> com.android.tools.r8.internal.GO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package -> com.android.tools.r8.internal.HO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable versionRequirementTable_ -> i
     byte memoizedIsInitialized -> j
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package defaultInstance -> l
@@ -88684,11 +88685,11 @@
     1:1:boolean hasVersionRequirementTable():12123:12123 -> r
     1:5:void initFields():12133:12137 -> s
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$Builder newBuilder():12294:12294 -> t
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$1 -> com.android.tools.r8.internal.EO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$1 -> com.android.tools.r8.internal.FO:
     1:1:void <init>():11982:11982 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):11987:11987 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):11982 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$Builder -> com.android.tools.r8.internal.FO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$Builder -> com.android.tools.r8.internal.GO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable typeTable_ -> i
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable versionRequirementTable_ -> j
     java.util.List function_ -> f
@@ -88795,7 +88796,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$Builder.create():12317:12317 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$Builder access$11100():12304 -> f
     1:27:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package buildPartial():12352:12378 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property -> com.android.tools.r8.internal.JO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property -> com.android.tools.r8.internal.KO:
     int getterFlags_ -> n
     int setterFlags_ -> o
     int receiverTypeId_ -> l
@@ -88909,11 +88910,11 @@
     1:1:boolean hasFlags():16817:16817 -> x
     1:1:boolean hasGetterFlags():17000:17000 -> y
     1:1:boolean hasName():16863:16863 -> z
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$1 -> com.android.tools.r8.internal.HO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$1 -> com.android.tools.r8.internal.IO:
     1:1:void <init>():16780:16780 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):16785:16785 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):16780 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$Builder -> com.android.tools.r8.internal.IO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$Builder -> com.android.tools.r8.internal.JO:
     int getterFlags_ -> o
     java.util.List versionRequirement_ -> q
     int receiverTypeId_ -> m
@@ -89026,7 +89027,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$Builder.create():17320:17320 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$Builder access$15300():17307 -> f
     1:54:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property buildPartial():17369:17422 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type -> com.android.tools.r8.internal.QO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type -> com.android.tools.r8.internal.RO:
     int outerTypeId_ -> o
     int typeParameterName_ -> l
     int typeAliasName_ -> m
@@ -89157,11 +89158,11 @@
     1:1:int getTypeParameter():5809:5809 -> x
     1:1:int getTypeParameterName():5832:5832 -> y
     1:1:boolean hasAbbreviatedType():5904:5904 -> z
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$1 -> com.android.tools.r8.internal.KO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$1 -> com.android.tools.r8.internal.LO:
     1:1:void <init>():4974:4974 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):4979:4979 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):4974 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument -> com.android.tools.r8.internal.OO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument -> com.android.tools.r8.internal.PO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument defaultInstance -> i
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
     int memoizedSerializedSize -> h
@@ -89213,11 +89214,11 @@
     1:1:boolean hasTypeId():5259:5259 -> m
     1:3:void initFields():5269:5271 -> n
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Builder newBuilder():5387:5387 -> o
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$1 -> com.android.tools.r8.internal.LO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$1 -> com.android.tools.r8.internal.MO:
     1:1:void <init>():5126:5126 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):5131:5131 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):5126 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Builder -> com.android.tools.r8.internal.MO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Builder -> com.android.tools.r8.internal.NO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Projection projection_ -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type type_ -> e
     int typeId_ -> f
@@ -89261,7 +89262,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Builder.create():5411:5411 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Builder access$5000():5397 -> f
     1:16:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument buildPartial():5442:5457 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Projection -> com.android.tools.r8.internal.NO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Projection -> com.android.tools.r8.internal.OO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Projection INV -> e
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Projection STAR -> f
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Projection IN -> c
@@ -89276,7 +89277,7 @@
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Projection valueOf(int):5187:5187 -> a
     4:4:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Projection valueOf(int):5186:5186 -> a
     5:5:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Argument$Projection valueOf(int):5185:5185 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Builder -> com.android.tools.r8.internal.PO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Builder -> com.android.tools.r8.internal.QO:
     int typeAliasName_ -> n
     int typeParameter_ -> l
     int typeParameterName_ -> m
@@ -89391,7 +89392,7 @@
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type build():6257 -> g
     4:4:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type build():6257:6257 -> g
     1:61:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type buildPartial():6263:6323 -> h
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias -> com.android.tools.r8.internal.TO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias -> com.android.tools.r8.internal.UO:
     int memoizedSerializedSize -> o
     int expandedTypeId_ -> k
     int underlyingTypeId_ -> i
@@ -89492,11 +89493,11 @@
     1:1:boolean hasName():19532:19532 -> x
     1:1:boolean hasUnderlyingType():19582:19582 -> y
     1:1:boolean hasUnderlyingTypeId():19597:19597 -> z
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias$1 -> com.android.tools.r8.internal.RO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias$1 -> com.android.tools.r8.internal.SO:
     1:1:void <init>():19486:19486 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):19491:19491 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):19486 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias$Builder -> com.android.tools.r8.internal.SO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias$Builder -> com.android.tools.r8.internal.TO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type expandedType_ -> k
     int expandedTypeId_ -> l
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type underlyingType_ -> i
@@ -89602,7 +89603,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias$Builder.create():19931:19931 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias$Builder access$18100():19918 -> f
     1:43:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias buildPartial():19974:20016 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter -> com.android.tools.r8.internal.XO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter -> com.android.tools.r8.internal.YO:
     int memoizedSerializedSize -> m
     int upperBoundIdMemoizedSerializedSize -> k
     int name_ -> f
@@ -89684,11 +89685,11 @@
     1:1:boolean hasVariance():7518:7518 -> u
     1:6:void initFields():7586:7591 -> v
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Builder newBuilder():7759:7759 -> w
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$1 -> com.android.tools.r8.internal.UO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$1 -> com.android.tools.r8.internal.VO:
     1:1:void <init>():7387:7387 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):7392:7392 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):7387 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Builder -> com.android.tools.r8.internal.VO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Builder -> com.android.tools.r8.internal.WO:
     int id_ -> f
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Variance variance_ -> i
     java.util.List upperBound_ -> j
@@ -89733,7 +89734,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Builder.create():7782:7782 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Builder access$7600():7769 -> f
     1:30:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter buildPartial():7819:7848 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Variance -> com.android.tools.r8.internal.WO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Variance -> com.android.tools.r8.internal.XO:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Variance[] $VALUES -> f
     int value -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Variance INV -> e
@@ -89746,7 +89747,7 @@
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Variance valueOf(int):7440:7440 -> a
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Variance valueOf(int):7439:7439 -> a
     4:4:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Variance valueOf(int):7438:7438 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable -> com.android.tools.r8.internal.aP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable -> com.android.tools.r8.internal.bP:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
     java.util.List type_ -> d
     int memoizedSerializedSize -> g
@@ -89799,11 +89800,11 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable$Builder toBuilder():13296 -> l
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable.newBuilder(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable):13294:13294 -> l
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable$Builder toBuilder():13296 -> l
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable$1 -> com.android.tools.r8.internal.YO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable$1 -> com.android.tools.r8.internal.ZO:
     1:1:void <init>():13105:13105 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):13110:13110 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):13105 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable$Builder -> com.android.tools.r8.internal.ZO:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable$Builder -> com.android.tools.r8.internal.aP:
     java.util.List type_ -> d
     int firstNullable_ -> e
     int bitField0_ -> c
@@ -89835,7 +89836,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable$Builder.create():13315:13315 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable$Builder access$12100():13301 -> f
     1:13:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeTable buildPartial():13344:13356 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter -> com.android.tools.r8.internal.dP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter -> com.android.tools.r8.internal.eP:
     int memoizedSerializedSize -> l
     byte memoizedIsInitialized -> k
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type varargElementType_ -> i
@@ -89912,11 +89913,11 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter$Builder toBuilder():18760 -> z
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter.newBuilder(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter):18758:18758 -> z
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter$Builder toBuilder():18760 -> z
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter$1 -> com.android.tools.r8.internal.bP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter$1 -> com.android.tools.r8.internal.cP:
     1:1:void <init>():18474:18474 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):18479:18479 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):18474 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter$Builder -> com.android.tools.r8.internal.cP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter$Builder -> com.android.tools.r8.internal.dP:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type varargElementType_ -> j
     int varargElementTypeId_ -> k
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type type_ -> h
@@ -89982,7 +89983,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter$Builder.create():18778:18778 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter$Builder access$17000():18765 -> f
     1:28:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter buildPartial():18815:18842 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement -> com.android.tools.r8.internal.iP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement -> com.android.tools.r8.internal.jP:
     byte memoizedIsInitialized -> j
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Level level_ -> f
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
@@ -90046,11 +90047,11 @@
     1:1:boolean hasVersionKind():21625:21625 -> s
     1:6:void initFields():21640:21645 -> t
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Builder newBuilder():21776:21776 -> u
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$1 -> com.android.tools.r8.internal.eP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$1 -> com.android.tools.r8.internal.fP:
     1:1:void <init>():21348:21348 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):21353:21353 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):21348 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Builder -> com.android.tools.r8.internal.fP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Builder -> com.android.tools.r8.internal.gP:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Level level_ -> f
     int message_ -> h
     int errorCode_ -> g
@@ -90086,7 +90087,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Builder.create():21800:21800 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Builder access$20100():21786 -> f
     1:28:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement buildPartial():21837:21864 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Level -> com.android.tools.r8.internal.gP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Level -> com.android.tools.r8.internal.hP:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Level HIDDEN -> e
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Level ERROR -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Level WARNING -> c
@@ -90099,7 +90100,7 @@
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Level valueOf(int):21401:21401 -> a
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Level valueOf(int):21400:21400 -> a
     4:4:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$Level valueOf(int):21399:21399 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$VersionKind -> com.android.tools.r8.internal.hP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$VersionKind -> com.android.tools.r8.internal.iP:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$VersionKind LANGUAGE_VERSION -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$VersionKind API_VERSION -> e
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$VersionKind COMPILER_VERSION -> d
@@ -90112,7 +90113,7 @@
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$VersionKind valueOf(int):21466:21466 -> a
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$VersionKind valueOf(int):21465:21465 -> a
     4:4:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement$VersionKind valueOf(int):21464:21464 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable -> com.android.tools.r8.internal.lP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable -> com.android.tools.r8.internal.mP:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.Parser PARSER -> g
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
     java.util.List requirement_ -> c
@@ -90157,11 +90158,11 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable$Builder toBuilder():22486 -> l
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable.newBuilder(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable):22484:22484 -> l
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable$Builder toBuilder():22486 -> l
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable$1 -> com.android.tools.r8.internal.jP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable$1 -> com.android.tools.r8.internal.kP:
     1:1:void <init>():22335:22335 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):22340:22340 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):22335 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable$Builder -> com.android.tools.r8.internal.kP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable$Builder -> com.android.tools.r8.internal.lP:
     java.util.List requirement_ -> d
     int bitField0_ -> c
     1:85:void <init>():22498:22582 -> <init>
@@ -90200,7 +90201,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable$Builder.create():22505:22505 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable$Builder access$21200():22491 -> f
     1:7:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirementTable buildPartial():22532:22538 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Visibility -> com.android.tools.r8.internal.mP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Visibility -> com.android.tools.r8.internal.nP:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Visibility[] $VALUES -> i
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Visibility LOCAL -> h
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Visibility PRIVATE_TO_THIS -> g
@@ -90370,13 +90371,13 @@
     1:1:void <init>(int,int,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.Flags$1):234:234 -> <init>
     2:4:void <init>(int,int):256:258 -> <init>
     java.lang.Object get(int) -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.NameResolver -> com.android.tools.r8.internal.yG:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.NameResolver -> com.android.tools.r8.internal.zG:
 # {"id":"sourceFile","fileName":"NameResolver.kt"}
     java.lang.String getString(int) -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.ProtoBufUtilKt -> com.android.tools.r8.internal.nP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.ProtoBufUtilKt -> com.android.tools.r8.internal.oP:
 # {"id":"sourceFile","fileName":"ProtoBufUtil.kt"}
     1:1:java.lang.Object getExtensionOrNull(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.GeneratedMessageLite$ExtendableMessage,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.GeneratedMessageLite$GeneratedExtension):12:12 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.ProtoTypeTableUtilKt -> com.android.tools.r8.internal.RP:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.ProtoTypeTableUtilKt -> com.android.tools.r8.internal.SP:
 # {"id":"sourceFile","fileName":"protoTypeTableUtil.kt"}
     1:3:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type returnType(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.TypeTable):62:64 -> a
     4:6:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type type(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$ValueParameter,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.deserialization.TypeTable):76:78 -> a
@@ -90451,7 +90452,7 @@
     5:5:java.lang.Object com.android.tools.r8.jetbrains.kotlin.collections.CollectionsKt___CollectionsKt.getOrNull(java.util.List,int):304:304 -> a
     5:5:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement get(int):12 -> a
     6:6:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$VersionRequirement get(int):12:12 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf -> com.android.tools.r8.internal.gx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf -> com.android.tools.r8.internal.hx:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.GeneratedMessageLite$GeneratedExtension constructorSignature -> a
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.GeneratedMessageLite$GeneratedExtension propertySignature -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.GeneratedMessageLite$GeneratedExtension flags -> e
@@ -90467,7 +90468,7 @@
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.GeneratedMessageLite$GeneratedExtension anonymousObjectOriginName -> k
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.GeneratedMessageLite$GeneratedExtension packageLocalVariable -> n
     1:233:void <clinit>():3965:4197 -> <clinit>
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature -> com.android.tools.r8.internal.Sw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature -> com.android.tools.r8.internal.Tw:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature defaultInstance -> h
     int memoizedSerializedSize -> g
@@ -90516,11 +90517,11 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature$Builder toBuilder():2834 -> n
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature.newBuilder(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature):2832:2832 -> n
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature$Builder toBuilder():2834 -> n
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature$1 -> com.android.tools.r8.internal.Qw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature$1 -> com.android.tools.r8.internal.Rw:
     1:1:void <init>():2671:2671 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):2676:2676 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):2671 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature$Builder -> com.android.tools.r8.internal.Rw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature$Builder -> com.android.tools.r8.internal.Sw:
     int name_ -> d
     int desc_ -> e
     int bitField0_ -> c
@@ -90548,7 +90549,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature$Builder.create():2853:2853 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature$Builder access$2500():2839 -> f
     1:12:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmFieldSignature buildPartial():2882:2893 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature -> com.android.tools.r8.internal.Vw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature -> com.android.tools.r8.internal.Ww:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature defaultInstance -> h
     int memoizedSerializedSize -> g
@@ -90597,11 +90598,11 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature$Builder toBuilder():2372 -> n
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature.newBuilder(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature):2370:2370 -> n
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature$Builder toBuilder():2372 -> n
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature$1 -> com.android.tools.r8.internal.Tw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature$1 -> com.android.tools.r8.internal.Uw:
     1:1:void <init>():2209:2209 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):2214:2214 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):2209 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature$Builder -> com.android.tools.r8.internal.Uw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature$Builder -> com.android.tools.r8.internal.Vw:
     int name_ -> d
     int desc_ -> e
     int bitField0_ -> c
@@ -90629,7 +90630,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature$Builder.create():2391:2391 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature$Builder access$1800():2377 -> f
     1:12:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature buildPartial():2420:2431 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature -> com.android.tools.r8.internal.Yw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature -> com.android.tools.r8.internal.Zw:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature syntheticMethod_ -> e
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature getter_ -> f
     byte memoizedIsInitialized -> i
@@ -90688,11 +90689,11 @@
     1:1:boolean hasSyntheticMethod():3265:3265 -> q
     1:5:void initFields():3334:3338 -> r
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$Builder newBuilder():3462:3462 -> s
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$1 -> com.android.tools.r8.internal.Ww:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$1 -> com.android.tools.r8.internal.Xw:
     1:1:void <init>():3225:3225 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):3230:3230 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):3225 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$Builder -> com.android.tools.r8.internal.Xw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$Builder -> com.android.tools.r8.internal.Yw:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature syntheticMethod_ -> e
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature getter_ -> f
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmMethodSignature setter_ -> g
@@ -90786,7 +90787,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$Builder.create():3486:3486 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$Builder access$3200():3472 -> f
     1:24:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature buildPartial():3521:3544 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes -> com.android.tools.r8.internal.fx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes -> com.android.tools.r8.internal.gx:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes defaultInstance -> h
     java.util.List localName_ -> d
@@ -90836,11 +90837,11 @@
     1:1:java.util.List getRecordList():1569:1569 -> i
     1:2:void initFields():1634:1635 -> j
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Builder newBuilder():1752:1752 -> k
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$1 -> com.android.tools.r8.internal.Zw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$1 -> com.android.tools.r8.internal.ax:
     1:1:void <init>():172:172 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):177:177 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):172 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Builder -> com.android.tools.r8.internal.ax:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Builder -> com.android.tools.r8.internal.bx:
     java.util.List localName_ -> e
     java.util.List record_ -> d
     int bitField0_ -> c
@@ -90878,7 +90879,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Builder.create():1776:1776 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Builder access$1200():1762 -> f
     1:12:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes buildPartial():1805:1816 -> g
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record -> com.android.tools.r8.internal.ex:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record -> com.android.tools.r8.internal.fx:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString unknownFields -> b
     int memoizedSerializedSize -> m
     java.lang.Object string_ -> f
@@ -90982,11 +90983,11 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$Builder toBuilder():943 -> v
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$Builder com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record.newBuilder(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record):941:941 -> v
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$Builder toBuilder():943 -> v
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$1 -> com.android.tools.r8.internal.bx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$1 -> com.android.tools.r8.internal.cx:
     1:1:void <init>():471:471 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$1.parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):476:476 -> a
     1:1:java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite):471 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$Builder -> com.android.tools.r8.internal.cx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$Builder -> com.android.tools.r8.internal.dx:
     java.lang.Object string_ -> f
     java.util.List replaceChar_ -> i
     int range_ -> d
@@ -91030,7 +91031,7 @@
     1:1:int getSubstringIndexCount():1373:1373 -> j
     1:1:boolean hasOperation():1301:1301 -> k
     1:1:boolean hasPredefinedIndex():1153:1153 -> l
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$Operation -> com.android.tools.r8.internal.dx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$Operation -> com.android.tools.r8.internal.ex:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$Operation[] $VALUES -> f
     int value -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Record$Operation DESC_TO_CLASS_ID -> e
@@ -91193,12 +91194,12 @@
     462:462:void <clinit>():22:22 -> <clinit>
     1:1:void map$lambda-0$add(java.util.Map,java.lang.String,java.lang.String):42:42 -> a
     2:2:java.lang.String mapClass(java.lang.String):80:80 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmMemberSignature -> com.android.tools.r8.internal.yw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmMemberSignature -> com.android.tools.r8.internal.zw:
 # {"id":"sourceFile","fileName":"JvmMemberSignature.kt"}
     1:1:void <init>():14:14 -> <init>
     java.lang.String asString() -> a
     1:1:java.lang.String toString():27:27 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmMemberSignature$Field -> com.android.tools.r8.internal.vw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmMemberSignature$Field -> com.android.tools.r8.internal.ww:
 # {"id":"sourceFile","fileName":"JvmMemberSignature.kt"}
     java.lang.String name -> a
     java.lang.String desc -> b
@@ -91227,7 +91228,7 @@
     3:3:java.lang.String com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmMemberSignature$Field.getDesc():23:23 -> hashCode
     3:3:int hashCode():0 -> hashCode
     4:4:int hashCode():0:0 -> hashCode
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmMemberSignature$Method -> com.android.tools.r8.internal.ww:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmMemberSignature$Method -> com.android.tools.r8.internal.xw:
 # {"id":"sourceFile","fileName":"JvmMemberSignature.kt"}
     java.lang.String name -> a
     java.lang.String desc -> b
@@ -91256,7 +91257,7 @@
     3:3:java.lang.String com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmMemberSignature$Method.getDesc():19:19 -> hashCode
     3:3:int hashCode():0 -> hashCode
     4:4:int hashCode():0:0 -> hashCode
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmMetadataVersion -> com.android.tools.r8.internal.Jw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmMetadataVersion -> com.android.tools.r8.internal.Kw:
 # {"id":"sourceFile","fileName":"JvmMetadataVersion.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmMetadataVersion INSTANCE -> g
     boolean isStrictSemantics -> f
@@ -91264,7 +91265,7 @@
     1:1:void <init>(int[],boolean):14:14 -> <init>
     2:2:void <init>(int[]):15:15 -> <init>
     1:6:boolean isCompatible():19:24 -> d
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmNameResolver -> com.android.tools.r8.internal.Lw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmNameResolver -> com.android.tools.r8.internal.Mw:
 # {"id":"sourceFile","fileName":"JvmNameResolver.kt"}
     java.util.Set localNameIndices -> c
     java.util.List PREDEFINED_STRINGS -> e
@@ -91636,7 +91637,7 @@
     2:2:java.lang.String getQualifiedClassName(int):74:74 -> b
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes getTypes():14:14 -> c
     2:2:boolean isLocalClassName(int):77:77 -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmProtoBufUtil -> com.android.tools.r8.internal.hx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmProtoBufUtil -> com.android.tools.r8.internal.ix:
 # {"id":"sourceFile","fileName":"JvmProtoBufUtil.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmProtoBufUtil INSTANCE -> a
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite EXTENSION_REGISTRY -> b
@@ -91751,7 +91752,7 @@
     7:7:com.android.tools.r8.jetbrains.kotlin.Pair readPackageDataFrom(java.lang.String[],java.lang.String[]):37 -> c
     8:8:com.android.tools.r8.jetbrains.kotlin.Pair com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmProtoBufUtil.readPackageDataFrom(byte[],java.lang.String[]):42:42 -> c
     8:8:com.android.tools.r8.jetbrains.kotlin.Pair readPackageDataFrom(java.lang.String[],java.lang.String[]):37 -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.serialization.JvmStringTable -> com.android.tools.r8.internal.ix:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.serialization.JvmStringTable -> com.android.tools.r8.internal.jx:
 # {"id":"sourceFile","fileName":"JvmStringTable.kt"}
     java.util.LinkedHashSet localNames -> d
     java.util.ArrayList records -> b
@@ -91797,7 +91798,7 @@
     740:740:void serializeTo(java.io.OutputStream):98 -> a
     741:741:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$StringTableTypes$Builder.build():1799:1799 -> a
     741:741:void serializeTo(java.io.OutputStream):98 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.Interner -> com.android.tools.r8.internal.wu:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.Interner -> com.android.tools.r8.internal.xu:
 # {"id":"sourceFile","fileName":"Interner.kt"}
     java.util.HashMap interned -> b
     int firstIndex -> a
@@ -91806,13 +91807,13 @@
     21:24:java.lang.Integer find(java.lang.Object):19:22 -> a
     1:1:boolean isEmpty():16:16 -> b
     2:3:int intern(java.lang.Object):26:27 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.Interner$special$$inlined$sortedBy$1 -> com.android.tools.r8.internal.vu:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.Interner$special$$inlined$sortedBy$1 -> com.android.tools.r8.internal.wu:
 # {"id":"sourceFile","fileName":"Comparisons.kt"}
     java.util.HashMap $receiver$inlined -> b
     1:1:int compare(java.lang.Object,java.lang.Object):321:321 -> compare
     2:2:int com.android.tools.r8.jetbrains.kotlin.comparisons.ComparisonsKt__ComparisonsKt.compareValues(java.lang.Comparable,java.lang.Comparable):78:78 -> compare
     2:2:int compare(java.lang.Object,java.lang.Object):321 -> compare
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.MutableVersionRequirementTable -> com.android.tools.r8.internal.wG:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.MutableVersionRequirementTable -> com.android.tools.r8.internal.xG:
 # {"id":"sourceFile","fileName":"MutableTable.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.Interner com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.MutableTable.interner -> a
     1:6:void com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.MutableTable.<init>():23:28 -> <init>
@@ -91851,7 +91852,7 @@
     69:69:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.GeneratedMessageLite com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.MutableTable.serialize():40:40 -> a
     69:69:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.GeneratedMessageLite com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.MutableTable.serialize():0 -> a
       # {"id":"com.android.tools.r8.synthesized"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.TableElementWrapper -> com.android.tools.r8.internal.pY:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.serialization.TableElementWrapper -> com.android.tools.r8.internal.qY:
 # {"id":"sourceFile","fileName":"MutableTable.kt"}
     byte[] bytes -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.GeneratedMessageLite$Builder builder -> a
@@ -92941,28 +92942,28 @@
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.WireFormat$JavaType com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.GeneratedMessageLite$ExtensionDescriptor.getLiteJavaType():702:702 -> b
     3:3:java.lang.Object singularToFieldSetType(java.lang.Object):885 -> b
     4:5:java.lang.Object singularToFieldSetType(java.lang.Object):885:886 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.Internal -> com.android.tools.r8.internal.ku:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.Internal -> com.android.tools.r8.internal.lu:
     byte[] EMPTY_BYTE_ARRAY -> a
     1:6:void <clinit>():383:388 -> <clinit>
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.Internal$EnumLite -> com.android.tools.r8.internal.iu:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.Internal$EnumLite -> com.android.tools.r8.internal.ju:
     int getNumber() -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.Internal$EnumLiteMap -> com.android.tools.r8.internal.ju:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.Internal$EnumLiteMap -> com.android.tools.r8.internal.ku:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.Internal$EnumLite findValueByNumber(int) -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.InvalidProtocolBufferException -> com.android.tools.r8.internal.Eu:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.InvalidProtocolBufferException -> com.android.tools.r8.internal.Fu:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLite unfinishedMessage -> b
     1:1:void <init>(java.lang.String):46:46 -> <init>
     2:2:void <init>(java.lang.String):43:43 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.InvalidProtocolBufferException setUnfinishedMessage(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLite):57:57 -> a
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLite getUnfinishedMessage():66:66 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.InvalidProtocolBufferException truncatedMessage():70:70 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.LazyField$LazyIterator -> com.android.tools.r8.internal.hB:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.LazyField$LazyIterator -> com.android.tools.r8.internal.iB:
     java.util.Iterator iterator -> b
     1:2:void <init>(java.util.Iterator):130:131 -> <init>
     1:1:boolean hasNext():136:136 -> hasNext
     1:2:java.util.Map$Entry com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.LazyField$LazyIterator.next():142:143 -> next
     1:2:java.lang.Object next():127 -> next
     1:1:void remove():151:151 -> remove
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.LiteralByteString -> com.android.tools.r8.internal.vC:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.LiteralByteString -> com.android.tools.r8.internal.wC:
     int hash -> e
     byte[] bytes -> d
     1:180:void <init>(byte[]):62:241 -> <init>
@@ -93000,7 +93001,7 @@
     1:9:int hashCode():251:259 -> hashCode
     1:1:java.util.Iterator iterator():52:52 -> iterator
     1:1:int size():76:76 -> size
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.LiteralByteString$LiteralByteIterator -> com.android.tools.r8.internal.uC:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.LiteralByteString$LiteralByteIterator -> com.android.tools.r8.internal.vC:
     int position -> b
     int limit -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.LiteralByteString this$0 -> d
@@ -93011,12 +93012,12 @@
     1:1:java.lang.Byte com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.LiteralByteString$LiteralByteIterator.next():325:325 -> next
     1:1:java.lang.Object next():310 -> next
     1:1:void remove():337:337 -> remove
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLiteOrBuilder -> com.android.tools.r8.internal.tE:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLiteOrBuilder -> com.android.tools.r8.internal.uE:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLite getDefaultInstanceForType() -> a
     boolean isInitialized() -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.Parser -> com.android.tools.r8.internal.SL:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.Parser -> com.android.tools.r8.internal.TL:
     java.lang.Object parsePartialFrom(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.CodedInputStream,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ExtensionRegistryLite) -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString -> com.android.tools.r8.internal.eU:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString -> com.android.tools.r8.internal.fU:
     int treeDepth -> h
     int hash -> i
     int leftLength -> g
@@ -93093,7 +93094,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString$ByteIterator com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString.iterator():779:779 -> iterator
     1:1:java.util.Iterator iterator():70 -> iterator
     1:1:int size():269:269 -> size
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString$Balancer -> com.android.tools.r8.internal.bU:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString$Balancer -> com.android.tools.r8.internal.cU:
     java.util.Stack prefixesStack -> a
     1:5:void <init>():602:606 -> <init>
     6:6:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString$1):602:602 -> <init>
@@ -93124,7 +93125,7 @@
     691:691:void doBalance(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString):635:635 -> a
     692:692:void doBalance(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString):635:635 -> a
     689:689:void doBalance(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString):635:635 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString$PieceIterator -> com.android.tools.r8.internal.cU:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString$PieceIterator -> com.android.tools.r8.internal.dU:
     java.util.Stack breadCrumbs -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.LiteralByteString next -> c
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString$1):716:716 -> <init>
@@ -93143,7 +93144,7 @@
     8:8:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.LiteralByteString next():762:762 -> j
     1:1:java.lang.Object next():716:716 -> next
     1:1:void remove():770:770 -> remove
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString$RopeByteIterator -> com.android.tools.r8.internal.dU:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString$RopeByteIterator -> com.android.tools.r8.internal.eU:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.ByteString$ByteIterator bytes -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString$PieceIterator pieces -> b
     int bytesRemaining -> d
@@ -93154,7 +93155,7 @@
     1:1:java.lang.Byte com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.RopeByteString$RopeByteIterator.next():799:799 -> next
     1:1:java.lang.Object next():782 -> next
     1:1:void remove():811:811 -> remove
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$1 -> com.android.tools.r8.internal.xV:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$1 -> com.android.tools.r8.internal.yV:
     java.util.Map com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap.overflowEntries -> d
     java.util.List com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap.entryList -> c
     boolean com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap.isImmutable -> e
@@ -93264,20 +93265,20 @@
     1:1:int com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap.size():202:202 -> size
     1:1:int com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap.size():0 -> size
       # {"id":"com.android.tools.r8.synthesized"}
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$EmptySet -> com.android.tools.r8.internal.AV:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$EmptySet -> com.android.tools.r8.internal.BV:
     java.util.Iterator ITERATOR -> a
     java.lang.Iterable ITERABLE -> b
     1:16:void <clinit>():591:606 -> <clinit>
     1:1:java.util.Iterator access$700():589:589 -> a
     1:1:java.lang.Iterable iterable():615:615 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$EmptySet$1 -> com.android.tools.r8.internal.yV:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$EmptySet$1 -> com.android.tools.r8.internal.zV:
     1:1:void <init>():591:591 -> <init>
     1:1:java.lang.Object next():598:598 -> next
     1:1:void remove():602:602 -> remove
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$EmptySet$2 -> com.android.tools.r8.internal.zV:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$EmptySet$2 -> com.android.tools.r8.internal.AV:
     1:1:void <init>():606:606 -> <init>
     1:1:java.util.Iterator iterator():609:609 -> iterator
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$Entry -> com.android.tools.r8.internal.BV:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$Entry -> com.android.tools.r8.internal.CV:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap this$0 -> d
     java.lang.Comparable key -> b
     java.lang.Object value -> c
@@ -93305,7 +93306,7 @@
     1:1:int hashCode():452:452 -> hashCode
     1:3:java.lang.Object setValue(java.lang.Object):431:433 -> setValue
     1:1:java.lang.String toString():458:458 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$EntryIterator -> com.android.tools.r8.internal.CV:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$EntryIterator -> com.android.tools.r8.internal.DV:
     java.util.Iterator lazyOverflowIterator -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap this$0 -> e
     int pos -> b
@@ -93328,7 +93329,7 @@
     9:12:void remove():566 -> remove
     13:13:void remove():566:566 -> remove
     14:14:void remove():558:558 -> remove
-com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$EntrySet -> com.android.tools.r8.internal.DV:
+com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$EntrySet -> com.android.tools.r8.internal.EV:
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap this$0 -> b
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap):470:470 -> <init>
     2:2:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.SmallSortedMap$1):470:470 -> <init>
@@ -93420,7 +93421,7 @@
     1:9:void <clinit>():78:86 -> <clinit>
     10:10:void <clinit>():77:77 -> <clinit>
     1:2:void <init>(java.lang.String,int,java.lang.Object):88:89 -> <init>
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmClassExtensionVisitor -> com.android.tools.r8.internal.lw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmClassExtensionVisitor -> com.android.tools.r8.internal.mw:
 # {"id":"sourceFile","fileName":"jvmExtensionVisitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType TYPE -> b
     1:1:void <clinit>():85:85 -> <clinit>
@@ -93434,7 +93435,7 @@
     1:1:void visitEnd():75 -> b
     2:2:void visitEnd():75:75 -> b
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType getType():54:54 -> getType
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmConstructorExtensionVisitor -> com.android.tools.r8.internal.ow:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmConstructorExtensionVisitor -> com.android.tools.r8.internal.pw:
 # {"id":"sourceFile","fileName":"jvmExtensionVisitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType TYPE -> a
     1:1:void <clinit>():280:280 -> <clinit>
@@ -93442,14 +93443,14 @@
     2:2:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmConstructorExtensionVisitor,int,com.android.tools.r8.jetbrains.kotlin.jvm.internal.DefaultConstructorMarker):256:256 -> <init>
     void visit(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature) -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType getType():260:260 -> getType
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmDeclarationContainerExtensionVisitor -> com.android.tools.r8.internal.pw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmDeclarationContainerExtensionVisitor -> com.android.tools.r8.internal.qw:
 # {"id":"sourceFile","fileName":"jvmExtensionVisitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmDeclarationContainerExtensionVisitor delegate -> a
     1:2:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmDeclarationContainerExtensionVisitor):14:15 -> <init>
     void visitModuleName(java.lang.String) -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmDeclarationContainerExtensionVisitor getDelegate():15:15 -> a
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyVisitor visitLocalDelegatedProperty(int,java.lang.String,int,int):34:34 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmExtensionsKt -> com.android.tools.r8.internal.rw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmExtensionsKt -> com.android.tools.r8.internal.sw:
 # {"id":"sourceFile","fileName":"jvmExtensions.kt"}
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmConstructorExtension com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmExtensionNodesKt.getJvm(com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstructor):25:25 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature getSignature(com.android.tools.r8.jetbrains.kotlinx.metadata.KmConstructor):167 -> a
@@ -93460,7 +93461,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmTypeExtension com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmExtensionNodesKt.getJvm(com.android.tools.r8.jetbrains.kotlinx.metadata.KmType):31:31 -> b
     1:1:boolean isRaw(com.android.tools.r8.jetbrains.kotlinx.metadata.KmType):182 -> b
     2:2:boolean isRaw(com.android.tools.r8.jetbrains.kotlinx.metadata.KmType):182:182 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmFieldSignature -> com.android.tools.r8.internal.sw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmFieldSignature -> com.android.tools.r8.internal.tw:
 # {"id":"sourceFile","fileName":"JvmMemberSignature.kt"}
     java.lang.String name -> a
     java.lang.String desc -> b
@@ -93477,7 +93478,7 @@
     1:1:java.lang.String com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmFieldSignature.getDesc():51:51 -> hashCode
     1:1:int hashCode():0 -> hashCode
     2:2:int hashCode():0:0 -> hashCode
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmFunctionExtensionVisitor -> com.android.tools.r8.internal.uw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmFunctionExtensionVisitor -> com.android.tools.r8.internal.vw:
 # {"id":"sourceFile","fileName":"jvmExtensionVisitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType TYPE -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmFunctionExtensionVisitor delegate -> a
@@ -93488,14 +93489,14 @@
     2:2:void visitLambdaClassOriginName(java.lang.String):144:144 -> a
     3:3:void visitEnd():151:151 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType getType():126:126 -> getType
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMemberSignature -> com.android.tools.r8.internal.xw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMemberSignature -> com.android.tools.r8.internal.yw:
 # {"id":"sourceFile","fileName":"JvmMemberSignature.kt"}
     1:1:void <init>():16:16 -> <init>
     java.lang.String asString() -> a
     java.lang.String getDesc() -> b
     java.lang.String getName() -> c
     1:1:java.lang.String toString():30:30 -> toString
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature -> com.android.tools.r8.internal.Kw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature -> com.android.tools.r8.internal.Lw:
 # {"id":"sourceFile","fileName":"JvmMemberSignature.kt"}
     java.lang.String name -> a
     java.lang.String desc -> b
@@ -93512,7 +93513,7 @@
     1:1:java.lang.String com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature.getDesc():40:40 -> hashCode
     1:1:int hashCode():0 -> hashCode
     2:2:int hashCode():0:0 -> hashCode
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmPackageExtensionVisitor -> com.android.tools.r8.internal.Nw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmPackageExtensionVisitor -> com.android.tools.r8.internal.Ow:
 # {"id":"sourceFile","fileName":"jvmExtensionVisitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType TYPE -> b
     1:1:void <clinit>():115:115 -> <clinit>
@@ -93524,7 +93525,7 @@
     1:1:void visitEnd():105 -> b
     2:2:void visitEnd():105:105 -> b
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType getType():99:99 -> getType
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmPropertyExtensionVisitor -> com.android.tools.r8.internal.Pw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmPropertyExtensionVisitor -> com.android.tools.r8.internal.Qw:
 # {"id":"sourceFile","fileName":"jvmExtensionVisitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmPropertyExtensionVisitor delegate -> a
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType TYPE -> b
@@ -93537,7 +93538,7 @@
     1:1:void visitSyntheticMethodForDelegate(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature):232:232 -> b
     2:2:void visitEnd():239:239 -> b
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType getType():172:172 -> getType
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmTypeExtensionVisitor -> com.android.tools.r8.internal.kx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmTypeExtensionVisitor -> com.android.tools.r8.internal.lx:
 # {"id":"sourceFile","fileName":"jvmExtensionVisitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmTypeExtensionVisitor delegate -> a
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType TYPE -> b
@@ -93548,7 +93549,7 @@
     1:1:void visitAnnotation(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation):344:344 -> a
     2:2:void visitEnd():351:351 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType getType():327:327 -> getType
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmTypeParameterExtensionVisitor -> com.android.tools.r8.internal.mx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmTypeParameterExtensionVisitor -> com.android.tools.r8.internal.nx:
 # {"id":"sourceFile","fileName":"jvmExtensionVisitors.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType TYPE -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmTypeParameterExtensionVisitor delegate -> a
@@ -93558,7 +93559,7 @@
     1:1:void visitAnnotation(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation):299:299 -> a
     2:2:void visitEnd():306:306 -> a
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType getType():291:291 -> getType
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassHeader -> com.android.tools.r8.internal.uz:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassHeader -> com.android.tools.r8.internal.vz:
 # {"id":"sourceFile","fileName":"KotlinClassHeader.kt"}
     java.lang.String packageName -> g
     java.lang.String extraString -> f
@@ -93644,7 +93645,7 @@
     5:5:java.lang.Object invoke():30 -> a
     6:6:com.android.tools.r8.jetbrains.kotlin.Pair invoke():32:32 -> a
     6:6:java.lang.Object invoke():30 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$Companion -> com.android.tools.r8.internal.xz:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$Companion -> com.android.tools.r8.internal.yz:
 # {"id":"sourceFile","fileName":"KotlinClassMetadata.kt"}
     1:1:void <init>():310:310 -> <init>
     1:1:void com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$Companion.checkMetadataVersion(int[]):345:345 -> a
@@ -93838,10 +93839,10 @@
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassHeader $header -> b
     1:2:com.android.tools.r8.jetbrains.kotlin.Pair invoke():134:135 -> a
     1:2:java.lang.Object invoke():133 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$Unknown -> com.android.tools.r8.internal.yz:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$Unknown -> com.android.tools.r8.internal.zz:
 # {"id":"sourceFile","fileName":"KotlinClassMetadata.kt"}
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassHeader):308:308 -> <init>
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmClassExtension -> com.android.tools.r8.internal.kw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmClassExtension -> com.android.tools.r8.internal.lw:
 # {"id":"sourceFile","fileName":"jvmExtensionNodes.kt"}
     java.util.List localDelegatedProperties -> c
     int jvmFlags -> f
@@ -93863,7 +93864,7 @@
     1:1:int getJvmFlags():38:38 -> d
     1:1:java.util.List getLocalDelegatedProperties():35:35 -> e
     1:1:java.lang.String getModuleName():36:36 -> f
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmConstructorExtension -> com.android.tools.r8.internal.nw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmConstructorExtension -> com.android.tools.r8.internal.ow:
 # {"id":"sourceFile","fileName":"jvmExtensionNodes.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature signature -> b
     1:1:void <init>():145:145 -> <init>
@@ -93873,10 +93874,10 @@
     5:5:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature getSignature():146:146 -> a
     6:6:void visit(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature):149:149 -> a
     1:1:void setSignature(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature):146:146 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmExtensionNodesKt -> com.android.tools.r8.internal.qw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmExtensionNodesKt -> com.android.tools.r8.internal.rw:
 # {"id":"sourceFile","fileName":"jvmExtensionNodes.kt"}
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmPropertyExtension getJvm(com.android.tools.r8.jetbrains.kotlinx.metadata.KmProperty):22:22 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmFunctionExtension -> com.android.tools.r8.internal.tw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmFunctionExtension -> com.android.tools.r8.internal.uw:
 # {"id":"sourceFile","fileName":"jvmExtensionNodes.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature signature -> c
     java.lang.String lambdaClassOriginName -> d
@@ -93888,7 +93889,7 @@
     8:8:void visitLambdaClassOriginName(java.lang.String):97:97 -> a
     1:1:java.lang.String getLambdaClassOriginName():90:90 -> b
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature getSignature():89:89 -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions -> com.android.tools.r8.internal.Iw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions -> com.android.tools.r8.internal.Jw:
 # {"id":"sourceFile","fileName":"JvmMetadataExtensions.kt"}
     1:1:void <init>():17:17 -> <init>
     void readTypeAliasExtensions(com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeAliasVisitor,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeAlias,com.android.tools.r8.jetbrains.kotlinx.metadata.impl.ReadContext) -> a
@@ -93941,7 +93942,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmTypeExtension createTypeExtension():311:311 -> g
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmTypeParameterExtension createTypeParameterExtension():309:309 -> h
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.extensions.KmValueParameterExtension createValueParameterExtension() -> i
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeClassExtensions$1 -> com.android.tools.r8.internal.Aw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeClassExtensions$1 -> com.android.tools.r8.internal.Bw:
 # {"id":"sourceFile","fileName":"JvmMetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Builder $proto -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext $c -> d
@@ -93950,7 +93951,7 @@
     2:3:void visitModuleName(java.lang.String):134:135 -> a
     4:4:void visitJvmFlags(int):141:141 -> a
     1:1:void visitAnonymousObjectOriginName(java.lang.String):124:124 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeClassExtensions$1$visitLocalDelegatedProperty$1 -> com.android.tools.r8.internal.zw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeClassExtensions$1$visitLocalDelegatedProperty$1 -> com.android.tools.r8.internal.Aw:
 # {"id":"sourceFile","fileName":"JvmMetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Class$Builder $proto -> b
     1:1:java.lang.Object invoke(java.lang.Object):129:129 -> a
@@ -93969,14 +93970,14 @@
     138:138:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$Builder.build():17363:17363 -> a
     138:138:void com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeClassExtensions$1$visitLocalDelegatedProperty$1.invoke(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$Builder):130 -> a
     138:138:java.lang.Object invoke(java.lang.Object):129 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeConstructorExtensions$1 -> com.android.tools.r8.internal.Bw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeConstructorExtensions$1 -> com.android.tools.r8.internal.Cw:
 # {"id":"sourceFile","fileName":"JvmMetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions this$0 -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor$Builder $proto -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext $c -> d
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor$Builder,com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions,com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext):249:249 -> <init>
     1:1:void visit(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature):252:252 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeFunctionExtensions$1 -> com.android.tools.r8.internal.Cw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeFunctionExtensions$1 -> com.android.tools.r8.internal.Dw:
 # {"id":"sourceFile","fileName":"JvmMetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions this$0 -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$Builder $proto -> c
@@ -93984,14 +93985,14 @@
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Function$Builder,com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions,com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext):177:177 -> <init>
     1:1:void visit(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature):180:180 -> a
     2:2:void visitLambdaClassOriginName(java.lang.String):185:185 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writePackageExtensions$1 -> com.android.tools.r8.internal.Ew:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writePackageExtensions$1 -> com.android.tools.r8.internal.Fw:
 # {"id":"sourceFile","fileName":"JvmMetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$Builder $proto -> d
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext $c -> c
     1:1:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$Builder):151:151 -> <init>
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyVisitor visitLocalDelegatedProperty(int,java.lang.String,int,int):154:154 -> a
     2:3:void visitModuleName(java.lang.String):159:160 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writePackageExtensions$1$visitLocalDelegatedProperty$1 -> com.android.tools.r8.internal.Dw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writePackageExtensions$1$visitLocalDelegatedProperty$1 -> com.android.tools.r8.internal.Ew:
 # {"id":"sourceFile","fileName":"JvmMetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Package$Builder $proto -> b
     1:1:java.lang.Object invoke(java.lang.Object):154:154 -> a
@@ -94010,7 +94011,7 @@
     163:163:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$Builder.build():17363:17363 -> a
     163:163:void com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writePackageExtensions$1$visitLocalDelegatedProperty$1.invoke(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Property$Builder):155 -> a
     163:163:java.lang.Object invoke(java.lang.Object):154 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writePropertyExtensions$1 -> com.android.tools.r8.internal.Fw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writePropertyExtensions$1 -> com.android.tools.r8.internal.Gw:
 # {"id":"sourceFile","fileName":"JvmMetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions this$0 -> e
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$Builder signatureOrNull -> d
@@ -94040,7 +94041,7 @@
     11:11:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$Builder.build():3515:3515 -> b
     11:11:void visitEnd():239 -> b
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.JvmProtoBuf$JvmPropertySignature$Builder getSignature():199:199 -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeTypeExtensions$1 -> com.android.tools.r8.internal.Gw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeTypeExtensions$1 -> com.android.tools.r8.internal.Hw:
 # {"id":"sourceFile","fileName":"JvmMetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Type$Builder $proto -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext $c -> d
@@ -94055,7 +94056,7 @@
     6:6:void visitAnnotation(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation):279 -> a
     7:7:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Builder.build():4371:4371 -> a
     7:7:void visitAnnotation(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation):279 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeTypeParameterExtensions$1 -> com.android.tools.r8.internal.Hw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmMetadataExtensions$writeTypeParameterExtensions$1 -> com.android.tools.r8.internal.Iw:
 # {"id":"sourceFile","fileName":"JvmMetadataExtensions.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$TypeParameter$Builder $proto -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext $c -> d
@@ -94069,7 +94070,7 @@
     5:5:void visitAnnotation(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation):264 -> a
     6:6:com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Annotation$Builder.build():4371:4371 -> a
     6:6:void visitAnnotation(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation):264 -> a
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmPackageExtension -> com.android.tools.r8.internal.Mw:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmPackageExtension -> com.android.tools.r8.internal.Nw:
 # {"id":"sourceFile","fileName":"jvmExtensionNodes.kt"}
     java.util.List localDelegatedProperties -> c
     java.lang.String moduleName -> d
@@ -94085,7 +94086,7 @@
     123:123:void visitModuleName(java.lang.String):75:75 -> a
     1:1:java.util.List getLocalDelegatedProperties():68:68 -> c
     1:1:java.lang.String getModuleName():69:69 -> d
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmPropertyExtension -> com.android.tools.r8.internal.Ow:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmPropertyExtension -> com.android.tools.r8.internal.Pw:
 # {"id":"sourceFile","fileName":"jvmExtensionNodes.kt"}
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature syntheticMethodForDelegate -> h
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature syntheticMethodForAnnotations -> g
@@ -94106,7 +94107,7 @@
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature getSetterSignature():112:112 -> f
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature getSyntheticMethodForAnnotations():113:113 -> g
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature getSyntheticMethodForDelegate():114:114 -> h
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmTypeExtension -> com.android.tools.r8.internal.jx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmTypeExtension -> com.android.tools.r8.internal.kx:
 # {"id":"sourceFile","fileName":"jvmExtensionNodes.kt"}
     java.util.List annotations -> d
     boolean isRaw -> c
@@ -94122,7 +94123,7 @@
     14:14:void visitAnnotation(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation):181:181 -> a
     1:1:java.util.List getAnnotations():174:174 -> b
     1:1:boolean isRaw():173:173 -> c
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmTypeParameterExtension -> com.android.tools.r8.internal.lx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmTypeParameterExtension -> com.android.tools.r8.internal.mx:
 # {"id":"sourceFile","fileName":"jvmExtensionNodes.kt"}
     java.util.List annotations -> c
     1:2:void <init>():158:159 -> <init>
@@ -94135,7 +94136,7 @@
     31:31:void accept(com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionVisitor):158 -> a
     32:32:void visitAnnotation(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation):162:162 -> a
     1:1:java.util.List getAnnotations():159:159 -> b
-com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmWriteUtilsKt -> com.android.tools.r8.internal.nx:
+com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmWriteUtilsKt -> com.android.tools.r8.internal.ox:
 # {"id":"sourceFile","fileName":"jvmWriteUtils.kt"}
     1:3:com.android.tools.r8.jetbrains.kotlin.Pair writeProtoBufData(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLite,com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext):14:16 -> a
     4:66:java.lang.String[] com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.deserialization.JvmProtoBufUtil.writeData(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLite,com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.jvm.serialization.JvmStringTable):0:62 -> a
@@ -94144,31 +94145,31 @@
     67:67:com.android.tools.r8.jetbrains.kotlin.Pair writeProtoBufData(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLite,com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext):16 -> a
     68:75:com.android.tools.r8.jetbrains.kotlin.Pair writeProtoBufData(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLite,com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext):17:24 -> a
     76:85:com.android.tools.r8.jetbrains.kotlin.Pair writeProtoBufData(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.protobuf.MessageLite,com.android.tools.r8.jetbrains.kotlinx.metadata.impl.WriteContext):15:24 -> a
-com.android.tools.r8.kotlin.KmVisitorProviders$KmAnnotationVisitorProvider -> com.android.tools.r8.internal.Qy:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmAnnotationVisitorProvider -> com.android.tools.r8.internal.Ry:
     void get(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation) -> a
-com.android.tools.r8.kotlin.KmVisitorProviders$KmContractVisitorProvider -> com.android.tools.r8.internal.Ry:
-com.android.tools.r8.kotlin.KmVisitorProviders$KmEffectExpressionVisitorProvider -> com.android.tools.r8.internal.Sy:
-com.android.tools.r8.kotlin.KmVisitorProviders$KmEffectVisitorProvider -> com.android.tools.r8.internal.Ty:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmContractVisitorProvider -> com.android.tools.r8.internal.Sy:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmEffectExpressionVisitorProvider -> com.android.tools.r8.internal.Ty:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmEffectVisitorProvider -> com.android.tools.r8.internal.Uy:
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectVisitor get(com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectType,com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectInvocationKind) -> a
-com.android.tools.r8.kotlin.KmVisitorProviders$KmFlexibleUpperBoundVisitorProvider -> com.android.tools.r8.internal.Uy:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmFlexibleUpperBoundVisitorProvider -> com.android.tools.r8.internal.Vy:
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor get(int,java.lang.String) -> a
-com.android.tools.r8.kotlin.KmVisitorProviders$KmFunctionVisitorProvider -> com.android.tools.r8.internal.Vy:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmFunctionVisitorProvider -> com.android.tools.r8.internal.Wy:
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmFunctionVisitor get(int,java.lang.String) -> a
-com.android.tools.r8.kotlin.KmVisitorProviders$KmLambdaVisitorProvider -> com.android.tools.r8.internal.Wy:
-com.android.tools.r8.kotlin.KmVisitorProviders$KmPropertyVisitorProvider -> com.android.tools.r8.internal.Xy:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmLambdaVisitorProvider -> com.android.tools.r8.internal.Xy:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmPropertyVisitorProvider -> com.android.tools.r8.internal.Yy:
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyVisitor get(int,java.lang.String,int,int) -> a
-com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeAliasVisitorProvider -> com.android.tools.r8.internal.Yy:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeAliasVisitorProvider -> com.android.tools.r8.internal.Zy:
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeAliasVisitor get(int,java.lang.String) -> a
-com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeParameterVisitorProvider -> com.android.tools.r8.internal.Zy:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeParameterVisitorProvider -> com.android.tools.r8.internal.az:
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeParameterVisitor get(int,java.lang.String,int,com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance) -> a
-com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeProjectionVisitorProvider -> com.android.tools.r8.internal.az:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeProjectionVisitorProvider -> com.android.tools.r8.internal.bz:
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor get(int,com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance) -> a
-com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeStarProjectionVisitorProvider -> com.android.tools.r8.internal.bz:
-com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeVisitorProvider -> com.android.tools.r8.internal.cz:
-com.android.tools.r8.kotlin.KmVisitorProviders$KmValueParameterVisitorProvider -> com.android.tools.r8.internal.dz:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeStarProjectionVisitorProvider -> com.android.tools.r8.internal.cz:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeVisitorProvider -> com.android.tools.r8.internal.dz:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmValueParameterVisitorProvider -> com.android.tools.r8.internal.ez:
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmValueParameterVisitor get(int,java.lang.String) -> a
-com.android.tools.r8.kotlin.KmVisitorProviders$KmVersionRequirementVisitorProvider -> com.android.tools.r8.internal.ez:
-com.android.tools.r8.kotlin.Kotlin -> com.android.tools.r8.internal.mz:
+com.android.tools.r8.kotlin.KmVisitorProviders$KmVersionRequirementVisitorProvider -> com.android.tools.r8.internal.fz:
+com.android.tools.r8.kotlin.Kotlin -> com.android.tools.r8.internal.nz:
     com.android.tools.r8.kotlin.Kotlin$Functional functional -> b
     com.android.tools.r8.kotlin.Kotlin$Metadata metadata -> d
     com.android.tools.r8.kotlin.Kotlin$_Assertions assertions -> e
@@ -94176,12 +94177,12 @@
     com.android.tools.r8.kotlin.Kotlin$Intrinsics intrinsics -> c
     com.android.tools.r8.graph.DexItemFactory factory -> a
     1:7:void <init>(com.android.tools.r8.graph.DexItemFactory):93:99 -> <init>
-com.android.tools.r8.kotlin.Kotlin$ClassClassifiers -> com.android.tools.r8.internal.hz:
+com.android.tools.r8.kotlin.Kotlin$ClassClassifiers -> com.android.tools.r8.internal.iz:
     java.util.Set kotlinPrimitivesDescriptors -> a
     java.util.Set kotlinStaticallyKnownTypes -> b
     1:32:void <clinit>():58:89 -> <clinit>
     1:2:void lambda$static$0(com.android.tools.r8.com.google.common.collect.ImmutableSet$Builder,java.lang.String):81:82 -> a
-com.android.tools.r8.kotlin.Kotlin$Functional -> com.android.tools.r8.internal.iz:
+com.android.tools.r8.kotlin.Kotlin$Functional -> com.android.tools.r8.internal.jz:
     com.android.tools.r8.graph.DexType lambdaType -> a
     com.android.tools.r8.kotlin.Kotlin this$0 -> b
     1:1:void <init>(com.android.tools.r8.kotlin.Kotlin,com.android.tools.r8.kotlin.Kotlin$1):102:102 -> <init>
@@ -94191,7 +94192,7 @@
     13:26:void <init>(com.android.tools.r8.kotlin.Kotlin):117:130 -> <init>
     27:27:void <init>(com.android.tools.r8.kotlin.Kotlin):128:128 -> <init>
     1:1:com.android.tools.r8.graph.DexType lambda$new$0(java.lang.Integer):120:120 -> a
-com.android.tools.r8.kotlin.Kotlin$Intrinsics -> com.android.tools.r8.internal.jz:
+com.android.tools.r8.kotlin.Kotlin$Intrinsics -> com.android.tools.r8.internal.kz:
     com.android.tools.r8.graph.DexMethod checkNotNullParameter -> d
     com.android.tools.r8.graph.DexMethod checkParameterIsNotNull -> c
     com.android.tools.r8.graph.DexMethod throwParameterIsNullNPE -> b
@@ -94203,7 +94204,7 @@
     25:31:void <init>(com.android.tools.r8.kotlin.Kotlin):177:183 -> <init>
     32:37:void <init>(com.android.tools.r8.kotlin.Kotlin):181:186 -> <init>
     38:38:void <init>(com.android.tools.r8.kotlin.Kotlin):185:185 -> <init>
-com.android.tools.r8.kotlin.Kotlin$Metadata -> com.android.tools.r8.internal.kz:
+com.android.tools.r8.kotlin.Kotlin$Metadata -> com.android.tools.r8.internal.lz:
     com.android.tools.r8.graph.DexString kind -> a
     com.android.tools.r8.graph.DexString metadataVersion -> b
     com.android.tools.r8.graph.DexString bytecodeVersion -> c
@@ -94213,11 +94214,11 @@
     com.android.tools.r8.graph.DexString packageName -> g
     com.android.tools.r8.graph.DexString extraInt -> h
     1:9:void <init>(com.android.tools.r8.kotlin.Kotlin):144:152 -> <init>
-com.android.tools.r8.kotlin.Kotlin$_Assertions -> com.android.tools.r8.internal.lz:
+com.android.tools.r8.kotlin.Kotlin$_Assertions -> com.android.tools.r8.internal.mz:
     com.android.tools.r8.graph.DexField enabledField -> b
     com.android.tools.r8.graph.DexType type -> a
     1:5:void <init>(com.android.tools.r8.kotlin.Kotlin):155:159 -> <init>
-com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo -> com.android.tools.r8.internal.sz:
+com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo -> com.android.tools.r8.internal.tz:
     java.util.Map EMPTY_ARGUMENTS -> a
     1:1:void <clinit>():29:29 -> <clinit>
     1:1:void <init>():26:26 -> <init>
@@ -94228,7 +94229,7 @@
     11:20:void lambda$create$0(java.util.LinkedHashMap,com.android.tools.r8.graph.DexItemFactory,java.lang.String,com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument):55 -> a
     21:21:void lambda$create$0(java.util.LinkedHashMap,com.android.tools.r8.graph.DexItemFactory,java.lang.String,com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument):55:55 -> a
     22:26:java.util.Map create(java.util.Map,com.android.tools.r8.graph.DexItemFactory):51:55 -> a
-com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationAnnotationValueInfo -> com.android.tools.r8.internal.nz:
+com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationAnnotationValueInfo -> com.android.tools.r8.internal.oz:
     com.android.tools.r8.kotlin.KotlinAnnotationInfo value -> b
     1:2:void <init>(com.android.tools.r8.kotlin.KotlinAnnotationInfo):129:130 -> <init>
     1:2:com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationAnnotationValueInfo com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationAnnotationValueInfo.create(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument$AnnotationValue,com.android.tools.r8.graph.DexItemFactory):135:136 -> a
@@ -94236,7 +94237,7 @@
     3:3:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):141:141 -> a
     4:4:boolean rewrite(java.util.function.Consumer,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):147:147 -> a
     5:5:void lambda$rewrite$0(java.util.function.Consumer,com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotation):150:150 -> a
-com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationArrayValueInfo -> com.android.tools.r8.internal.oz:
+com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationArrayValueInfo -> com.android.tools.r8.internal.pz:
     java.util.List value -> b
     com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationArrayValueInfo EMPTY -> c
     1:2:void <clinit>():160:161 -> <clinit>
@@ -94246,7 +94247,7 @@
     9:10:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):182:183 -> a
     11:24:boolean rewrite(java.util.function.Consumer,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):190:203 -> a
     25:25:void lambda$rewrite$0(java.util.List,com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument):197:197 -> a
-com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationClassValueInfo -> com.android.tools.r8.internal.pz:
+com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationClassValueInfo -> com.android.tools.r8.internal.qz:
     int arrayDimensionCount -> c
     com.android.tools.r8.kotlin.KotlinTypeReference value -> b
     1:3:void <init>(com.android.tools.r8.kotlin.KotlinTypeReference,int):64:66 -> <init>
@@ -94255,7 +94256,7 @@
     4:4:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):77:77 -> a
     5:5:boolean rewrite(java.util.function.Consumer,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):83:83 -> a
     6:6:void lambda$rewrite$0(java.util.function.Consumer,java.lang.String):84:84 -> a
-com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationEnumValueInfo -> com.android.tools.r8.internal.qz:
+com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationEnumValueInfo -> com.android.tools.r8.internal.rz:
     java.lang.String enumEntryName -> c
     com.android.tools.r8.kotlin.KotlinTypeReference enumClassName -> b
     1:3:void <init>(com.android.tools.r8.kotlin.KotlinTypeReference,java.lang.String):96:98 -> <init>
@@ -94266,14 +94267,14 @@
     7:7:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):110:110 -> a
     8:8:boolean rewrite(java.util.function.Consumer,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):116:116 -> a
     9:9:void lambda$rewrite$0(java.util.function.Consumer,java.lang.String):118:118 -> a
-com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationPrimitiveArgumentInfo -> com.android.tools.r8.internal.rz:
+com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationPrimitiveArgumentInfo -> com.android.tools.r8.internal.sz:
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument argument -> b
     1:2:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument):212:213 -> <init>
     void trace(com.android.tools.r8.graph.DexDefinitionSupplier) -> a
     1:1:com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationPrimitiveArgumentInfo com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationPrimitiveArgumentInfo.create(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument):217:217 -> a
     1:1:com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo$KotlinAnnotationPrimitiveArgumentInfo access$400(com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument):208 -> a
     2:2:boolean rewrite(java.util.function.Consumer,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):228:228 -> a
-com.android.tools.r8.kotlin.KotlinAnnotationInfo -> com.android.tools.r8.internal.tz:
+com.android.tools.r8.kotlin.KotlinAnnotationInfo -> com.android.tools.r8.internal.uz:
     java.util.Map arguments -> b
     java.util.List EMPTY_ANNOTATIONS -> c
     com.android.tools.r8.kotlin.KotlinTypeReference annotationType -> a
@@ -94289,7 +94290,7 @@
     65:65:void lambda$rewrite$0(java.util.Map,java.lang.String,com.android.tools.r8.jetbrains.kotlinx.metadata.KmAnnotationArgument):74:74 -> a
     66:67:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):89:90 -> a
     68:68:void lambda$trace$3(com.android.tools.r8.graph.DexDefinitionSupplier,java.lang.String,com.android.tools.r8.kotlin.KotlinAnnotationArgumentInfo):90:90 -> a
-com.android.tools.r8.kotlin.KotlinClassInfo -> com.android.tools.r8.internal.vz:
+com.android.tools.r8.kotlin.KotlinClassInfo -> com.android.tools.r8.internal.wz:
     com.android.tools.r8.kotlin.KotlinVersionRequirementInfo versionRequirements -> l
     com.android.tools.r8.kotlin.KotlinMetadataMembersTracker originalMembersWithKotlinInfo -> t
     com.android.tools.r8.kotlin.KotlinTypeInfo inlineClassUnderlyingType -> r
@@ -94312,7 +94313,7 @@
     java.util.List enumEntries -> k
     1:22:void <init>(int,java.lang.String,boolean,java.lang.String,com.android.tools.r8.kotlin.KotlinDeclarationContainerInfo,java.util.List,java.util.List,java.util.List,java.util.List,java.util.List,java.util.List,com.android.tools.r8.kotlin.KotlinVersionRequirementInfo,com.android.tools.r8.kotlin.KotlinTypeReference,java.lang.String,com.android.tools.r8.kotlin.KotlinLocalDelegatedPropertyInfo,int[],java.lang.String,com.android.tools.r8.kotlin.KotlinTypeInfo,com.android.tools.r8.kotlin.KotlinMetadataMembersTracker,int):82:103 -> <init>
     1:1:com.android.tools.r8.kotlin.KotlinClassInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$Class,java.lang.String,int[],com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):113:113 -> a
-    2:2:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    2:2:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     2:2:com.android.tools.r8.kotlin.KotlinClassInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$Class,java.lang.String,int[],com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):114 -> a
     3:6:com.android.tools.r8.kotlin.KotlinClassInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$Class,java.lang.String,int[],com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):115:118 -> a
     7:11:com.android.tools.r8.kotlin.KotlinClassInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$Class,java.lang.String,int[],com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):117:121 -> a
@@ -94429,21 +94430,21 @@
     1:1:java.util.function.Consumer lambda$trace$6(com.android.tools.r8.kotlin.KotlinTypeReference):420:420 -> b
     1:1:java.lang.String getPackageName():405:405 -> l
     1:1:int[] getMetadataVersion():410:410 -> m
-com.android.tools.r8.kotlin.KotlinClassLevelInfo -> com.android.tools.r8.internal.wz:
+com.android.tools.r8.kotlin.KotlinClassLevelInfo -> com.android.tools.r8.internal.xz:
     boolean isNoKotlinInformation() -> a
     com.android.tools.r8.utils.Pair rewrite(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens) -> a
     com.android.tools.r8.kotlin.KotlinSyntheticClassInfo asSyntheticClass() -> f
     boolean isSyntheticClass() -> j
     java.lang.String getPackageName() -> l
     int[] getMetadataVersion() -> m
-com.android.tools.r8.kotlin.KotlinClassMetadataReader -> com.android.tools.r8.internal.Az:
+com.android.tools.r8.kotlin.KotlinClassMetadataReader -> com.android.tools.r8.internal.Bz:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():34:34 -> <clinit>
     1:3:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):51:53 -> a
-    4:4:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    4:4:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     4:4:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):66 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    5:5:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    5:5:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     5:5:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):66 -> a
     6:6:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):66:66 -> a
     7:7:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):0:0 -> a
@@ -94459,10 +94460,10 @@
     294:294:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):70:70 -> a
     146:146:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):72:72 -> a
     147:153:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):67:73 -> a
-    154:154:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    154:154:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     154:154:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):56 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    155:155:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    155:155:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     155:155:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):56 -> a
     156:156:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):56:56 -> a
     157:157:com.android.tools.r8.kotlin.KotlinClassLevelInfo getKotlinInfo(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexAnnotation):0:0 -> a
@@ -94546,14 +94547,14 @@
     2:2:java.lang.String[] getUnboxedStringArray(com.android.tools.r8.graph.DexValue,java.lang.String):214 -> c
     3:7:java.lang.String[] getUnboxedStringArray(com.android.tools.r8.graph.DexValue,java.lang.String):217:221 -> c
     8:8:java.lang.String[] getUnboxedStringArray(com.android.tools.r8.graph.DexValue,java.lang.String):215:215 -> c
-com.android.tools.r8.kotlin.KotlinClassMetadataReader$MetadataError -> com.android.tools.r8.internal.zz:
+com.android.tools.r8.kotlin.KotlinClassMetadataReader$MetadataError -> com.android.tools.r8.internal.Az:
     1:1:void <init>(java.lang.String,com.android.tools.r8.kotlin.KotlinClassMetadataReader$1):233:233 -> <init>
     2:2:void <init>(java.lang.String):235:235 -> <init>
-com.android.tools.r8.kotlin.KotlinClassifierInfo -> com.android.tools.r8.internal.Gz:
+com.android.tools.r8.kotlin.KotlinClassifierInfo -> com.android.tools.r8.internal.Hz:
     1:1:void <init>():24:24 -> <init>
     boolean rewrite(com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens) -> a
     com.android.tools.r8.graph.DexType rewriteType(com.android.tools.r8.graph.GraphLens) -> a
-com.android.tools.r8.kotlin.KotlinClassifierInfo$KotlinClassClassifierInfo -> com.android.tools.r8.internal.Bz:
+com.android.tools.r8.kotlin.KotlinClassifierInfo$KotlinClassClassifierInfo -> com.android.tools.r8.internal.Cz:
     boolean isLocalOrAnonymous -> b
     com.android.tools.r8.kotlin.KotlinTypeReference type -> a
     1:1:void <init>(com.android.tools.r8.kotlin.KotlinTypeReference,boolean,com.android.tools.r8.kotlin.KotlinClassifierInfo$1):59:59 -> <init>
@@ -94573,38 +94574,38 @@
     7:7:void lambda$rewrite$0(com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor,java.lang.String):73:73 -> a
     11:11:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):83:83 -> a
     12:12:com.android.tools.r8.graph.DexType rewriteType(com.android.tools.r8.graph.GraphLens):88:88 -> a
-com.android.tools.r8.kotlin.KotlinClassifierInfo$KotlinTypeAliasClassifierInfo -> com.android.tools.r8.internal.Cz:
+com.android.tools.r8.kotlin.KotlinClassifierInfo$KotlinTypeAliasClassifierInfo -> com.android.tools.r8.internal.Dz:
     java.lang.String typeAlias -> a
     1:1:void <init>(java.lang.String,com.android.tools.r8.kotlin.KotlinClassifierInfo$1):112:112 -> <init>
     2:3:void <init>(java.lang.String):116:117 -> <init>
     void trace(com.android.tools.r8.graph.DexDefinitionSupplier) -> a
     1:1:boolean rewrite(com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):122:122 -> a
-com.android.tools.r8.kotlin.KotlinClassifierInfo$KotlinTypeParameterClassifierInfo -> com.android.tools.r8.internal.Dz:
+com.android.tools.r8.kotlin.KotlinClassifierInfo$KotlinTypeParameterClassifierInfo -> com.android.tools.r8.internal.Ez:
     int typeId -> a
     1:1:void <init>(int,com.android.tools.r8.kotlin.KotlinClassifierInfo$1):92:92 -> <init>
     2:3:void <init>(int):96:97 -> <init>
     void trace(com.android.tools.r8.graph.DexDefinitionSupplier) -> a
     1:1:boolean rewrite(com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):102:102 -> a
-com.android.tools.r8.kotlin.KotlinClassifierInfo$KotlinUnknownClassClassifierInfo -> com.android.tools.r8.internal.Ez:
+com.android.tools.r8.kotlin.KotlinClassifierInfo$KotlinUnknownClassClassifierInfo -> com.android.tools.r8.internal.Fz:
     java.lang.String classifier -> a
     1:1:void <init>(java.lang.String,com.android.tools.r8.kotlin.KotlinClassifierInfo$1):132:132 -> <init>
     2:3:void <init>(java.lang.String):135:136 -> <init>
     void trace(com.android.tools.r8.graph.DexDefinitionSupplier) -> a
     1:1:boolean rewrite(com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):141:141 -> a
-com.android.tools.r8.kotlin.KotlinClassifierInfo$KotlinUnknownClassifierInfo -> com.android.tools.r8.internal.Fz:
+com.android.tools.r8.kotlin.KotlinClassifierInfo$KotlinUnknownClassifierInfo -> com.android.tools.r8.internal.Gz:
     java.lang.String classifier -> a
     1:1:void <init>(java.lang.String,com.android.tools.r8.kotlin.KotlinClassifierInfo$1):151:151 -> <init>
     2:3:void <init>(java.lang.String):154:155 -> <init>
     void trace(com.android.tools.r8.graph.DexDefinitionSupplier) -> a
     1:1:boolean rewrite(com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):160:160 -> a
-com.android.tools.r8.kotlin.KotlinCompanionInfo -> com.android.tools.r8.internal.Hz:
+com.android.tools.r8.kotlin.KotlinCompanionInfo -> com.android.tools.r8.internal.Iz:
     java.lang.String companionObjectFieldName -> a
     1:2:void <init>(java.lang.String):18:19 -> <init>
     void trace(com.android.tools.r8.graph.DexDefinitionSupplier) -> a
     1:4:boolean rewrite(com.android.tools.r8.jetbrains.kotlinx.metadata.KmClassVisitor,com.android.tools.r8.graph.DexField,com.android.tools.r8.naming.NamingLens):33:36 -> a
     boolean isCompanion() -> d
     com.android.tools.r8.kotlin.KotlinCompanionInfo asCompanion() -> e
-com.android.tools.r8.kotlin.KotlinConstructorInfo -> com.android.tools.r8.internal.Iz:
+com.android.tools.r8.kotlin.KotlinConstructorInfo -> com.android.tools.r8.internal.Jz:
     java.util.List valueParameters -> b
     com.android.tools.r8.kotlin.KotlinVersionRequirementInfo versionRequirements -> c
     com.android.tools.r8.kotlin.KotlinJvmMethodSignatureInfo signature -> d
@@ -94624,7 +94625,7 @@
     31:33:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):94:96 -> a
     com.android.tools.r8.kotlin.KotlinConstructorInfo asConstructor() -> g
     boolean isConstructor() -> k
-com.android.tools.r8.kotlin.KotlinContractInfo -> com.android.tools.r8.internal.Jz:
+com.android.tools.r8.kotlin.KotlinContractInfo -> com.android.tools.r8.internal.Kz:
     java.util.List effects -> a
     com.android.tools.r8.kotlin.KotlinContractInfo NO_EFFECT -> b
     1:1:void <clinit>():23:23 -> <clinit>
@@ -94636,7 +94637,7 @@
     17:17:java.util.function.Consumer lambda$trace$0(com.android.tools.r8.kotlin.KotlinEffectInfo):49:49 -> a
     18:18:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):49:49 -> a
     19:27:boolean rewrite(com.android.tools.r8.kotlin.KmVisitorProviders$KmContractVisitorProvider,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):56:64 -> a
-com.android.tools.r8.kotlin.KotlinDeclarationContainerInfo -> com.android.tools.r8.internal.Lz:
+com.android.tools.r8.kotlin.KotlinDeclarationContainerInfo -> com.android.tools.r8.internal.Mz:
     java.util.List functionsWithNoBacking -> b
     java.util.List typeAliases -> a
     java.util.List propertiesWithNoBacking -> c
@@ -94685,7 +94686,7 @@
     171:171:java.util.function.Consumer lambda$trace$3(com.android.tools.r8.kotlin.KotlinFunctionInfo):255:255 -> a
     1:1:com.android.tools.r8.kotlin.KotlinDeclarationContainerInfo$KotlinPropertyGroup lambda$rewrite$1(com.android.tools.r8.kotlin.KotlinPropertyInfo):222:222 -> b
     1:1:java.util.function.Consumer lambda$trace$4(com.android.tools.r8.kotlin.KotlinPropertyInfo):256:256 -> c
-com.android.tools.r8.kotlin.KotlinDeclarationContainerInfo$KotlinPropertyGroup -> com.android.tools.r8.internal.Kz:
+com.android.tools.r8.kotlin.KotlinDeclarationContainerInfo$KotlinPropertyGroup -> com.android.tools.r8.internal.Lz:
     com.android.tools.r8.graph.DexEncodedField backingField -> a
     com.android.tools.r8.graph.DexEncodedMethod getter -> c
     com.android.tools.r8.graph.DexEncodedMethod setter -> b
@@ -94698,7 +94699,7 @@
     1:1:com.android.tools.r8.graph.DexEncodedMethod access$100(com.android.tools.r8.kotlin.KotlinDeclarationContainerInfo$KotlinPropertyGroup):259:259 -> b
     2:3:void setSetter(com.android.tools.r8.graph.DexEncodedMethod):276:277 -> b
     1:1:com.android.tools.r8.graph.DexEncodedMethod access$200(com.android.tools.r8.kotlin.KotlinDeclarationContainerInfo$KotlinPropertyGroup):259:259 -> c
-com.android.tools.r8.kotlin.KotlinEffectExpressionInfo -> com.android.tools.r8.internal.Mz:
+com.android.tools.r8.kotlin.KotlinEffectExpressionInfo -> com.android.tools.r8.internal.Nz:
     java.util.List orArguments -> f
     com.android.tools.r8.kotlin.KotlinTypeInfo isInstanceType -> d
     java.util.List andArguments -> e
@@ -94715,7 +94716,7 @@
     26:26:java.util.function.Consumer lambda$trace$0(com.android.tools.r8.kotlin.KotlinEffectExpressionInfo):84:84 -> a
     27:45:boolean rewrite(com.android.tools.r8.kotlin.KmVisitorProviders$KmEffectExpressionVisitorProvider,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):90:108 -> a
     1:1:java.util.function.Consumer lambda$trace$1(com.android.tools.r8.kotlin.KotlinEffectExpressionInfo):85:85 -> b
-com.android.tools.r8.kotlin.KotlinEffectInfo -> com.android.tools.r8.internal.Nz:
+com.android.tools.r8.kotlin.KotlinEffectInfo -> com.android.tools.r8.internal.Oz:
     com.android.tools.r8.kotlin.KotlinEffectExpressionInfo conclusion -> d
     java.util.List constructorArguments -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectInvocationKind invocationKind -> b
@@ -94724,8 +94725,8 @@
     1:1:java.util.function.Consumer lambda$trace$0(com.android.tools.r8.kotlin.KotlinEffectExpressionInfo):50:50 -> a
     2:3:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):50:51 -> a
     4:13:boolean rewrite(com.android.tools.r8.kotlin.KmVisitorProviders$KmEffectVisitorProvider,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):56:65 -> a
-com.android.tools.r8.kotlin.KotlinFieldLevelInfo -> com.android.tools.r8.internal.Oz:
-com.android.tools.r8.kotlin.KotlinFileFacadeInfo -> com.android.tools.r8.internal.Pz:
+com.android.tools.r8.kotlin.KotlinFieldLevelInfo -> com.android.tools.r8.internal.Pz:
+com.android.tools.r8.kotlin.KotlinFileFacadeInfo -> com.android.tools.r8.internal.Qz:
     int[] metadataVersion -> c
     com.android.tools.r8.kotlin.KotlinPackageInfo packageInfo -> a
     java.lang.String packageName -> b
@@ -94736,7 +94737,7 @@
     14:14:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):82:82 -> a
     1:1:java.lang.String getPackageName():72:72 -> l
     1:1:int[] getMetadataVersion():77:77 -> m
-com.android.tools.r8.kotlin.KotlinFlexibleTypeUpperBoundInfo -> com.android.tools.r8.internal.Qz:
+com.android.tools.r8.kotlin.KotlinFlexibleTypeUpperBoundInfo -> com.android.tools.r8.internal.Rz:
     com.android.tools.r8.kotlin.KotlinTypeInfo kotlinTypeInfo -> b
     java.lang.String typeFlexibilityId -> a
     com.android.tools.r8.kotlin.KotlinFlexibleTypeUpperBoundInfo NO_FLEXIBLE_UPPER_BOUND -> c
@@ -94747,7 +94748,7 @@
     6:14:boolean rewrite(com.android.tools.r8.kotlin.KmVisitorProviders$KmFlexibleUpperBoundVisitorProvider,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):45:53 -> a
     15:15:com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor lambda$rewrite$0(com.android.tools.r8.kotlin.KmVisitorProviders$KmFlexibleUpperBoundVisitorProvider,int):54:54 -> a
     16:23:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):59:66 -> a
-com.android.tools.r8.kotlin.KotlinFunctionInfo -> com.android.tools.r8.internal.Rz:
+com.android.tools.r8.kotlin.KotlinFunctionInfo -> com.android.tools.r8.internal.Sz:
     com.android.tools.r8.kotlin.KotlinTypeReference lambdaClassOrigin -> h
     com.android.tools.r8.kotlin.KotlinTypeInfo receiverParameterType -> e
     java.util.List typeParameters -> f
@@ -94788,7 +94789,7 @@
     com.android.tools.r8.kotlin.KotlinFunctionInfo asFunction() -> b
     boolean isFunction() -> h
     1:1:boolean hasCrossInlineParameter():72:72 -> n
-com.android.tools.r8.kotlin.KotlinJvmFieldSignatureInfo -> com.android.tools.r8.internal.Sz:
+com.android.tools.r8.kotlin.KotlinJvmFieldSignatureInfo -> com.android.tools.r8.internal.Tz:
     java.lang.String name -> b
     com.android.tools.r8.kotlin.KotlinTypeReference type -> a
     1:3:void <init>(java.lang.String,com.android.tools.r8.kotlin.KotlinTypeReference):26:28 -> <init>
@@ -94798,7 +94799,7 @@
     5:5:com.android.tools.r8.kotlin.KotlinJvmFieldSignatureInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmFieldSignature,com.android.tools.r8.graph.DexItemFactory):38:38 -> a
     6:19:boolean rewrite(java.util.function.Consumer,com.android.tools.r8.graph.DexEncodedField,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):47:60 -> a
     20:20:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):66:66 -> a
-com.android.tools.r8.kotlin.KotlinJvmMethodSignatureInfo -> com.android.tools.r8.internal.Tz:
+com.android.tools.r8.kotlin.KotlinJvmMethodSignatureInfo -> com.android.tools.r8.internal.Uz:
     java.util.List EMPTY_PARAMETERS_LIST -> e
     java.util.List parameters -> c
     boolean $assertionsDisabled -> f
@@ -94834,7 +94835,7 @@
     128:128:java.lang.String toString():112:112 -> toString
     129:129:java.lang.String toString():112:112 -> toString
     117:126:java.lang.String toString():114:123 -> toString
-com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation -> com.android.tools.r8.internal.Vz:
+com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation -> com.android.tools.r8.internal.Wz:
     java.util.Set noExtensionIndicesForFunctions -> a
     java.util.Set noExtensionIndicesForConstructors -> b
     com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation EMPTY -> c
@@ -94905,7 +94906,7 @@
     65:65:com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation readInformationFromMessage(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$SyntheticClass,com.android.tools.r8.utils.InternalOptions):91 -> a
     66:66:boolean hasJvmMethodSignatureExtensionForConstructor(int):121:121 -> a
     1:1:boolean hasJvmMethodSignatureExtensionForFunction(int):117:117 -> b
-com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation$KotlinJvmSignatureExtensionInformationBuilder -> com.android.tools.r8.internal.Uz:
+com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation$KotlinJvmSignatureExtensionInformationBuilder -> com.android.tools.r8.internal.Vz:
     java.util.Set noExtensionIndicesForFunctions -> a
     java.util.Set noExtensionIndicesForConstructors -> b
     1:4:void <init>():132:135 -> <init>
@@ -94920,7 +94921,7 @@
     7:7:void visitConstructors(java.util.List):166:166 -> a
     8:9:void lambda$visitConstructors$0(com.android.tools.r8.jetbrains.kotlinx.metadata.internal.metadata.ProtoBuf$Constructor,int):169:170 -> a
     1:1:void visitFunctions(java.util.List):154:154 -> b
-com.android.tools.r8.kotlin.KotlinLambdaInfo -> com.android.tools.r8.internal.Wz:
+com.android.tools.r8.kotlin.KotlinLambdaInfo -> com.android.tools.r8.internal.Xz:
     boolean hasBacking -> b
     com.android.tools.r8.kotlin.KotlinFunctionInfo function -> a
     boolean $assertionsDisabled -> c
@@ -94938,7 +94939,7 @@
     16:23:com.android.tools.r8.kotlin.KotlinLambdaInfo create(com.android.tools.r8.graph.DexClass,com.android.tools.r8.jetbrains.kotlinx.metadata.KmLambda,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.utils.Reporter,com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation):50:57 -> a
     24:35:boolean rewrite(com.android.tools.r8.kotlin.KmVisitorProviders$KmLambdaVisitorProvider,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):65:76 -> a
     36:36:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):81:81 -> a
-com.android.tools.r8.kotlin.KotlinLocalDelegatedPropertyInfo -> com.android.tools.r8.internal.Xz:
+com.android.tools.r8.kotlin.KotlinLocalDelegatedPropertyInfo -> com.android.tools.r8.internal.Yz:
     java.util.List propertyInfos -> a
     com.android.tools.r8.kotlin.KotlinLocalDelegatedPropertyInfo EMPTY_DELEGATED_PROPERTIES -> b
     boolean $assertionsDisabled -> c
@@ -94949,7 +94950,7 @@
     17:17:java.util.function.Consumer lambda$trace$0(com.android.tools.r8.kotlin.KotlinPropertyInfo):52:52 -> a
     18:18:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):52:52 -> a
     19:20:boolean rewrite(com.android.tools.r8.kotlin.KmVisitorProviders$KmPropertyVisitorProvider,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):58:59 -> a
-com.android.tools.r8.kotlin.KotlinMemberLevelInfo -> com.android.tools.r8.internal.Yz:
+com.android.tools.r8.kotlin.KotlinMemberLevelInfo -> com.android.tools.r8.internal.Zz:
     boolean isNoKotlinInformation() -> a
     com.android.tools.r8.kotlin.KotlinFunctionInfo asFunction() -> b
     boolean isProperty() -> c
@@ -94959,7 +94960,7 @@
     boolean isFunction() -> h
     com.android.tools.r8.kotlin.KotlinPropertyInfo asProperty() -> i
     boolean isConstructor() -> k
-com.android.tools.r8.kotlin.KotlinMetadataDiagnostic -> com.android.tools.r8.internal.Zz:
+com.android.tools.r8.kotlin.KotlinMetadataDiagnostic -> com.android.tools.r8.internal.aA:
     com.android.tools.r8.origin.Origin origin -> b
     com.android.tools.r8.position.Position position -> c
     java.lang.String message -> d
@@ -94967,7 +94968,7 @@
     1:1:java.lang.String getDiagnosticMessage():38:38 -> getDiagnosticMessage
     1:1:com.android.tools.r8.origin.Origin getOrigin():28:28 -> getOrigin
     1:1:com.android.tools.r8.position.Position getPosition():33:33 -> getPosition
-com.android.tools.r8.kotlin.KotlinMetadataEnqueuerExtension -> com.android.tools.r8.internal.bA:
+com.android.tools.r8.kotlin.KotlinMetadataEnqueuerExtension -> com.android.tools.r8.internal.cA:
     com.android.tools.r8.ir.optimize.info.OptimizationFeedback feedback -> d
     com.android.tools.r8.graph.AppView appView -> a
     java.util.Set prunedTypes -> c
@@ -95020,7 +95021,7 @@
     139:139:void lambda$done$6(com.android.tools.r8.graph.ProgramMember):137 -> a
     140:140:void lambda$done$6(com.android.tools.r8.graph.ProgramMember):137:137 -> a
     1:2:boolean lambda$done$4(com.android.tools.r8.graph.DexAnnotation):121:122 -> b
-com.android.tools.r8.kotlin.KotlinMetadataEnqueuerExtension$KotlinMetadataDefinitionSupplier -> com.android.tools.r8.internal.aA:
+com.android.tools.r8.kotlin.KotlinMetadataEnqueuerExtension$KotlinMetadataDefinitionSupplier -> com.android.tools.r8.internal.bA:
     java.util.Set prunedTypes -> c
     com.android.tools.r8.shaking.Enqueuer$EnqueuerDefinitionSupplier enqueuerDefinitionSupplier -> b
     com.android.tools.r8.graph.ProgramDefinition context -> a
@@ -95030,7 +95031,7 @@
     1:1:com.android.tools.r8.graph.DexItemFactory dexItemFactory():174:174 -> a
     1:1:com.android.tools.r8.graph.ClassResolutionResult contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):158:158 -> d
     1:4:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType):166:169 -> e
-com.android.tools.r8.kotlin.KotlinMetadataMembersTracker -> com.android.tools.r8.internal.cA:
+com.android.tools.r8.kotlin.KotlinMetadataMembersTracker -> com.android.tools.r8.internal.dA:
     java.util.Set references -> b
     boolean $assertionsDisabled -> c
     int count -> a
@@ -95045,7 +95046,7 @@
     26:26:boolean com.android.tools.r8.graph.DexString.startsWith(com.android.tools.r8.graph.DexString):444:444 -> a
     26:26:boolean com.android.tools.r8.kotlin.KotlinMetadataMembersTracker.isKotlinJvmType(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType):63 -> a
     26:26:boolean lambda$isEqual$0(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType):54 -> a
-com.android.tools.r8.kotlin.KotlinMetadataRewriter -> com.android.tools.r8.internal.eA:
+com.android.tools.r8.kotlin.KotlinMetadataRewriter -> com.android.tools.r8.internal.fA:
     com.android.tools.r8.graph.DexItemFactory factory -> c
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.naming.NamingLens lens -> b
@@ -95155,7 +95156,7 @@
     2:2:void runForR8(java.util.concurrent.ExecutorService):90 -> b
     3:15:void runForR8(java.util.concurrent.ExecutorService):91:103 -> b
     16:16:void runForR8(java.util.concurrent.ExecutorService):102:102 -> b
-com.android.tools.r8.kotlin.KotlinMetadataRewriter$WriteMetadataFieldInfo -> com.android.tools.r8.internal.dA:
+com.android.tools.r8.kotlin.KotlinMetadataRewriter$WriteMetadataFieldInfo -> com.android.tools.r8.internal.eA:
     boolean writeData2 -> e
     boolean writeExtraString -> f
     boolean writePackageName -> g
@@ -95168,7 +95169,7 @@
     2:10:void <init>(boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean):57:65 -> <init>
     1:1:com.android.tools.r8.kotlin.KotlinMetadataRewriter$WriteMetadataFieldInfo com.android.tools.r8.kotlin.KotlinMetadataRewriter$WriteMetadataFieldInfo.rewriteAll():69:69 -> a
     1:1:com.android.tools.r8.kotlin.KotlinMetadataRewriter$WriteMetadataFieldInfo access$100():39 -> a
-com.android.tools.r8.kotlin.KotlinMetadataUtils -> com.android.tools.r8.internal.jA:
+com.android.tools.r8.kotlin.KotlinMetadataUtils -> com.android.tools.r8.internal.kA:
     com.android.tools.r8.kotlin.KotlinMetadataUtils$NoKotlinInfo NO_KOTLIN_INFO -> a
     com.android.tools.r8.kotlin.KotlinMetadataUtils$NoKotlinInfo INVALID_KOTLIN_INFO -> b
     1:2:void <clinit>():36:37 -> <clinit>
@@ -95188,7 +95189,7 @@
     118:118:boolean canBeKotlinMetadataKeepRule(com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.graph.DexItemFactory):199 -> a
     119:129:boolean canBeKotlinMetadataKeepRule(com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.graph.DexItemFactory):202:212 -> a
     1:1:com.android.tools.r8.kotlin.KotlinMetadataUtils$NoKotlinInfo getNoKotlinInfo():81:81 -> b
-com.android.tools.r8.kotlin.KotlinMetadataUtils$KmPropertyProcessor -> com.android.tools.r8.internal.hA:
+com.android.tools.r8.kotlin.KotlinMetadataUtils$KmPropertyProcessor -> com.android.tools.r8.internal.iA:
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmFieldSignature fieldSignature -> a
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature getterSignature -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature setterSignature -> c
@@ -95203,17 +95204,17 @@
     3:3:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature getterSignature():150:150 -> b
     1:1:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature access$300(com.android.tools.r8.kotlin.KotlinMetadataUtils$KmPropertyProcessor):112:112 -> c
     2:2:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature setterSignature():154:154 -> c
-com.android.tools.r8.kotlin.KotlinMetadataUtils$KmPropertyProcessor$1 -> com.android.tools.r8.internal.gA:
+com.android.tools.r8.kotlin.KotlinMetadataUtils$KmPropertyProcessor$1 -> com.android.tools.r8.internal.hA:
     com.android.tools.r8.kotlin.KotlinMetadataUtils$KmPropertyProcessor this$0 -> b
     1:1:void <init>(com.android.tools.r8.kotlin.KotlinMetadataUtils$KmPropertyProcessor):120:120 -> <init>
     1:4:com.android.tools.r8.jetbrains.kotlinx.metadata.KmPropertyExtensionVisitor visitExtensions(com.android.tools.r8.jetbrains.kotlinx.metadata.KmExtensionType):123:126 -> a
-com.android.tools.r8.kotlin.KotlinMetadataUtils$KmPropertyProcessor$1$1 -> com.android.tools.r8.internal.fA:
+com.android.tools.r8.kotlin.KotlinMetadataUtils$KmPropertyProcessor$1$1 -> com.android.tools.r8.internal.gA:
     com.android.tools.r8.kotlin.KotlinMetadataUtils$KmPropertyProcessor$1 this$1 -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():126:126 -> <clinit>
     1:1:void <init>(com.android.tools.r8.kotlin.KotlinMetadataUtils$KmPropertyProcessor$1):126:126 -> <init>
     1:6:void visit(int,com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmFieldSignature,com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature,com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature):133:138 -> a
-com.android.tools.r8.kotlin.KotlinMetadataUtils$NoKotlinInfo -> com.android.tools.r8.internal.iA:
+com.android.tools.r8.kotlin.KotlinMetadataUtils$NoKotlinInfo -> com.android.tools.r8.internal.jA:
     java.lang.String name -> a
     1:1:void <init>(java.lang.String,com.android.tools.r8.kotlin.KotlinMetadataUtils$1):39:39 -> <init>
     2:3:void <init>(java.lang.String):44:45 -> <init>
@@ -95223,7 +95224,7 @@
     1:1:java.lang.String getPackageName():61:61 -> l
     1:1:int[] getMetadataVersion():66:66 -> m
     1:1:java.lang.String toString():50:50 -> toString
-com.android.tools.r8.kotlin.KotlinMetadataWriter -> com.android.tools.r8.internal.kA:
+com.android.tools.r8.kotlin.KotlinMetadataWriter -> com.android.tools.r8.internal.lA:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():47:47 -> <clinit>
     1:122:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmMethodSignature com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmExtensionsKt.getGetterSignature(com.android.tools.r8.jetbrains.kotlinx.metadata.KmProperty):0:121 -> a
@@ -95525,8 +95526,8 @@
     140:147:void lambda$appendKmEffectExpression$90(java.lang.StringBuilder,com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpression,java.lang.String):946:953 -> f
     148:161:void lambda$appendKmEffectExpression$90(java.lang.StringBuilder,com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpression,java.lang.String):947:960 -> f
     162:190:void lambda$appendKmEffectExpression$90(java.lang.StringBuilder,com.android.tools.r8.jetbrains.kotlinx.metadata.KmEffectExpression,java.lang.String):954:982 -> f
-com.android.tools.r8.kotlin.KotlinMethodLevelInfo -> com.android.tools.r8.internal.lA:
-com.android.tools.r8.kotlin.KotlinMultiFileClassFacadeInfo -> com.android.tools.r8.internal.mA:
+com.android.tools.r8.kotlin.KotlinMethodLevelInfo -> com.android.tools.r8.internal.mA:
+com.android.tools.r8.kotlin.KotlinMultiFileClassFacadeInfo -> com.android.tools.r8.internal.nA:
     java.util.List partClassNames -> a
     int[] metadataVersion -> c
     java.lang.String packageName -> b
@@ -95563,7 +95564,7 @@
     376:376:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):92:92 -> a
     1:1:java.lang.String getPackageName():82:82 -> l
     1:1:int[] getMetadataVersion():87:87 -> m
-com.android.tools.r8.kotlin.KotlinMultiFileClassPartInfo -> com.android.tools.r8.internal.nA:
+com.android.tools.r8.kotlin.KotlinMultiFileClassPartInfo -> com.android.tools.r8.internal.oA:
     int[] metadataVersion -> d
     java.lang.String facadeClassName -> a
     com.android.tools.r8.kotlin.KotlinPackageInfo packageInfo -> b
@@ -95578,7 +95579,7 @@
     16:16:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):90:90 -> a
     1:1:java.lang.String getPackageName():80:80 -> l
     1:1:int[] getMetadataVersion():85:85 -> m
-com.android.tools.r8.kotlin.KotlinPackageInfo -> com.android.tools.r8.internal.oA:
+com.android.tools.r8.kotlin.KotlinPackageInfo -> com.android.tools.r8.internal.pA:
     com.android.tools.r8.kotlin.KotlinDeclarationContainerInfo containerInfo -> b
     com.android.tools.r8.kotlin.KotlinMetadataMembersTracker originalMembersWithKotlinInfo -> d
     java.lang.String moduleName -> a
@@ -95596,7 +95597,7 @@
     16:16:java.lang.String com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmExtensionsKt.getModuleName(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage):69:69 -> a
     16:16:com.android.tools.r8.kotlin.KotlinPackageInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation):60 -> a
     17:17:com.android.tools.r8.kotlin.KotlinPackageInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation):65:65 -> a
-    18:18:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    18:18:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     18:18:com.android.tools.r8.kotlin.KotlinPackageInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation):66 -> a
     19:19:com.android.tools.r8.kotlin.KotlinPackageInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation):61:61 -> a
     20:20:com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmPackageExtension com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.impl.JvmExtensionNodesKt.getJvm(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage):16:16 -> a
@@ -95605,12 +95606,12 @@
     21:21:java.util.List com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.JvmExtensionsKt.getLocalDelegatedProperties(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage):63:63 -> a
     21:21:com.android.tools.r8.kotlin.KotlinPackageInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation):71 -> a
     22:22:com.android.tools.r8.kotlin.KotlinPackageInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation):72:72 -> a
-    23:23:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    23:23:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     23:23:com.android.tools.r8.kotlin.KotlinPackageInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation):73 -> a
     24:24:com.android.tools.r8.kotlin.KotlinPackageInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.kotlin.KotlinJvmSignatureExtensionInformation):70:70 -> a
     25:42:boolean rewrite(com.android.tools.r8.jetbrains.kotlinx.metadata.KmPackage,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):78:95 -> a
     43:44:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):100:101 -> a
-com.android.tools.r8.kotlin.KotlinPropertyInfo -> com.android.tools.r8.internal.pA:
+com.android.tools.r8.kotlin.KotlinPropertyInfo -> com.android.tools.r8.internal.qA:
     com.android.tools.r8.kotlin.KotlinJvmMethodSignatureInfo syntheticMethodForAnnotations -> n
     com.android.tools.r8.kotlin.KotlinJvmMethodSignatureInfo syntheticMethodForDelegate -> o
     com.android.tools.r8.kotlin.KotlinVersionRequirementInfo versionRequirements -> i
@@ -95654,7 +95655,7 @@
     1:1:com.android.tools.r8.kotlin.KotlinJvmFieldSignatureInfo getFieldSignature():131:131 -> n
     1:1:com.android.tools.r8.kotlin.KotlinJvmMethodSignatureInfo getGetterSignature():135:135 -> o
     1:1:com.android.tools.r8.kotlin.KotlinJvmMethodSignatureInfo getSetterSignature():139:139 -> p
-com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser -> com.android.tools.r8.internal.sA:
+com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser -> com.android.tools.r8.internal.tA:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():23:23 -> <clinit>
     1:17:java.lang.String parseStratumContents(com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$BufferedStringReader,com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$StratumBuilder):193:209 -> a
@@ -95754,7 +95755,7 @@
     166:197:void lambda$parseStratumContents$2(com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$StratumBuilder,java.util.List):212 -> b
     198:205:void com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser.addDebugEntryToBuilder(java.lang.String,com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$StratumBuilder):288:295 -> b
     198:205:void lambda$parseStratumContents$2(com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$StratumBuilder,java.util.List):212 -> b
-com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$BufferedStringReader -> com.android.tools.r8.internal.qA:
+com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$BufferedStringReader -> com.android.tools.r8.internal.rA:
     java.io.BufferedReader reader -> b
     java.lang.String readLine -> c
     boolean $assertionsDisabled -> d
@@ -95785,23 +95786,23 @@
     65:65:void readExpectedLineOrThrow(java.lang.String):61:61 -> d
     1:1:java.lang.String readNextLine():51:51 -> e
     1:73:com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$BufferedStringReader readUntil(java.lang.String):0:72 -> f
-com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$KotlinSourceDebugExtensionParserException -> com.android.tools.r8.internal.rA:
+com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$KotlinSourceDebugExtensionParserException -> com.android.tools.r8.internal.sA:
     1:1:void <init>(java.lang.String):36:36 -> <init>
-com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$Position -> com.android.tools.r8.internal.sA$a:
+com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$Position -> com.android.tools.r8.internal.tA$a:
     com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$Source source -> a
     com.android.tools.r8.naming.Range range -> b
     1:3:void <init>(com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$Source,com.android.tools.r8.naming.Range):355:357 -> <init>
     1:1:com.android.tools.r8.naming.Range getRange():365:365 -> a
     1:1:com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$Source getSource():361:361 -> b
     1:10:java.lang.String toString():370:379 -> toString
-com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$Result -> com.android.tools.r8.internal.sA$b:
+com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$Result -> com.android.tools.r8.internal.tA$b:
     com.android.tools.r8.utils.SegmentTree inlineePositions -> a
     com.android.tools.r8.utils.SegmentTree calleePositions -> b
     1:3:void <init>(com.android.tools.r8.utils.SegmentTree,com.android.tools.r8.utils.SegmentTree):304:306 -> <init>
     1:1:java.util.Map$Entry lookupCalleePosition(int):314:314 -> a
     2:2:int inlinePositionsCount():318:318 -> a
     1:1:java.util.Map$Entry lookupInlinedPosition(int):310:310 -> b
-com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$Source -> com.android.tools.r8.internal.sA$c:
+com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$Source -> com.android.tools.r8.internal.tA$c:
     java.lang.String fileName -> a
     java.lang.String path -> b
     1:1:void <init>(java.lang.String,java.lang.String,com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$1):328:328 -> <init>
@@ -95814,11 +95815,11 @@
     349:349:java.lang.String toString():347:347 -> toString
     350:350:java.lang.String toString():347:347 -> toString
     351:351:java.lang.String toString():347:347 -> toString
-com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$StratumBuilder -> com.android.tools.r8.internal.tA:
+com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$StratumBuilder -> com.android.tools.r8.internal.uA:
     java.util.Map files -> b
     com.android.tools.r8.utils.SegmentTree segmentTree -> a
     1:4:void <init>():322:325 -> <init>
-com.android.tools.r8.kotlin.KotlinSyntheticClassInfo -> com.android.tools.r8.internal.uA:
+com.android.tools.r8.kotlin.KotlinSyntheticClassInfo -> com.android.tools.r8.internal.vA:
     com.android.tools.r8.kotlin.KotlinLambdaInfo lambda -> a
     com.android.tools.r8.kotlin.KotlinSyntheticClassInfo$Flavour flavour -> d
     int[] metadataVersion -> c
@@ -95829,7 +95830,7 @@
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmLambdaVisitor lambda$rewrite$0(com.android.tools.r8.jetbrains.kotlinx.metadata.KmLambda) -> a
     1:5:com.android.tools.r8.kotlin.KotlinSyntheticClassInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$SyntheticClass,java.lang.String,int[],com.android.tools.r8.graph.DexClass,com.android.tools.r8.kotlin.Kotlin,com.android.tools.r8.graph.AppView):47:51 -> a
     6:11:com.android.tools.r8.kotlin.KotlinSyntheticClassInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$SyntheticClass,java.lang.String,int[],com.android.tools.r8.graph.DexClass,com.android.tools.r8.kotlin.Kotlin,com.android.tools.r8.graph.AppView):50:55 -> a
-    12:12:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    12:12:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     12:12:com.android.tools.r8.kotlin.KotlinSyntheticClassInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$SyntheticClass,java.lang.String,int[],com.android.tools.r8.graph.DexClass,com.android.tools.r8.kotlin.Kotlin,com.android.tools.r8.graph.AppView):55 -> a
     13:13:com.android.tools.r8.kotlin.KotlinSyntheticClassInfo create(com.android.tools.r8.jetbrains.kotlinx.metadata.jvm.KotlinClassMetadata$SyntheticClass,java.lang.String,int[],com.android.tools.r8.graph.DexClass,com.android.tools.r8.kotlin.Kotlin,com.android.tools.r8.graph.AppView):54:54 -> a
     14:21:com.android.tools.r8.kotlin.KotlinSyntheticClassInfo$Flavour com.android.tools.r8.kotlin.KotlinSyntheticClassInfo.getFlavour(com.android.tools.r8.graph.DexClass,com.android.tools.r8.kotlin.Kotlin):109:116 -> a
@@ -95861,7 +95862,7 @@
     1:1:java.lang.String getPackageName():98:98 -> l
     1:1:int[] getMetadataVersion():103:103 -> m
     1:1:boolean isLambda():63:63 -> n
-com.android.tools.r8.kotlin.KotlinTypeAliasInfo -> com.android.tools.r8.internal.vA:
+com.android.tools.r8.kotlin.KotlinTypeAliasInfo -> com.android.tools.r8.internal.wA:
     java.util.List annotations -> f
     com.android.tools.r8.kotlin.KotlinTypeInfo expandedType -> d
     java.util.List typeParameters -> e
@@ -95877,7 +95878,7 @@
     21:24:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):82:85 -> a
     25:25:java.util.function.Consumer lambda$trace$0(com.android.tools.r8.kotlin.KotlinTypeParameterInfo):84:84 -> a
     26:26:java.util.function.Consumer lambda$trace$1(com.android.tools.r8.kotlin.KotlinAnnotationInfo):85:85 -> a
-com.android.tools.r8.kotlin.KotlinTypeInfo -> com.android.tools.r8.internal.wA:
+com.android.tools.r8.kotlin.KotlinTypeInfo -> com.android.tools.r8.internal.xA:
     com.android.tools.r8.kotlin.KotlinFlexibleTypeUpperBoundInfo flexibleTypeUpperBound -> g
     java.util.List annotations -> f
     com.android.tools.r8.kotlin.KotlinTypeInfo outerType -> d
@@ -95937,7 +95938,7 @@
     96:96:java.util.function.Consumer lambda$trace$0(com.android.tools.r8.kotlin.KotlinTypeProjectionInfo):134:134 -> a
     97:97:java.util.function.Consumer lambda$trace$1(com.android.tools.r8.kotlin.KotlinAnnotationInfo):136:136 -> a
     98:98:com.android.tools.r8.graph.DexType rewriteType(com.android.tools.r8.graph.GraphLens):140:140 -> a
-com.android.tools.r8.kotlin.KotlinTypeParameterInfo -> com.android.tools.r8.internal.xA:
+com.android.tools.r8.kotlin.KotlinTypeParameterInfo -> com.android.tools.r8.internal.yA:
     java.util.List annotations -> f
     java.util.List originalUpperBounds -> e
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance variance -> d
@@ -95968,7 +95969,7 @@
     41:41:java.util.function.Consumer lambda$trace$0(com.android.tools.r8.kotlin.KotlinTypeInfo):113:113 -> a
     42:43:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):113:114 -> a
     44:44:java.util.function.Consumer lambda$trace$1(com.android.tools.r8.kotlin.KotlinAnnotationInfo):114:114 -> a
-com.android.tools.r8.kotlin.KotlinTypeProjectionInfo -> com.android.tools.r8.internal.yA:
+com.android.tools.r8.kotlin.KotlinTypeProjectionInfo -> com.android.tools.r8.internal.zA:
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance variance -> a
     com.android.tools.r8.kotlin.KotlinTypeInfo typeInfo -> b
     1:3:void <init>(com.android.tools.r8.jetbrains.kotlinx.metadata.KmVariance,com.android.tools.r8.kotlin.KotlinTypeInfo):22:24 -> <init>
@@ -95978,7 +95979,7 @@
     5:8:boolean rewrite(com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeProjectionVisitorProvider,com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeStarProjectionVisitorProvider,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):44:47 -> a
     9:9:com.android.tools.r8.jetbrains.kotlinx.metadata.KmTypeVisitor lambda$rewrite$0(com.android.tools.r8.kotlin.KmVisitorProviders$KmTypeProjectionVisitorProvider,int):47:47 -> a
     10:11:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):53:54 -> a
-com.android.tools.r8.kotlin.KotlinTypeReference -> com.android.tools.r8.internal.zA:
+com.android.tools.r8.kotlin.KotlinTypeReference -> com.android.tools.r8.internal.AA:
     com.android.tools.r8.graph.DexType known -> a
     java.lang.String originalName -> b
     boolean $assertionsDisabled -> c
@@ -96018,7 +96019,7 @@
     7:7:java.lang.String com.android.tools.r8.kotlin.KotlinMetadataUtils.getKotlinLocalOrAnonymousNameFromDescriptor(java.lang.String,boolean):233:233 -> o
     7:7:java.lang.String toKotlinClassifier(boolean):103 -> o
     1:1:java.lang.String toString():152:152 -> toString
-com.android.tools.r8.kotlin.KotlinValueParameterInfo -> com.android.tools.r8.internal.AA:
+com.android.tools.r8.kotlin.KotlinValueParameterInfo -> com.android.tools.r8.internal.BA:
     com.android.tools.r8.kotlin.KotlinTypeInfo varargElementType -> d
     java.util.List EMPTY_VALUE_PARAMETERS -> e
     com.android.tools.r8.kotlin.KotlinTypeInfo type -> c
@@ -96030,14 +96031,14 @@
     7:14:java.util.List create(java.util.List,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.utils.Reporter):59:66 -> a
     15:19:boolean rewrite(com.android.tools.r8.kotlin.KmVisitorProviders$KmValueParameterVisitorProvider,com.android.tools.r8.graph.AppView,com.android.tools.r8.naming.NamingLens):73:77 -> a
     20:22:void trace(com.android.tools.r8.graph.DexDefinitionSupplier):85:87 -> a
-com.android.tools.r8.kotlin.KotlinVersionRequirementInfo -> com.android.tools.r8.internal.CA:
+com.android.tools.r8.kotlin.KotlinVersionRequirementInfo -> com.android.tools.r8.internal.DA:
     java.util.List versionRequirements -> a
     com.android.tools.r8.kotlin.KotlinVersionRequirementInfo NO_VERSION_REQUIREMENTS -> b
     1:2:void <clinit>():17:18 -> <clinit>
     1:2:void <init>(java.util.List):22:23 -> <init>
     1:8:com.android.tools.r8.kotlin.KotlinVersionRequirementInfo create(java.util.List):27:34 -> a
     9:13:boolean rewrite(com.android.tools.r8.kotlin.KmVisitorProviders$KmVersionRequirementVisitorProvider):38:42 -> a
-com.android.tools.r8.kotlin.KotlinVersionRequirementInfo$KotlinVersionRequirementPoint -> com.android.tools.r8.internal.BA:
+com.android.tools.r8.kotlin.KotlinVersionRequirementInfo$KotlinVersionRequirementPoint -> com.android.tools.r8.internal.CA:
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementLevel level -> c
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVersionKind kind -> b
     com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersion version -> e
@@ -96051,7 +96052,7 @@
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     7:9:void com.android.tools.r8.kotlin.KotlinVersionRequirementInfo$KotlinVersionRequirementPoint.rewrite(com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVisitor):78:80 -> a
     7:9:void access$100(com.android.tools.r8.kotlin.KotlinVersionRequirementInfo$KotlinVersionRequirementPoint,com.android.tools.r8.jetbrains.kotlinx.metadata.KmVersionRequirementVisitor):47 -> a
-com.android.tools.r8.logging.Log -> com.android.tools.r8.internal.JC:
+com.android.tools.r8.logging.Log -> com.android.tools.r8.internal.KC:
     java.util.Set CLASS_FILTER -> b
     boolean ENABLED -> a
     1:1:void <clinit>():12:12 -> <clinit>
@@ -97087,7 +97088,7 @@
     int getDictionaryIndex() -> a
     int incrementDictionaryIndex() -> b
     int incrementNameIndex() -> c
-com.android.tools.r8.naming.MapVersion -> com.android.tools.r8.internal.FD:
+com.android.tools.r8.naming.MapVersion -> com.android.tools.r8.internal.GD:
     com.android.tools.r8.naming.MapVersion[] $VALUES -> h
     com.android.tools.r8.naming.MapVersion MAP_VERSION_UNKNOWN -> g
     com.android.tools.r8.naming.MapVersion MAP_VERSION_EXPERIMENTAL -> f
@@ -97962,7 +97963,7 @@
     1227:1227:java.lang.String toString():610:610 -> toString
     1228:1228:java.lang.String toString():610:610 -> toString
     1221:1221:java.lang.String toString():610:610 -> toString
-com.android.tools.r8.naming.ProguardMapSupplier -> com.android.tools.r8.internal.LN:
+com.android.tools.r8.naming.ProguardMapSupplier -> com.android.tools.r8.internal.MN:
     com.android.tools.r8.naming.ClassNameMapper classNameMapper -> a
     com.android.tools.r8.utils.InternalOptions options -> c
     com.android.tools.r8.utils.Reporter reporter -> d
@@ -98030,11 +98031,11 @@
     43:43:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId writeProguardMap():82 -> a
     44:44:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId writeProguardMap():83:83 -> a
     1:1:com.android.tools.r8.StringConsumer access$200(com.android.tools.r8.naming.ProguardMapSupplier):23:23 -> b
-com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapChecker -> com.android.tools.r8.internal.LN$a:
+com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapChecker -> com.android.tools.r8.internal.MN$a:
     1:29:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapChecker$VerifyMappingFileHashResult validateProguardMapHash(java.lang.String):257:285 -> a
     1:1:void accept(java.lang.String,com.android.tools.r8.DiagnosticsHandler):196:196 -> accept
     1:1:void finished(com.android.tools.r8.DiagnosticsHandler):202:202 -> finished
-com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapChecker$VerifyMappingFileHashResult -> com.android.tools.r8.internal.LN$a$a:
+com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapChecker$VerifyMappingFileHashResult -> com.android.tools.r8.internal.MN$a$a:
     boolean error -> a
     java.lang.String message -> b
     boolean $assertionsDisabled -> c
@@ -98046,7 +98047,7 @@
     2:3:java.lang.String getMessage():248:249 -> b
     1:1:boolean isError():244:244 -> c
     1:1:boolean isOk():240:240 -> d
-com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId -> com.android.tools.r8.internal.MN:
+com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId -> com.android.tools.r8.internal.NN:
     java.lang.String id -> a
     java.lang.String hash -> b
     boolean $assertionsDisabled -> c
@@ -98055,7 +98056,7 @@
     2:6:void <init>(java.lang.String,java.lang.String):41:45 -> <init>
     1:1:java.lang.String getHash():55:55 -> a
     1:1:java.lang.String getId():50:50 -> b
-com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapIdBuilder -> com.android.tools.r8.internal.ON:
+com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapIdBuilder -> com.android.tools.r8.internal.PN:
     com.android.tools.r8.com.google.common.hash.Hasher hasher -> a
     1:3:void <init>():140:142 -> <init>
     1:1:java.lang.String lambda$getProviderOrDefault$0(com.android.tools.r8.MapIdEnvironment):147:147 -> a
@@ -98066,16 +98067,16 @@
     5:5:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId build(com.android.tools.r8.MapIdProvider):167 -> a
     6:7:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapId build(com.android.tools.r8.MapIdProvider):167:168 -> a
     1:1:com.android.tools.r8.MapIdProvider getProviderOrDefault(com.android.tools.r8.MapIdProvider):147:147 -> b
-com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapIdBuilder$1 -> com.android.tools.r8.internal.NN:
+com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapIdBuilder$1 -> com.android.tools.r8.internal.ON:
     java.lang.String val$hash -> a
     1:1:void <init>(com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapIdBuilder,java.lang.String):151:151 -> <init>
     1:1:java.lang.String getMapHash():154:154 -> getMapHash
-com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapWriter -> com.android.tools.r8.internal.PN:
+com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapWriter -> com.android.tools.r8.internal.QN:
     com.android.tools.r8.naming.ProguardMapSupplier this$0 -> a
     1:1:void <init>(com.android.tools.r8.naming.ProguardMapSupplier):172:172 -> <init>
     1:1:com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapWriter com.android.tools.r8.naming.ProguardMapSupplier$ProguardMapWriter.accept(java.lang.String):176:176 -> a
     1:1:com.android.tools.r8.utils.ChainableStringConsumer accept(java.lang.String):172 -> a
-com.android.tools.r8.naming.Range -> com.android.tools.r8.internal.XP:
+com.android.tools.r8.naming.Range -> com.android.tools.r8.internal.YP:
     int to -> b
     boolean isCardinal -> c
     int from -> a
@@ -98189,7 +98190,7 @@
     6:7:com.android.tools.r8.naming.ClassNamingForMapApplier$Builder classNamingBuilder(java.lang.String,java.lang.String,com.android.tools.r8.position.Position):59:60 -> a
     6:7:com.android.tools.r8.naming.ClassNaming$Builder classNamingBuilder(java.lang.String,java.lang.String,com.android.tools.r8.position.Position):40 -> a
     8:9:com.android.tools.r8.naming.SeedMapper build():73:74 -> a
-com.android.tools.r8.naming.SourceFileRewriter -> com.android.tools.r8.internal.KV:
+com.android.tools.r8.naming.SourceFileRewriter -> com.android.tools.r8.internal.LV:
     1:2:com.android.tools.r8.SourceFileProvider computeSourceFileProvider(com.android.tools.r8.SourceFileProvider,com.android.tools.r8.shaking.ProguardConfiguration,com.android.tools.r8.utils.InternalOptions):20:21 -> a
     3:3:com.android.tools.r8.SourceFileProvider com.android.tools.r8.naming.SourceFileRewriter.rewriteToDefaultSourceFile(com.android.tools.r8.graph.DexItemFactory):61:61 -> a
     3:3:com.android.tools.r8.SourceFileProvider computeSourceFileProvider(com.android.tools.r8.SourceFileProvider,com.android.tools.r8.shaking.ProguardConfiguration,com.android.tools.r8.utils.InternalOptions):21 -> a
@@ -98226,7 +98227,7 @@
     18:18:com.android.tools.r8.SourceFileProvider com.android.tools.r8.naming.SourceFileRewriter.rewriteToDefaultSourceFile(com.android.tools.r8.graph.DexItemFactory):61 -> a
     18:18:com.android.tools.r8.SourceFileProvider com.android.tools.r8.naming.SourceFileRewriter.computeNonCompatProvider(com.android.tools.r8.utils.InternalOptions):46 -> a
     18:18:com.android.tools.r8.SourceFileProvider computeSourceFileProvider(com.android.tools.r8.SourceFileProvider,com.android.tools.r8.shaking.ProguardConfiguration,com.android.tools.r8.utils.InternalOptions):26 -> a
-com.android.tools.r8.naming.SourceFileRewriter$1 -> com.android.tools.r8.internal.JV:
+com.android.tools.r8.naming.SourceFileRewriter$1 -> com.android.tools.r8.internal.KV:
     java.lang.String val$renaming -> a
     boolean val$allowDiscard -> b
     1:1:void <init>(java.lang.String,boolean):65:65 -> <init>
@@ -98309,7 +98310,7 @@
     boolean needsToComputeName() -> e
     boolean needsToRegisterReference() -> f
     1:1:com.android.tools.r8.naming.dexitembasedstring.FieldNameComputationInfo forFieldName():21:21 -> g
-com.android.tools.r8.naming.dexitembasedstring.NameComputationInfo -> com.android.tools.r8.internal.xG:
+com.android.tools.r8.naming.dexitembasedstring.NameComputationInfo -> com.android.tools.r8.internal.yG:
     1:1:void <init>():13:13 -> <init>
     com.android.tools.r8.naming.dexitembasedstring.ClassNameComputationInfo asClassNameComputationInfo() -> a
     1:2:com.android.tools.r8.graph.DexString computeNameFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.graph.DexDefinitionSupplier,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens):20:21 -> a
@@ -98327,7 +98328,7 @@
     boolean isRecordFieldNamesComputationInfo() -> d
     boolean needsToComputeName() -> e
     boolean needsToRegisterReference() -> f
-com.android.tools.r8.naming.dexitembasedstring.RecordFieldNamesComputationInfo -> com.android.tools.r8.internal.wQ:
+com.android.tools.r8.naming.dexitembasedstring.RecordFieldNamesComputationInfo -> com.android.tools.r8.internal.xQ:
     com.android.tools.r8.graph.DexField[] fields -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():38:38 -> <clinit>
@@ -98349,7 +98350,7 @@
     boolean isRecordFieldNamesComputationInfo() -> d
     boolean needsToComputeName() -> e
     boolean needsToRegisterReference() -> f
-com.android.tools.r8.naming.dexitembasedstring.RecordFieldNamesComputationInfo$MatchingRecordFieldNamesComputationInfo -> com.android.tools.r8.internal.uQ:
+com.android.tools.r8.naming.dexitembasedstring.RecordFieldNamesComputationInfo$MatchingRecordFieldNamesComputationInfo -> com.android.tools.r8.internal.vQ:
     1:1:void <init>(com.android.tools.r8.graph.DexField[]):70:70 -> <init>
     1:1:com.android.tools.r8.graph.DexString internalComputeNameFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexDefinitionSupplier,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.naming.NamingLens):79:79 -> a
     2:2:java.lang.String lambda$internalComputeNameFor$0(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.DexDefinitionSupplier,int):84:84 -> a
@@ -98361,7 +98362,7 @@
     6:10:com.android.tools.r8.graph.DexField com.android.tools.r8.naming.NamingLens.lookupField(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.DexItemFactory):91:91 -> a
     6:10:java.lang.String lambda$internalComputeNameFor$0(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.DexDefinitionSupplier,int):85 -> a
     11:14:java.lang.String lambda$internalComputeNameFor$0(com.android.tools.r8.naming.NamingLens,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.DexDefinitionSupplier,int):85:88 -> a
-com.android.tools.r8.naming.dexitembasedstring.RecordFieldNamesComputationInfo$MissMatchingRecordFieldNamesComputationInfo -> com.android.tools.r8.internal.vQ:
+com.android.tools.r8.naming.dexitembasedstring.RecordFieldNamesComputationInfo$MissMatchingRecordFieldNamesComputationInfo -> com.android.tools.r8.internal.wQ:
     java.lang.String[] fieldNames -> c
     1:1:void <init>(java.lang.String[],com.android.tools.r8.graph.DexField[],com.android.tools.r8.naming.dexitembasedstring.RecordFieldNamesComputationInfo$1):46:46 -> <init>
     2:3:void <init>(java.lang.String[],com.android.tools.r8.graph.DexField[]):52:53 -> <init>
@@ -98488,7 +98489,7 @@
     1:1:com.android.tools.r8.origin.Origin getOrigin():21:21 -> getOrigin
     1:1:com.android.tools.r8.position.Position getPosition():26:26 -> getPosition
     1:1:com.android.tools.r8.naming.mappinginformation.MappingInformationDiagnostics notAllowedCombination(com.android.tools.r8.naming.mappinginformation.MappingInformation,com.android.tools.r8.naming.mappinginformation.MappingInformation,int):98:98 -> notAllowedCombination
-com.android.tools.r8.naming.mappinginformation.OutlineCallsiteMappingInformation -> com.android.tools.r8.internal.lL:
+com.android.tools.r8.naming.mappinginformation.OutlineCallsiteMappingInformation -> com.android.tools.r8.internal.mL:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2IntSortedMap positions -> a
     com.android.tools.r8.naming.MapVersion SUPPORTED_VERSION -> b
     1:1:void <clinit>():17:17 -> <clinit>
@@ -98521,7 +98522,7 @@
     120:120:void lambda$deserialize$1(com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2IntSortedMap,java.util.Map$Entry):92:92 -> a
     com.android.tools.r8.naming.mappinginformation.OutlineCallsiteMappingInformation asOutlineCallsiteInformation() -> c
     1:9:java.lang.String serialize():35:43 -> i
-com.android.tools.r8.naming.mappinginformation.OutlineMappingInformation -> com.android.tools.r8.internal.nL:
+com.android.tools.r8.naming.mappinginformation.OutlineMappingInformation -> com.android.tools.r8.internal.oL:
     com.android.tools.r8.naming.MapVersion SUPPORTED_VERSION -> a
     1:1:void <clinit>():14:14 -> <clinit>
     1:1:void <init>():12:12 -> <init>
@@ -98530,7 +98531,7 @@
     1:1:void deserialize(com.android.tools.r8.naming.MapVersion,java.util.function.Consumer):44 -> a
     2:2:void deserialize(com.android.tools.r8.naming.MapVersion,java.util.function.Consumer):45:45 -> a
     1:3:java.lang.String serialize():24:26 -> i
-com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation -> com.android.tools.r8.internal.YT:
+com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation -> com.android.tools.r8.internal.ZT:
     java.util.List actions -> b
     java.util.List conditions -> a
     com.android.tools.r8.naming.MapVersion SUPPORTED_VERSION -> c
@@ -98732,18 +98733,18 @@
     1:9:java.lang.String serialize():57:65 -> i
     1:1:java.util.List getActions():47:47 -> j
     1:1:java.util.List getConditions():43:43 -> k
-com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$Builder -> com.android.tools.r8.internal.TT:
+com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$Builder -> com.android.tools.r8.internal.UT:
     java.util.List actions -> b
     java.util.List conditions -> a
     1:4:void <init>():112:115 -> <init>
     1:1:com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$Builder addCondition(com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$Condition):118:118 -> a
     2:2:com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$Builder addRewriteAction(com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$RewriteAction):123:123 -> a
     3:3:com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation build():128:128 -> a
-com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$Condition -> com.android.tools.r8.internal.UT:
+com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$Condition -> com.android.tools.r8.internal.VT:
     1:1:void <init>():132:132 -> <init>
     boolean evaluate(com.android.tools.r8.retrace.internal.RetraceStackTraceContextImpl) -> a
     com.android.tools.r8.com.google.gson.JsonPrimitive serialize() -> a
-com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$RemoveInnerFramesAction -> com.android.tools.r8.internal.VT:
+com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$RemoveInnerFramesAction -> com.android.tools.r8.internal.WT:
     int numberOfFrames -> b
     1:2:void <init>(int):240:241 -> <init>
     1:1:com.android.tools.r8.com.google.gson.JsonElement serialize():250:250 -> a
@@ -98760,13 +98761,13 @@
     509:509:com.android.tools.r8.com.google.gson.JsonElement serialize():250:250 -> a
     503:503:com.android.tools.r8.com.google.gson.JsonElement serialize():250:250 -> a
     510:510:void evaluate(com.android.tools.r8.retrace.internal.RetraceStackTraceCurrentEvaluationInformation$Builder):265:265 -> a
-com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$RewriteAction -> com.android.tools.r8.internal.WT:
+com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$RewriteAction -> com.android.tools.r8.internal.XT:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():203:203 -> <clinit>
     1:1:void <init>():203:203 -> <init>
     void evaluate(com.android.tools.r8.retrace.internal.RetraceStackTraceCurrentEvaluationInformation$Builder) -> a
     com.android.tools.r8.com.google.gson.JsonElement serialize() -> a
-com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$ThrowsCondition -> com.android.tools.r8.internal.XT:
+com.android.tools.r8.naming.mappinginformation.RewriteFrameMappingInformation$ThrowsCondition -> com.android.tools.r8.internal.YT:
     com.android.tools.r8.references.ClassReference classReference -> a
     1:2:void <init>(com.android.tools.r8.references.ClassReference):167:168 -> <init>
     1:1:com.android.tools.r8.com.google.gson.JsonPrimitive serialize():173:173 -> a
@@ -98938,10 +98939,10 @@
     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
-    6:6:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    6:6:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     6:6:void run(java.lang.Iterable,java.util.concurrent.ExecutorService):55 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    7:7:boolean com.android.tools.r8.graph.AppView.hasLiveness():667:667 -> a
+    7:7:boolean com.android.tools.r8.graph.AppView.hasLiveness():687:687 -> a
     7:7:void run(java.lang.Iterable,java.util.concurrent.ExecutorService):55 -> a
     8:17:void run(java.lang.Iterable,java.util.concurrent.ExecutorService):55:64 -> a
     18:18:void run(java.lang.Iterable,java.util.concurrent.ExecutorService):61:61 -> a
@@ -99063,7 +99064,7 @@
     3:3:void <init>():123:123 -> <init>
     1:1:void recordDefinitionForNonReboundFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.DexField):130:130 -> a
     2:3:com.android.tools.r8.optimize.FieldRebindingIdentityLens build(com.android.tools.r8.graph.DexItemFactory):137:138 -> a
-com.android.tools.r8.optimize.InvokeSingleTargetExtractor -> com.android.tools.r8.internal.Uu:
+com.android.tools.r8.optimize.InvokeSingleTargetExtractor -> com.android.tools.r8.internal.Vu:
     com.android.tools.r8.optimize.InvokeSingleTargetExtractor$InvokeKind kind -> e
     com.android.tools.r8.graph.DexMethod target -> f
     boolean $assertionsDisabled -> g
@@ -99096,7 +99097,7 @@
     1:1:void registerStaticFieldWrite(com.android.tools.r8.graph.DexField):98 -> g
     2:2:com.android.tools.r8.graph.DexMethod getTarget():39:39 -> g
     3:3:void registerInvokeVirtual(com.android.tools.r8.graph.DexMethod):53:53 -> g
-com.android.tools.r8.optimize.MemberRebindingAnalysis -> com.android.tools.r8.internal.dE:
+com.android.tools.r8.optimize.MemberRebindingAnalysis -> com.android.tools.r8.internal.eE:
     com.android.tools.r8.optimize.MemberRebindingLens$Builder lensBuilder -> d
     com.android.tools.r8.graph.AppView appView -> b
     com.android.tools.r8.utils.InternalOptions options -> c
@@ -99233,7 +99234,7 @@
     1:1:com.android.tools.r8.graph.MethodResolutionResult resolveMethodOnInterface(com.android.tools.r8.graph.DexMethod):251:251 -> c
     2:6:com.android.tools.r8.optimize.MemberRebindingLens run(java.util.concurrent.ExecutorService):482:486 -> c
     1:18:boolean verifyFieldAccessCollectionContainsAllNonReboundFieldReferences(java.util.concurrent.ExecutorService):491:508 -> d
-com.android.tools.r8.optimize.MemberRebindingAnalysis$1 -> com.android.tools.r8.internal.cE:
+com.android.tools.r8.optimize.MemberRebindingAnalysis$1 -> com.android.tools.r8.internal.dE:
     com.android.tools.r8.optimize.MemberRebindingAnalysis this$0 -> f
     java.util.Set val$nonReboundFieldReferences -> e
     1:1:void <init>(com.android.tools.r8.optimize.MemberRebindingAnalysis,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod,java.util.Set):520:520 -> <init>
@@ -99252,7 +99253,7 @@
     void registerInvokeVirtual(com.android.tools.r8.graph.DexMethod) -> g
     1:1:void registerStaticFieldWrite(com.android.tools.r8.graph.DexField):539:539 -> g
     1:4:void registerFieldReference(com.android.tools.r8.graph.DexField):543:546 -> i
-com.android.tools.r8.optimize.MemberRebindingIdentityLens -> com.android.tools.r8.internal.fE:
+com.android.tools.r8.optimize.MemberRebindingIdentityLens -> com.android.tools.r8.internal.gE:
     boolean $assertionsDisabled -> h
     java.util.Map nonReboundFieldReferenceToDefinitionMap -> f
     java.util.Map nonReboundMethodReferenceToDefinitionMap -> g
@@ -99299,7 +99300,7 @@
     com.android.tools.r8.graph.DexMethod getPreviousMethodSignature(com.android.tools.r8.graph.DexMethod) -> e
     boolean hasCodeRewritings() -> e
     1:1:boolean isContextFreeForMethods():141:141 -> g
-com.android.tools.r8.optimize.MemberRebindingIdentityLens$Builder -> com.android.tools.r8.internal.eE:
+com.android.tools.r8.optimize.MemberRebindingIdentityLens$Builder -> com.android.tools.r8.internal.fE:
     java.util.Map nonReboundFieldReferenceToDefinitionMap -> c
     com.android.tools.r8.graph.AppView appView -> a
     java.util.Map nonReboundMethodReferenceToDefinitionMap -> d
@@ -99325,7 +99326,7 @@
     18:18:void com.android.tools.r8.optimize.MemberRebindingIdentityLens$Builder.recordNonReboundMethodAccess(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):208:208 -> a
     18:18:void recordMethodAccess(com.android.tools.r8.graph.DexMethod):221 -> a
     19:22:com.android.tools.r8.optimize.MemberRebindingIdentityLens build():231:234 -> a
-com.android.tools.r8.optimize.MemberRebindingIdentityLensFactory -> com.android.tools.r8.internal.hE:
+com.android.tools.r8.optimize.MemberRebindingIdentityLensFactory -> com.android.tools.r8.internal.iE:
     1:19:com.android.tools.r8.optimize.MemberRebindingIdentityLens create(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):46:64 -> a
     20:20:com.android.tools.r8.optimize.MemberRebindingIdentityLens create(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.FieldAccessInfoCollection,com.android.tools.r8.graph.MethodAccessInfoCollection):71:71 -> a
     21:21:com.android.tools.r8.optimize.MemberRebindingIdentityLens$Builder com.android.tools.r8.optimize.MemberRebindingIdentityLens.builder(com.android.tools.r8.graph.AppView):44:44 -> a
@@ -99339,7 +99340,7 @@
     31:31:void lambda$initializeMemberAccessInfoCollectionsForMemberRebinding$0(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.FieldAccessInfoCollectionImpl,com.android.tools.r8.graph.MethodAccessInfoCollection$ConcurrentBuilder,java.util.Set,java.util.Set,com.android.tools.r8.graph.ProgramMethod):92:92 -> a
     32:32:void com.android.tools.r8.graph.UseRegistry.accept(com.android.tools.r8.graph.ProgramMethod):31:31 -> a
     32:32:void lambda$initializeMemberAccessInfoCollectionsForMemberRebinding$0(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.FieldAccessInfoCollectionImpl,com.android.tools.r8.graph.MethodAccessInfoCollection$ConcurrentBuilder,java.util.Set,java.util.Set,com.android.tools.r8.graph.ProgramMethod):99 -> a
-com.android.tools.r8.optimize.MemberRebindingIdentityLensFactory$NonReboundMemberReferencesRegistry -> com.android.tools.r8.internal.gE:
+com.android.tools.r8.optimize.MemberRebindingIdentityLensFactory$NonReboundMemberReferencesRegistry -> com.android.tools.r8.internal.hE:
     java.util.Set seenFieldReferences -> h
     java.util.Set seenMethodReferences -> i
     com.android.tools.r8.graph.MethodAccessInfoCollection$ConcurrentBuilder methodAccessInfoCollectionBuilder -> g
@@ -99373,7 +99374,7 @@
     1:1:void registerStaticFieldWrite(com.android.tools.r8.graph.DexField):143:143 -> g
     2:2:void registerInvokeVirtual(com.android.tools.r8.graph.DexMethod):204:204 -> g
     1:6:void registerFieldAccess(com.android.tools.r8.graph.DexField):147:152 -> i
-com.android.tools.r8.optimize.MemberRebindingLens -> com.android.tools.r8.internal.jE:
+com.android.tools.r8.optimize.MemberRebindingLens -> com.android.tools.r8.internal.kE:
     boolean $assertionsDisabled -> i
     com.android.tools.r8.graph.AppView appView -> f
     java.util.Map methodMaps -> g
@@ -99412,7 +99413,7 @@
     1:3:com.android.tools.r8.graph.proto.RewrittenPrototypeDescription lookupPrototypeChangesForMethodDefinition(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.GraphLens):89:91 -> d
     com.android.tools.r8.graph.DexMethod getPreviousMethodSignature(com.android.tools.r8.graph.DexMethod) -> e
     1:1:boolean isContextFreeForMethods():96:96 -> g
-com.android.tools.r8.optimize.MemberRebindingLens$Builder -> com.android.tools.r8.internal.iE:
+com.android.tools.r8.optimize.MemberRebindingLens$Builder -> com.android.tools.r8.internal.jE:
     java.util.Map methodMaps -> b
     java.util.Map nonReboundFieldReferenceToDefinitionMap -> c
     com.android.tools.r8.graph.AppView appView -> a
@@ -99427,7 +99428,7 @@
     11:11:void com.android.tools.r8.optimize.MemberRebindingLens$Builder.recordNonReboundFieldAccess(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.DexField):194:194 -> a
     11:11:void lambda$recordNonReboundFieldAccesses$1(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.DexField):189 -> a
     12:12:com.android.tools.r8.optimize.MemberRebindingLens build():198:198 -> a
-com.android.tools.r8.optimize.PublicizerLens -> com.android.tools.r8.internal.WP:
+com.android.tools.r8.optimize.PublicizerLens -> com.android.tools.r8.internal.XP:
     com.android.tools.r8.graph.AppView appView -> n
     boolean $assertionsDisabled -> p
     java.util.Set publicizedMethods -> o
@@ -99456,7 +99457,7 @@
     com.android.tools.r8.graph.GraphLens$FieldLookupResult internalDescribeLookupField(com.android.tools.r8.graph.GraphLens$FieldLookupResult) -> b
     boolean isLegitimateToHaveEmptyMappings() -> m
     1:1:com.android.tools.r8.optimize.PublicizerLens$PublicizedLensBuilder createBuilder():65:65 -> n
-com.android.tools.r8.optimize.PublicizerLens$PublicizedLensBuilder -> com.android.tools.r8.internal.VP:
+com.android.tools.r8.optimize.PublicizerLens$PublicizedLensBuilder -> com.android.tools.r8.internal.WP:
     java.util.Set publicizedMethods -> a
     1:1:void <init>(com.android.tools.r8.optimize.PublicizerLens$1):68:68 -> <init>
     2:2:void <init>():71:71 -> <init>
@@ -99514,11 +99515,11 @@
     72:89:void tearDownCodeScanner(com.android.tools.r8.ir.conversion.IRConverter,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):147:164 -> a
     90:92:void com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagator.populateParameterOptimizationInfo(com.android.tools.r8.ir.conversion.IRConverter,com.android.tools.r8.graph.ImmediateProgramSubtypingInfo,java.util.List,java.util.function.BiConsumer,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):214:216 -> a
     90:92:void tearDownCodeScanner(com.android.tools.r8.ir.conversion.IRConverter,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):164 -> a
-    93:93:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    93:93:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     93:93:void com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagator.populateParameterOptimizationInfo(com.android.tools.r8.ir.conversion.IRConverter,com.android.tools.r8.graph.ImmediateProgramSubtypingInfo,java.util.List,java.util.function.BiConsumer,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):216 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     93:93:void tearDownCodeScanner(com.android.tools.r8.ir.conversion.IRConverter,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):164 -> a
-    94:94:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    94:94:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     94:94:void com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagator.populateParameterOptimizationInfo(com.android.tools.r8.ir.conversion.IRConverter,com.android.tools.r8.graph.ImmediateProgramSubtypingInfo,java.util.List,java.util.function.BiConsumer,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):216 -> a
     94:94:void tearDownCodeScanner(com.android.tools.r8.ir.conversion.IRConverter,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):164 -> a
     95:115:void com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagator.populateParameterOptimizationInfo(com.android.tools.r8.ir.conversion.IRConverter,com.android.tools.r8.graph.ImmediateProgramSubtypingInfo,java.util.List,java.util.function.BiConsumer,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):216:236 -> a
@@ -99536,30 +99537,25 @@
     void recordFieldChange(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.DexField) -> a
     void recordMethodChange(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod) -> a
     1:1:com.android.tools.r8.graph.AppView access$000(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorApplicationFixer):39:39 -> a
-    2:14:void fixupApplication(java.util.Set,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):56:68 -> a
-    15:19:void com.android.tools.r8.utils.Timing.time(java.lang.String,com.android.tools.r8.utils.ThrowingAction):379:383 -> a
-    15:19:void fixupApplication(java.util.Set,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):68 -> a
-    20:22:void fixupApplication(java.util.Set,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):70:72 -> a
-    23:23:void com.android.tools.r8.utils.Timing.time(java.lang.String,com.android.tools.r8.utils.ThrowingAction):383:383 -> a
-    23:23:void fixupApplication(java.util.Set,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):68 -> a
-    24:24:void lambda$fixupFields$1(com.android.tools.r8.graph.DexEncodedField$Builder):84:84 -> a
-    25:32:void lambda$fixupMethods$4(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexEncodedMethod$Builder):106:113 -> a
-    33:33:boolean com.android.tools.r8.graph.proto.ArgumentInfoCollection.isArgumentRemoved(int):98:98 -> a
-    33:33:void lambda$fixupMethods$4(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexEncodedMethod$Builder):113 -> a
+    2:18:void fixupApplication(java.util.Set,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):56:72 -> a
+    19:19:void lambda$fixupFields$1(com.android.tools.r8.graph.DexEncodedField$Builder):84:84 -> a
+    20:27:void lambda$fixupMethods$4(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexEncodedMethod$Builder):106:113 -> a
+    28:28:boolean com.android.tools.r8.graph.proto.ArgumentInfoCollection.isArgumentRemoved(int):98:98 -> a
+    28:28:void lambda$fixupMethods$4(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexEncodedMethod$Builder):113 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    34:34:boolean com.android.tools.r8.graph.proto.ArgumentInfoCollection.isArgumentRemoved(int):98:98 -> a
-    34:34:void lambda$fixupMethods$4(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexEncodedMethod$Builder):113 -> a
-    35:37:void lambda$fixupMethods$4(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexEncodedMethod$Builder):114:116 -> a
-    38:38:void lambda$fixupMethods$3(com.android.tools.r8.graph.MethodAccessFlags):115:115 -> a
-    39:42:void com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorApplicationFixer.fixupOptimizationInfos(java.util.concurrent.ExecutorService):124:127 -> a
-    39:42:void lambda$fixupApplication$0(java.util.concurrent.ExecutorService):68 -> a
-    43:43:void com.android.tools.r8.ir.optimize.info.OptimizationFeedback.fixupOptimizationInfos(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService,com.android.tools.r8.ir.optimize.info.OptimizationFeedback$OptimizationInfoFixer):54:54 -> a
-    43:43:void com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorApplicationFixer.fixupOptimizationInfos(java.util.concurrent.ExecutorService):127 -> a
-    43:43:void lambda$fixupApplication$0(java.util.concurrent.ExecutorService):68 -> a
-    44:44:com.android.tools.r8.graph.DexField fixupFieldReference(com.android.tools.r8.graph.DexField):160:160 -> a
-    45:45:com.android.tools.r8.graph.DexMethod fixupMethodReference(com.android.tools.r8.graph.DexMethod):165:165 -> a
-    46:46:com.android.tools.r8.graph.DexType fixupType(com.android.tools.r8.graph.DexType):170:170 -> a
-    47:47:void recordClassChange(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType):190:190 -> a
+    29:29:boolean com.android.tools.r8.graph.proto.ArgumentInfoCollection.isArgumentRemoved(int):98:98 -> a
+    29:29:void lambda$fixupMethods$4(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexEncodedMethod$Builder):113 -> a
+    30:32:void lambda$fixupMethods$4(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexEncodedMethod$Builder):114:116 -> a
+    33:33:void lambda$fixupMethods$3(com.android.tools.r8.graph.MethodAccessFlags):115:115 -> a
+    34:37:void com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorApplicationFixer.fixupOptimizationInfos(java.util.concurrent.ExecutorService):124:127 -> a
+    34:37:void lambda$fixupApplication$0(java.util.concurrent.ExecutorService):68 -> a
+    38:38:void com.android.tools.r8.ir.optimize.info.OptimizationFeedback.fixupOptimizationInfos(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService,com.android.tools.r8.ir.optimize.info.OptimizationFeedback$OptimizationInfoFixer):54:54 -> a
+    38:38:void com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorApplicationFixer.fixupOptimizationInfos(java.util.concurrent.ExecutorService):127 -> a
+    38:38:void lambda$fixupApplication$0(java.util.concurrent.ExecutorService):68 -> a
+    39:39:com.android.tools.r8.graph.DexField fixupFieldReference(com.android.tools.r8.graph.DexField):160:160 -> a
+    40:40:com.android.tools.r8.graph.DexMethod fixupMethodReference(com.android.tools.r8.graph.DexMethod):165:165 -> a
+    41:41:com.android.tools.r8.graph.DexType fixupType(com.android.tools.r8.graph.DexType):170:170 -> a
+    42:42:void recordClassChange(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType):190:190 -> a
     com.android.tools.r8.graph.DexType mapClassType(com.android.tools.r8.graph.DexType) -> b
     1:1:com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens access$100(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorApplicationFixer):39:39 -> b
     2:3:void fixupClass(com.android.tools.r8.graph.DexProgramClass):76:77 -> b
@@ -99990,10 +99986,10 @@
     1:19:void enqueueMethodForReprocessing(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):55:73 -> a
     20:22:void enqueueAffectedCallees(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder):79:81 -> a
     23:33:void lambda$enqueueAffectedCallees$0(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod):84:94 -> a
-    34:34:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    34:34:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     34:34:void lambda$enqueueAffectedCallees$0(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod):94 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    35:35:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    35:35:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     35:35:void lambda$enqueueAffectedCallees$0(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod):94 -> a
     36:45:void lambda$enqueueAffectedCallees$0(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod):94:103 -> a
     46:46:boolean com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.MethodReprocessingCriteria.shouldReprocess(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.info.CallSiteOptimizationInfo) -> a
@@ -100004,10 +100000,10 @@
     48:58:boolean com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.MethodReprocessingCriteria.shouldReprocess(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.info.CallSiteOptimizationInfo):50:60 -> a
     48:58:void lambda$enqueueAffectedCallees$0(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod):103 -> a
     59:62:void lambda$enqueueAffectedCallees$0(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod):103:106 -> a
-    63:63:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    63:63:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     63:63:void lambda$enqueueAffectedCallees$0(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod):106 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    64:64:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    64:64:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     64:64:void lambda$enqueueAffectedCallees$0(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod):106 -> a
     65:65:void lambda$enqueueAffectedCallees$0(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.ProgramMethod):106:106 -> a
     66:69:void enqueueAffectedCallers(com.android.tools.r8.optimize.argumentpropagation.ArgumentPropagatorGraphLens,com.android.tools.r8.ir.conversion.PostMethodProcessor$Builder,java.util.concurrent.ExecutorService):120:123 -> a
@@ -100366,7 +100362,7 @@
     455:455:com.android.tools.r8.graph.proto.RewrittenPrototypeDescription selectInitArgumentTypeForInstanceInitializer(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.proto.RewrittenPrototypeDescription,com.android.tools.r8.utils.collections.DexMethodSignatureSet):804 -> a
     456:468:com.android.tools.r8.graph.proto.RewrittenPrototypeDescription selectInitArgumentTypeForInstanceInitializer(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.proto.RewrittenPrototypeDescription,com.android.tools.r8.utils.collections.DexMethodSignatureSet):805:817 -> a
     469:469:com.android.tools.r8.graph.proto.RewrittenPrototypeDescription selectInitArgumentTypeForInstanceInitializer(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.proto.RewrittenPrototypeDescription,com.android.tools.r8.utils.collections.DexMethodSignatureSet):814:814 -> a
-    470:470:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticItems.createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView):501:501 -> a
+    470:470:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticItems.createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView):493:493 -> a
     470:470:com.android.tools.r8.graph.proto.RewrittenPrototypeDescription selectInitArgumentTypeForInstanceInitializer(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.proto.RewrittenPrototypeDescription,com.android.tools.r8.utils.collections.DexMethodSignatureSet):814 -> a
     471:472:com.android.tools.r8.graph.proto.RewrittenPrototypeDescription selectInitArgumentTypeForInstanceInitializer(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.proto.RewrittenPrototypeDescription,com.android.tools.r8.utils.collections.DexMethodSignatureSet):818:819 -> a
     473:473:com.android.tools.r8.graph.proto.RewrittenPrototypeDescription com.android.tools.r8.graph.proto.RewrittenPrototypeDescription.withExtraParameters(com.android.tools.r8.ir.conversion.ExtraParameter[]):255:255 -> a
@@ -100991,7 +100987,7 @@
     boolean isReferenceParameter() -> p
     com.android.tools.r8.ir.analysis.type.DynamicType getDynamicType() -> q
     com.android.tools.r8.ir.analysis.type.Nullability getNullability() -> r
-com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodParameter -> com.android.tools.r8.internal.WE:
+com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodParameter -> com.android.tools.r8.internal.XE:
     int index -> b
     com.android.tools.r8.graph.DexMethod method -> a
     1:3:void <init>(com.android.tools.r8.graph.DexMethod,int):15:17 -> <init>
@@ -101010,11 +101006,11 @@
     93:93:java.lang.String toString():44:44 -> toString
     94:94:java.lang.String toString():44:44 -> toString
     95:95:java.lang.String toString():44:44 -> toString
-com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodParameterFactory -> com.android.tools.r8.internal.XE:
+com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodParameterFactory -> com.android.tools.r8.internal.YE:
     java.util.Map methodParameters -> a
     1:3:void <init>():12:14 -> <init>
     1:3:com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodParameter create(com.android.tools.r8.graph.ProgramMethod,int):17:17 -> a
-com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState -> com.android.tools.r8.internal.eF:
+com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState -> com.android.tools.r8.internal.fF:
     com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState mutableCopy() -> a
     com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState mutableJoin(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState,com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner) -> a
     com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState mutableJoin(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexMethodSignature,java.util.function.Function,com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner) -> a
@@ -101027,7 +101023,7 @@
     com.android.tools.r8.optimize.argumentpropagation.codescanner.ConcreteMonomorphicMethodStateOrBottom asMonomorphicOrBottom() -> h
     com.android.tools.r8.optimize.argumentpropagation.codescanner.ConcretePolymorphicMethodStateOrBottom asPolymorphicOrBottom() -> i
     com.android.tools.r8.optimize.argumentpropagation.codescanner.ConcretePolymorphicMethodState asPolymorphic() -> j
-com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodStateBase -> com.android.tools.r8.internal.fF:
+com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodStateBase -> com.android.tools.r8.internal.gF:
     1:1:void <init>():7:7 -> <init>
     com.android.tools.r8.optimize.argumentpropagation.codescanner.ConcreteMonomorphicMethodState asMonomorphic() -> b
     boolean isPolymorphic() -> c
@@ -101092,10 +101088,10 @@
     3:3:com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState get(com.android.tools.r8.graph.ProgramMethod):13 -> b
     4:4:com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodStateCollection.get(com.android.tools.r8.graph.ProgramMethod):96:96 -> b
     4:4:com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState get(com.android.tools.r8.graph.ProgramMethod):13 -> b
-com.android.tools.r8.optimize.argumentpropagation.codescanner.NonEmptyParameterState -> com.android.tools.r8.internal.HH:
+com.android.tools.r8.optimize.argumentpropagation.codescanner.NonEmptyParameterState -> com.android.tools.r8.internal.IH:
     1:1:void <init>():7:7 -> <init>
     com.android.tools.r8.optimize.argumentpropagation.codescanner.NonEmptyParameterState asNonEmpty() -> b
-com.android.tools.r8.optimize.argumentpropagation.codescanner.ParameterState -> com.android.tools.r8.internal.OL:
+com.android.tools.r8.optimize.argumentpropagation.codescanner.ParameterState -> com.android.tools.r8.internal.PL:
     1:1:void <init>():13:13 -> <init>
     com.android.tools.r8.optimize.argumentpropagation.codescanner.ConcreteParameterState asConcrete() -> a
     com.android.tools.r8.ir.analysis.value.AbstractValue getAbstractValue(com.android.tools.r8.graph.AppView) -> a
@@ -101105,7 +101101,7 @@
     boolean isConcrete() -> d
     boolean isUnknown() -> e
     com.android.tools.r8.optimize.argumentpropagation.codescanner.ParameterState mutableCopy() -> f
-com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner -> com.android.tools.r8.internal.sW:
+com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner -> com.android.tools.r8.internal.tW:
     com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner CLONER -> a
     com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner IDENTITY -> b
     1:14:void <clinit>():23:36 -> <clinit>
@@ -101114,11 +101110,11 @@
     com.android.tools.r8.optimize.argumentpropagation.codescanner.ParameterState mutableCopy(com.android.tools.r8.optimize.argumentpropagation.codescanner.ParameterState) -> a
     1:1:com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner getCloner():50:50 -> a
     1:1:com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner getIdentity():54:54 -> b
-com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner$1 -> com.android.tools.r8.internal.qW:
+com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner$1 -> com.android.tools.r8.internal.rW:
     1:1:void <init>():24:24 -> <init>
     1:1:com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState mutableCopy(com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState):27:27 -> a
     2:2:com.android.tools.r8.optimize.argumentpropagation.codescanner.ParameterState mutableCopy(com.android.tools.r8.optimize.argumentpropagation.codescanner.ParameterState):32:32 -> a
-com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner$2 -> com.android.tools.r8.internal.rW:
+com.android.tools.r8.optimize.argumentpropagation.codescanner.StateCloner$2 -> com.android.tools.r8.internal.sW:
     1:1:void <init>():37:37 -> <init>
     com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState mutableCopy(com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodState) -> a
     com.android.tools.r8.optimize.argumentpropagation.codescanner.ParameterState mutableCopy(com.android.tools.r8.optimize.argumentpropagation.codescanner.ParameterState) -> a
@@ -101151,11 +101147,11 @@
     6:7:void forEachSubClass(com.android.tools.r8.graph.DexProgramClass,java.util.function.Consumer):130:131 -> a
     8:8:void com.android.tools.r8.optimize.argumentpropagation.codescanner.VirtualRootMethodsAnalysis.promoteToFinalIfPossible(com.android.tools.r8.graph.DexProgramClass):211:211 -> a
     8:8:void forEachSubClass(com.android.tools.r8.graph.DexProgramClass,java.util.function.Consumer):132 -> a
-    9:9:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    9:9:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     9:9:void com.android.tools.r8.optimize.argumentpropagation.codescanner.VirtualRootMethodsAnalysis.promoteToFinalIfPossible(com.android.tools.r8.graph.DexProgramClass):211 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     9:9:void forEachSubClass(com.android.tools.r8.graph.DexProgramClass,java.util.function.Consumer):132 -> a
-    10:10:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    10:10:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     10:10:void com.android.tools.r8.optimize.argumentpropagation.codescanner.VirtualRootMethodsAnalysis.promoteToFinalIfPossible(com.android.tools.r8.graph.DexProgramClass):211 -> a
     10:10:void forEachSubClass(com.android.tools.r8.graph.DexProgramClass,java.util.function.Consumer):132 -> a
     11:15:void com.android.tools.r8.optimize.argumentpropagation.codescanner.VirtualRootMethodsAnalysis.promoteToFinalIfPossible(com.android.tools.r8.graph.DexProgramClass):211:215 -> a
@@ -101174,10 +101170,10 @@
     35:54:void lambda$prune$6(java.util.Map,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod):183:202 -> a
     55:57:void lambda$prune$4(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod):195:195 -> a
     58:58:void promoteToFinalIfPossible(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.optimize.argumentpropagation.codescanner.VirtualRootMethodsAnalysis$VirtualRootMethod):220:220 -> a
-    59:59:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    59:59:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     59:59:void promoteToFinalIfPossible(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.optimize.argumentpropagation.codescanner.VirtualRootMethodsAnalysis$VirtualRootMethod):220 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    60:60:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():506:506 -> a
+    60:60:com.android.tools.r8.utils.InternalOptions$TestingOptions com.android.tools.r8.graph.AppView.testing():526:526 -> a
     60:60:void promoteToFinalIfPossible(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.optimize.argumentpropagation.codescanner.VirtualRootMethodsAnalysis$VirtualRootMethod):220 -> a
     61:66:void promoteToFinalIfPossible(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.optimize.argumentpropagation.codescanner.VirtualRootMethodsAnalysis$VirtualRootMethod):220:225 -> a
     1:1:void lambda$prune$5(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod):204:204 -> b
@@ -101216,7 +101212,7 @@
     13:13:com.android.tools.r8.graph.ProgramMethod getSingleNonAbstractMethod():84:84 -> c
     1:1:boolean hasOverrides():95:95 -> d
     1:1:boolean isInterfaceMethodWithSiblings():101:101 -> e
-com.android.tools.r8.optimize.argumentpropagation.lenscoderewriter.NullCheckInserter -> com.android.tools.r8.internal.XH:
+com.android.tools.r8.optimize.argumentpropagation.lenscoderewriter.NullCheckInserter -> com.android.tools.r8.internal.YH:
     1:1:void <init>():32:32 -> <init>
     void insertNullCheckForInvokeReceiverIfNeeded(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.GraphLens$MethodLookupResult) -> a
     void processWorklist() -> a
@@ -101227,11 +101223,11 @@
     7:7:boolean lambda$create$0(com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):40:40 -> a
     8:8:boolean com.android.tools.r8.graph.GraphLens.isArgumentPropagatorGraphLens():0:0 -> a
     8:8:boolean lambda$create$0(com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):40 -> a
-com.android.tools.r8.optimize.argumentpropagation.lenscoderewriter.NullCheckInserter$EmptyNullCheckInserter -> com.android.tools.r8.internal.VH:
+com.android.tools.r8.optimize.argumentpropagation.lenscoderewriter.NullCheckInserter$EmptyNullCheckInserter -> com.android.tools.r8.internal.WH:
     1:1:void <init>():208:208 -> <init>
     void insertNullCheckForInvokeReceiverIfNeeded(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.GraphLens$MethodLookupResult) -> a
     void processWorklist() -> a
-com.android.tools.r8.optimize.argumentpropagation.lenscoderewriter.NullCheckInserter$NullCheckInserterImpl -> com.android.tools.r8.internal.WH:
+com.android.tools.r8.optimize.argumentpropagation.lenscoderewriter.NullCheckInserter$NullCheckInserterImpl -> com.android.tools.r8.internal.XH:
     com.android.tools.r8.graph.AppView appView -> a
     java.util.Map worklist -> d
     boolean $assertionsDisabled -> e
@@ -101397,7 +101393,7 @@
     2:2:void setPending():346 -> g
     3:4:void setPending():346:347 -> g
     1:2:void unsetPending():355:356 -> h
-com.android.tools.r8.optimize.argumentpropagation.propagation.InterfaceMethodArgumentPropagator -> com.android.tools.r8.internal.Vt:
+com.android.tools.r8.optimize.argumentpropagation.propagation.InterfaceMethodArgumentPropagator -> com.android.tools.r8.internal.Wt:
     boolean $assertionsDisabled -> i
     java.util.function.Consumer interfaceDispatchOutsideProgram -> h
     java.util.Map methodStatesToPropagate -> g
@@ -101453,7 +101449,7 @@
     6:6:com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodStateCollectionBySignature computeInterfaceState(com.android.tools.r8.graph.DexProgramClass):104 -> l
     7:7:com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodStateCollectionBySignature computeInterfaceState(com.android.tools.r8.graph.DexProgramClass):119:119 -> l
     1:1:boolean lambda$propagateInterfaceStateToClassHierarchy$2(com.android.tools.r8.graph.DexProgramClass):129:129 -> m
-com.android.tools.r8.optimize.argumentpropagation.propagation.MethodArgumentPropagator -> com.android.tools.r8.internal.DE:
+com.android.tools.r8.optimize.argumentpropagation.propagation.MethodArgumentPropagator -> com.android.tools.r8.internal.EE:
     com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodStateCollectionByReference methodStates -> f
     1:2:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ImmediateProgramSubtypingInfo,com.android.tools.r8.optimize.argumentpropagation.codescanner.MethodStateCollectionByReference):21:22 -> <init>
 com.android.tools.r8.optimize.argumentpropagation.propagation.VirtualDispatchMethodArgumentPropagator -> com.android.tools.r8.internal.l20:
@@ -101647,7 +101643,7 @@
     102:114:void analyzeArgumentUses(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode):70:82 -> a
     115:115:void analyzeArgumentUses(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode):81:81 -> a
     1:1:boolean verifyNoDelayedReprocessingCriteria():156:156 -> b
-com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.MethodReprocessingCriteria -> com.android.tools.r8.internal.cF:
+com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.MethodReprocessingCriteria -> com.android.tools.r8.internal.dF:
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceMap reproccesingCriteria -> a
     com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.MethodReprocessingCriteria ALWAYS_REPROCESS -> b
     boolean $assertionsDisabled -> c
@@ -101655,7 +101651,7 @@
     1:2:void <init>():23:24 -> <init>
     3:5:void <init>(com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceMap):28:30 -> <init>
     1:3:com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.ParameterReprocessingCriteria getParameterReprocessingCriteria(int):38:38 -> a
-com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.NonTrivialParameterReprocessingCriteria -> com.android.tools.r8.internal.OH:
+com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.NonTrivialParameterReprocessingCriteria -> com.android.tools.r8.internal.PH:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():24:24 -> <clinit>
     1:2:void <init>(boolean):26:27 -> <init>
@@ -101677,11 +101673,11 @@
     19:19:boolean shouldReprocess(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.info.ConcreteCallSiteOptimizationInfo,int,com.android.tools.r8.graph.DexType):41:41 -> a
     20:20:boolean com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.NonTrivialParameterReprocessingCriteria.shouldReprocessPrimitiveParameter(com.android.tools.r8.ir.optimize.info.ConcreteCallSiteOptimizationInfo,int):63:63 -> a
     20:20:boolean shouldReprocess(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.info.ConcreteCallSiteOptimizationInfo,int,com.android.tools.r8.graph.DexType):42 -> a
-com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.ParameterReprocessingCriteria -> com.android.tools.r8.internal.NL:
+com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.ParameterReprocessingCriteria -> com.android.tools.r8.internal.OL:
     1:1:void <init>():15:15 -> <init>
     boolean shouldReprocess(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.optimize.info.ConcreteCallSiteOptimizationInfo,int,com.android.tools.r8.graph.DexType) -> a
     boolean shouldReprocessDueToDynamicType() -> a
-com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.ParameterReprocessingCriteria$Builder -> com.android.tools.r8.internal.ML:
+com.android.tools.r8.optimize.argumentpropagation.reprocessingcriteria.ParameterReprocessingCriteria$Builder -> com.android.tools.r8.internal.NL:
     boolean reprocessDueToAbstractValue -> a
     boolean reprocessDueToDynamicType -> b
     boolean reprocessDueToNullability -> c
@@ -101857,7 +101853,7 @@
     com.android.tools.r8.optimize.argumentpropagation.utils.DepthFirstTopDownClassHierarchyTraversal$TraversalState SEEN -> b
     1:5:void <clinit>():30:34 -> <clinit>
     1:1:void <init>(java.lang.String,int):26:26 -> <init>
-com.android.tools.r8.optimize.argumentpropagation.utils.ParameterRemovalUtils -> com.android.tools.r8.internal.LL:
+com.android.tools.r8.optimize.argumentpropagation.utils.ParameterRemovalUtils -> com.android.tools.r8.internal.ML:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():13:13 -> <clinit>
     1:2:boolean canRemoveUnusedParametersFrom(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):17:18 -> a
@@ -101868,7 +101864,7 @@
     4:6:boolean canRemoveUnusedParametersFrom(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):19 -> a
     7:10:boolean canRemoveUnusedParametersFrom(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod):22:25 -> a
     11:22:boolean canRemoveUnusedParameter(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod,int):30:41 -> a
-com.android.tools.r8.optimize.argumentpropagation.utils.ProgramClassesBidirectedGraph -> com.android.tools.r8.internal.dN:
+com.android.tools.r8.optimize.argumentpropagation.utils.ProgramClassesBidirectedGraph -> com.android.tools.r8.internal.eN:
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.graph.ImmediateProgramSubtypingInfo immediateSubtypingInfo -> b
     1:3:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ImmediateProgramSubtypingInfo):20:22 -> <init>
@@ -102069,13 +102065,13 @@
     void onPrimaryOptimizationPassComplete() -> b
     void prepareForPrimaryOptimizationPass() -> c
     1:1:com.android.tools.r8.optimize.interfaces.analysis.EmptyOpenClosedInterfacesAnalysis getInstance():18:18 -> d
-com.android.tools.r8.optimize.interfaces.analysis.OpenClosedInterfacesAnalysis -> com.android.tools.r8.internal.NK:
+com.android.tools.r8.optimize.interfaces.analysis.OpenClosedInterfacesAnalysis -> com.android.tools.r8.internal.OK:
     1:1:void <init>():10:10 -> <init>
     void analyze(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.IRCode) -> a
     1:1:com.android.tools.r8.optimize.interfaces.analysis.EmptyOpenClosedInterfacesAnalysis empty():13:13 -> a
     void onPrimaryOptimizationPassComplete() -> b
     void prepareForPrimaryOptimizationPass() -> c
-com.android.tools.r8.optimize.interfaces.analysis.OpenClosedInterfacesAnalysisImpl -> com.android.tools.r8.internal.OK:
+com.android.tools.r8.optimize.interfaces.analysis.OpenClosedInterfacesAnalysisImpl -> com.android.tools.r8.internal.PK:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     com.android.tools.r8.graph.AppView appView -> a
     java.util.Set openInterfaces -> c
@@ -102144,7 +102140,7 @@
     com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection rewrittenWithLens(com.android.tools.r8.graph.GraphLens) -> a
     com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection withoutPrunedItems(com.android.tools.r8.graph.PrunedItems) -> a
     1:1:com.android.tools.r8.optimize.interfaces.collection.DefaultOpenClosedInterfacesCollection getInstance():20:20 -> b
-com.android.tools.r8.optimize.interfaces.collection.NonEmptyOpenClosedInterfacesCollection -> com.android.tools.r8.internal.GH:
+com.android.tools.r8.optimize.interfaces.collection.NonEmptyOpenClosedInterfacesCollection -> com.android.tools.r8.internal.HH:
     java.util.Set openInterfaceTypes -> b
     boolean $assertionsDisabled -> c
     1:1:void <clinit>():14:14 -> <clinit>
@@ -102155,7 +102151,7 @@
     7:7:com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection rewrittenWithLens(com.android.tools.r8.graph.GraphLens):33 -> a
     8:10:com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection rewrittenWithLens(com.android.tools.r8.graph.GraphLens):33:35 -> a
     11:20:com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection withoutPrunedItems(com.android.tools.r8.graph.PrunedItems):40:49 -> a
-com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection -> com.android.tools.r8.internal.PK:
+com.android.tools.r8.optimize.interfaces.collection.OpenClosedInterfacesCollection -> com.android.tools.r8.internal.QK:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():27:27 -> <clinit>
     1:1:void <init>():27:27 -> <init>
@@ -102169,7 +102165,7 @@
     1:1:com.android.tools.r8.ir.analysis.type.DynamicType lambda$isDefinitelyInstanceOfStaticType$0(com.android.tools.r8.ir.code.Value,com.android.tools.r8.graph.AppView):42:42 -> b
     2:2:com.android.tools.r8.ir.analysis.type.DynamicTypeWithUpperBound com.android.tools.r8.ir.code.Value.getDynamicType(com.android.tools.r8.graph.AppView):1098:1098 -> b
     2:2:com.android.tools.r8.ir.analysis.type.DynamicType lambda$isDefinitelyInstanceOfStaticType$0(com.android.tools.r8.ir.code.Value,com.android.tools.r8.graph.AppView):42 -> b
-com.android.tools.r8.optimize.proto.ProtoNormalizer -> com.android.tools.r8.internal.BP:
+com.android.tools.r8.optimize.proto.ProtoNormalizer -> com.android.tools.r8.internal.CP:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.utils.InternalOptions options -> c
@@ -102177,67 +102173,62 @@
     1:1:void <clinit>():44:44 -> <clinit>
     1:4:void <init>(com.android.tools.r8.graph.AppView):50:53 -> <init>
     1:1:void run(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):57:57 -> a
-    2:2:void com.android.tools.r8.utils.Timing.time(java.lang.String,com.android.tools.r8.utils.ThrowingAction):379:379 -> a
-    2:2:void run(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):57 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    4:6:void com.android.tools.r8.utils.Timing.time(java.lang.String,com.android.tools.r8.utils.ThrowingAction):381:383 -> a
-    4:6:void run(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):57 -> a
-    7:16:com.android.tools.r8.graph.DexEncodedMethod lambda$run$2(java.util.Map,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens$Builder,com.android.tools.r8.graph.DexEncodedMethod):76:85 -> a
-    17:17:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.DexProgramClass.getContextType():720:720 -> a
-    17:17:com.android.tools.r8.graph.DexMethod com.android.tools.r8.graph.DexMethodSignature.withHolder(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexItemFactory):66 -> a
-    17:17:com.android.tools.r8.graph.DexEncodedMethod lambda$run$2(java.util.Map,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens$Builder,com.android.tools.r8.graph.DexEncodedMethod):85 -> a
+    2:11:com.android.tools.r8.graph.DexEncodedMethod lambda$run$2(java.util.Map,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens$Builder,com.android.tools.r8.graph.DexEncodedMethod):76:85 -> a
+    12:12:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.DexProgramClass.getContextType():720:720 -> a
+    12:12:com.android.tools.r8.graph.DexMethod com.android.tools.r8.graph.DexMethodSignature.withHolder(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexItemFactory):66 -> a
+    12:12:com.android.tools.r8.graph.DexEncodedMethod lambda$run$2(java.util.Map,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens$Builder,com.android.tools.r8.graph.DexEncodedMethod):85 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
-    18:18:com.android.tools.r8.graph.DexMethod com.android.tools.r8.graph.DexMethodSignature.withHolder(com.android.tools.r8.graph.DexReference,com.android.tools.r8.graph.DexItemFactory):70:70 -> a
-    18:18:com.android.tools.r8.graph.DexMethod com.android.tools.r8.graph.DexMethodSignature.withHolder(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexItemFactory):66 -> a
-    18:18:com.android.tools.r8.graph.DexEncodedMethod lambda$run$2(java.util.Map,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens$Builder,com.android.tools.r8.graph.DexEncodedMethod):85 -> a
-    19:25:com.android.tools.r8.graph.DexEncodedMethod lambda$run$2(java.util.Map,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens$Builder,com.android.tools.r8.graph.DexEncodedMethod):87:93 -> a
-    26:29:void lambda$run$1(com.android.tools.r8.graph.proto.RewrittenPrototypeDescription,com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexEncodedMethod$Builder):96:99 -> a
-    30:77:com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState computeGlobalReservationState(java.util.concurrent.ExecutorService):115:162 -> a
-    78:93:void lambda$computeGlobalReservationState$4(java.util.Map,java.util.Set,com.android.tools.r8.graph.DexTypeList,java.util.Set):137:152 -> a
-    94:95:void com.android.tools.r8.optimize.proto.ProtoNormalizer.computeExtraReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Set,com.android.tools.r8.utils.collections.DexMethodSignatureSet):193:194 -> a
-    94:95:void lambda$computeGlobalReservationState$5(java.util.Set,com.android.tools.r8.utils.collections.DexMethodSignatureSet,com.android.tools.r8.graph.ProgramMethod):158 -> a
-    96:96:com.android.tools.r8.graph.DexMethodSignature lambda$computeNewInstanceInitializerSignatures$8(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.graph.DexMethodSignature):218:218 -> a
-    97:98:java.util.Map computeInstanceInitializerCollisions(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState):226:227 -> a
-    99:99:void com.android.tools.r8.graph.DexProgramClass.forEachProgramInstanceInitializer(java.util.function.Consumer):263:263 -> a
-    99:99:java.util.Map computeInstanceInitializerCollisions(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState):227 -> a
-    100:100:void com.android.tools.r8.graph.DexProgramClass.forEachProgramInstanceInitializer(java.util.function.Consumer):263:263 -> a
-    100:100:java.util.Map computeInstanceInitializerCollisions(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState):227 -> a
+    13:13:com.android.tools.r8.graph.DexMethod com.android.tools.r8.graph.DexMethodSignature.withHolder(com.android.tools.r8.graph.DexReference,com.android.tools.r8.graph.DexItemFactory):70:70 -> a
+    13:13:com.android.tools.r8.graph.DexMethod com.android.tools.r8.graph.DexMethodSignature.withHolder(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexItemFactory):66 -> a
+    13:13:com.android.tools.r8.graph.DexEncodedMethod lambda$run$2(java.util.Map,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens$Builder,com.android.tools.r8.graph.DexEncodedMethod):85 -> a
+    14:20:com.android.tools.r8.graph.DexEncodedMethod lambda$run$2(java.util.Map,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens$Builder,com.android.tools.r8.graph.DexEncodedMethod):87:93 -> a
+    21:24:void lambda$run$1(com.android.tools.r8.graph.proto.RewrittenPrototypeDescription,com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexEncodedMethod$Builder):96:99 -> a
+    25:72:com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState computeGlobalReservationState(java.util.concurrent.ExecutorService):115:162 -> a
+    73:88:void lambda$computeGlobalReservationState$4(java.util.Map,java.util.Set,com.android.tools.r8.graph.DexTypeList,java.util.Set):137:152 -> a
+    89:90:void com.android.tools.r8.optimize.proto.ProtoNormalizer.computeExtraReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Set,com.android.tools.r8.utils.collections.DexMethodSignatureSet):193:194 -> a
+    89:90:void lambda$computeGlobalReservationState$5(java.util.Set,com.android.tools.r8.utils.collections.DexMethodSignatureSet,com.android.tools.r8.graph.ProgramMethod):158 -> a
+    91:91:com.android.tools.r8.graph.DexMethodSignature lambda$computeNewInstanceInitializerSignatures$8(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.graph.DexMethodSignature):218:218 -> a
+    92:93:java.util.Map computeInstanceInitializerCollisions(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState):226:227 -> a
+    94:94:void com.android.tools.r8.graph.DexProgramClass.forEachProgramInstanceInitializer(java.util.function.Consumer):263:263 -> a
+    94:94:java.util.Map computeInstanceInitializerCollisions(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState):227 -> a
+    95:95:void com.android.tools.r8.graph.DexProgramClass.forEachProgramInstanceInitializer(java.util.function.Consumer):263:263 -> a
+    95:95:java.util.Map computeInstanceInitializerCollisions(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState):227 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    101:107:void lambda$computeInstanceInitializerCollisions$9(com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState,java.util.Map,com.android.tools.r8.graph.ProgramMethod):229:235 -> a
-    108:126:void resolveInstanceInitializerCollisions(java.util.Map):242:260 -> a
-    127:128:java.lang.Object com.android.tools.r8.utils.IterableUtils.min(java.lang.Iterable,java.util.Comparator):101:102 -> a
-    127:128:void resolveInstanceInitializerCollisions(java.util.Map):260 -> a
-    129:136:void resolveInstanceInitializerCollisions(java.util.Map):260:267 -> a
-    137:149:void resolveInstanceInitializerCollisions(java.util.Map):266:278 -> a
-    150:151:void lambda$resolveInstanceInitializerCollisions$10(com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.utils.collections.DexMethodSignatureSet):245:246 -> a
-    152:166:boolean com.android.tools.r8.optimize.proto.ProtoNormalizer.isUnoptimizable(com.android.tools.r8.graph.ProgramMethod):283:297 -> a
-    152:166:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):170 -> a
-    167:167:boolean com.android.tools.r8.optimize.proto.ProtoNormalizer.isUnoptimizable(com.android.tools.r8.graph.ProgramMethod):296:296 -> a
-    167:167:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):170 -> a
-    168:168:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):175:175 -> a
-    169:169:com.android.tools.r8.graph.DexTypeList com.android.tools.r8.graph.DexTypeList.getSorted():162:162 -> a
-    169:169:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):175 -> a
+    96:102:void lambda$computeInstanceInitializerCollisions$9(com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState,java.util.Map,com.android.tools.r8.graph.ProgramMethod):229:235 -> a
+    103:121:void resolveInstanceInitializerCollisions(java.util.Map):242:260 -> a
+    122:123:java.lang.Object com.android.tools.r8.utils.IterableUtils.min(java.lang.Iterable,java.util.Comparator):101:102 -> a
+    122:123:void resolveInstanceInitializerCollisions(java.util.Map):260 -> a
+    124:131:void resolveInstanceInitializerCollisions(java.util.Map):260:267 -> a
+    132:144:void resolveInstanceInitializerCollisions(java.util.Map):266:278 -> a
+    145:146:void lambda$resolveInstanceInitializerCollisions$10(com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.utils.collections.DexMethodSignatureSet):245:246 -> a
+    147:161:boolean com.android.tools.r8.optimize.proto.ProtoNormalizer.isUnoptimizable(com.android.tools.r8.graph.ProgramMethod):283:297 -> a
+    147:161:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):170 -> a
+    162:162:boolean com.android.tools.r8.optimize.proto.ProtoNormalizer.isUnoptimizable(com.android.tools.r8.graph.ProgramMethod):296:296 -> a
+    162:162:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):170 -> a
+    163:163:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):175:175 -> a
+    164:164:com.android.tools.r8.graph.DexTypeList com.android.tools.r8.graph.DexTypeList.getSorted():162:162 -> a
+    164:164:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):175 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    170:176:com.android.tools.r8.graph.DexTypeList com.android.tools.r8.graph.DexTypeList.getSorted():162:168 -> a
-    170:176:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):175 -> a
-    177:177:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):175:175 -> a
-    178:183:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):174:179 -> a
-    184:184:boolean com.android.tools.r8.utils.collections.DexMethodSignatureSet.add(com.android.tools.r8.graph.DexClassAndMethod):66:66 -> a
-    184:184:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):179 -> a
-    185:185:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):184:184 -> a
-    186:186:com.android.tools.r8.graph.DexTypeList com.android.tools.r8.graph.DexTypeList.getSorted():162:162 -> a
-    186:186:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):184 -> a
+    165:171:com.android.tools.r8.graph.DexTypeList com.android.tools.r8.graph.DexTypeList.getSorted():162:168 -> a
+    165:171:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):175 -> a
+    172:172:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):175:175 -> a
+    173:178:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):174:179 -> a
+    179:179:boolean com.android.tools.r8.utils.collections.DexMethodSignatureSet.add(com.android.tools.r8.graph.DexClassAndMethod):66:66 -> a
+    179:179:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):179 -> a
+    180:180:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):184:184 -> a
+    181:181:com.android.tools.r8.graph.DexTypeList com.android.tools.r8.graph.DexTypeList.getSorted():162:162 -> a
+    181:181:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):184 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    187:193:com.android.tools.r8.graph.DexTypeList com.android.tools.r8.graph.DexTypeList.getSorted():162:168 -> a
-    187:193:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):184 -> a
-    194:194:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):184:184 -> a
-    195:197:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):183:185 -> a
-    198:198:java.lang.Object com.android.tools.r8.com.google.common.collect.Iterables.getFirst(java.lang.Iterable,java.lang.Object):779:779 -> a
-    198:198:com.android.tools.r8.graph.DexMethodSignature lambda$computeNewInstanceInitializerSignatures$6(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.utils.collections.DexMethodSignatureSet):215 -> a
-    199:199:java.lang.Object com.android.tools.r8.com.google.common.collect.Iterators.getNext(java.util.Iterator,java.lang.Object):845:845 -> a
-    199:199:java.lang.Object com.android.tools.r8.com.google.common.collect.Iterables.getFirst(java.lang.Iterable,java.lang.Object):779 -> a
-    199:199:com.android.tools.r8.graph.DexMethodSignature lambda$computeNewInstanceInitializerSignatures$6(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.utils.collections.DexMethodSignatureSet):215 -> a
-    200:200:com.android.tools.r8.graph.DexMethodSignature lambda$computeNewInstanceInitializerSignatures$6(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.utils.collections.DexMethodSignatureSet):215:215 -> a
+    182:188:com.android.tools.r8.graph.DexTypeList com.android.tools.r8.graph.DexTypeList.getSorted():162:168 -> a
+    182:188:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):184 -> a
+    189:189:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):184:184 -> a
+    190:192:void computeReservationsFromMethod(com.android.tools.r8.graph.ProgramMethod,java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):183:185 -> a
+    193:193:java.lang.Object com.android.tools.r8.com.google.common.collect.Iterables.getFirst(java.lang.Iterable,java.lang.Object):779:779 -> a
+    193:193:com.android.tools.r8.graph.DexMethodSignature lambda$computeNewInstanceInitializerSignatures$6(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.utils.collections.DexMethodSignatureSet):215 -> a
+    194:194:java.lang.Object com.android.tools.r8.com.google.common.collect.Iterators.getNext(java.util.Iterator,java.lang.Object):845:845 -> a
+    194:194:java.lang.Object com.android.tools.r8.com.google.common.collect.Iterables.getFirst(java.lang.Iterable,java.lang.Object):779 -> a
+    194:194:com.android.tools.r8.graph.DexMethodSignature lambda$computeNewInstanceInitializerSignatures$6(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.utils.collections.DexMethodSignatureSet):215 -> a
+    195:195:com.android.tools.r8.graph.DexMethodSignature lambda$computeNewInstanceInitializerSignatures$6(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.utils.collections.DexMethodSignatureSet):215:215 -> a
     com.android.tools.r8.graph.DexMethodSignature lambda$computeNewInstanceInitializerSignatures$7(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.utils.collections.DexMethodSignatureSet) -> b
     1:1:void lambda$run$0(java.util.concurrent.ExecutorService):57:57 -> b
     2:2:void lambda$computeGlobalReservationState$3(java.util.Map,java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet,com.android.tools.r8.graph.ProgramMethod):128:128 -> b
@@ -102246,7 +102237,7 @@
     8:8:com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens$Builder com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens.builder(com.android.tools.r8.graph.AppView):40:40 -> c
     8:8:void run(java.util.concurrent.ExecutorService):67 -> c
     9:47:void run(java.util.concurrent.ExecutorService):68:106 -> c
-com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState -> com.android.tools.r8.internal.zP:
+com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState -> com.android.tools.r8.internal.AP:
     java.util.Map reservedParameters -> a
     com.android.tools.r8.utils.collections.DexMethodSignatureSet unoptimizableSignatures -> b
     1:3:void <init>(java.util.Map,com.android.tools.r8.utils.collections.DexMethodSignatureSet):315:317 -> <init>
@@ -102265,7 +102256,7 @@
     11:11:com.android.tools.r8.graph.DexTypeList getReservedParameters(com.android.tools.r8.graph.DexMethodSignature):340:340 -> a
     12:13:java.util.Map selectDeterministicTarget(java.util.Map):322:323 -> a
     14:22:void lambda$selectDeterministicTarget$0(java.util.Map,com.android.tools.r8.graph.DexTypeList,java.util.Set):325:333 -> a
-com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState -> com.android.tools.r8.internal.AP:
+com.android.tools.r8.optimize.proto.ProtoNormalizer$LocalReservationState -> com.android.tools.r8.internal.BP:
     com.android.tools.r8.utils.collections.MutableBidirectionalOneToOneMap newMethodSignatures -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():348:348 -> <clinit>
@@ -102286,7 +102277,7 @@
     12:31:com.android.tools.r8.graph.DexMethodSignature internalGetAndReserveNewMethodSignature(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState,boolean):380:399 -> a
     32:32:com.android.tools.r8.graph.DexMethodSignature getAndReserveNewMethodSignature(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState):365:365 -> a
     1:1:com.android.tools.r8.graph.DexMethodSignature getNewMethodSignature(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.optimize.proto.ProtoNormalizer$GlobalReservationState):357:357 -> b
-com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens -> com.android.tools.r8.internal.DP:
+com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens -> com.android.tools.r8.internal.EP:
     boolean $assertionsDisabled -> h
     com.android.tools.r8.utils.collections.BidirectionalOneToOneMap newMethodSignatures -> f
     java.util.Map prototypeChanges -> g
@@ -102321,7 +102312,7 @@
     7:9:com.android.tools.r8.graph.proto.RewrittenPrototypeDescription lookupPrototypeChangesForMethodDefinition(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.GraphLens):86:86 -> d
     1:1:com.android.tools.r8.graph.DexMethod getPreviousMethodSignature(com.android.tools.r8.graph.DexMethod):128:128 -> e
     1:1:boolean isContextFreeForMethods():92:92 -> g
-com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens$Builder -> com.android.tools.r8.internal.CP:
+com.android.tools.r8.optimize.proto.ProtoNormalizerGraphLens$Builder -> com.android.tools.r8.internal.DP:
     java.util.Map prototypeChanges -> c
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.utils.collections.MutableBidirectionalOneToOneMap newMethodSignatures -> b
@@ -103102,7 +103093,7 @@
     26:27:com.android.tools.r8.org.objectweb.asm.Handler removeRange(com.android.tools.r8.org.objectweb.asm.Handler,com.android.tools.r8.org.objectweb.asm.Label,com.android.tools.r8.org.objectweb.asm.Label):147:148 -> a
     28:29:void com.android.tools.r8.org.objectweb.asm.Handler.<init>(com.android.tools.r8.org.objectweb.asm.Handler,com.android.tools.r8.org.objectweb.asm.Label,com.android.tools.r8.org.objectweb.asm.Label):106:107 -> a
     28:29:com.android.tools.r8.org.objectweb.asm.Handler removeRange(com.android.tools.r8.org.objectweb.asm.Handler,com.android.tools.r8.org.objectweb.asm.Label,com.android.tools.r8.org.objectweb.asm.Label):148 -> a
-com.android.tools.r8.org.objectweb.asm.Label -> com.android.tools.r8.internal.GA:
+com.android.tools.r8.org.objectweb.asm.Label -> com.android.tools.r8.internal.HA:
     com.android.tools.r8.org.objectweb.asm.Frame frame -> k
     com.android.tools.r8.org.objectweb.asm.Edge outgoingEdges -> m
     int bytecodeOffset -> e
@@ -103139,7 +103130,7 @@
     623:623:java.lang.String toString():620:620 -> toString
     624:624:java.lang.String toString():620:620 -> toString
     621:621:java.lang.String toString():620:620 -> toString
-com.android.tools.r8.org.objectweb.asm.MethodTooLargeException -> com.android.tools.r8.internal.gF:
+com.android.tools.r8.org.objectweb.asm.MethodTooLargeException -> com.android.tools.r8.internal.hF:
     int codeSize -> e
     java.lang.String methodName -> c
     java.lang.String className -> b
@@ -103149,7 +103140,7 @@
     1:1:int getCodeSize():97:97 -> b
     1:1:java.lang.String getDescriptor():88:88 -> c
     1:1:java.lang.String getMethodName():79:79 -> d
-com.android.tools.r8.org.objectweb.asm.MethodVisitor -> com.android.tools.r8.internal.hF:
+com.android.tools.r8.org.objectweb.asm.MethodVisitor -> com.android.tools.r8.internal.iF:
     int api -> h
     com.android.tools.r8.org.objectweb.asm.MethodVisitor mv -> i
     1:1:void <init>(int):71:71 -> <init>
@@ -103202,7 +103193,7 @@
     9:10:void visitMaxs(int,int):772:773 -> c
     11:12:void visitEnd():782:783 -> c
     1:2:void visitVarInsn(int,int):358:359 -> d
-com.android.tools.r8.org.objectweb.asm.MethodWriter -> com.android.tools.r8.internal.iF:
+com.android.tools.r8.org.objectweb.asm.MethodWriter -> com.android.tools.r8.internal.jF:
     boolean hasSubroutines -> d0
     com.android.tools.r8.org.objectweb.asm.AnnotationWriter lastRuntimeInvisibleAnnotation -> I
     int nameIndex -> l
@@ -103414,7 +103405,7 @@
     107:107:void com.android.tools.r8.org.objectweb.asm.MethodWriter.putFrame():1914:1914 -> h
     107:107:void visitFrameEnd():1850 -> h
     108:111:void visitFrameEnd():1851:1854 -> h
-com.android.tools.r8.org.objectweb.asm.ModuleVisitor -> com.android.tools.r8.internal.EF:
+com.android.tools.r8.org.objectweb.asm.ModuleVisitor -> com.android.tools.r8.internal.FF:
     com.android.tools.r8.org.objectweb.asm.ModuleVisitor mv -> a
     1:1:void <init>(int):57:57 -> <init>
     2:10:void <init>(int,com.android.tools.r8.org.objectweb.asm.ModuleVisitor):68:76 -> <init>
@@ -103434,7 +103425,7 @@
     1:2:void visitPackage(java.lang.String):102:103 -> b
     3:4:void visitOpen(java.lang.String,int,java.lang.String[]):146:147 -> b
     1:2:void visitUse(java.lang.String):158:159 -> c
-com.android.tools.r8.org.objectweb.asm.ModuleWriter -> com.android.tools.r8.internal.FF:
+com.android.tools.r8.org.objectweb.asm.ModuleWriter -> com.android.tools.r8.internal.GF:
     com.android.tools.r8.org.objectweb.asm.ByteVector usesIndex -> m
     int providesCount -> n
     com.android.tools.r8.org.objectweb.asm.ByteVector opens -> k
@@ -103464,7 +103455,7 @@
     13:23:int computeAttributesSize():196:206 -> b
     1:2:void visitUse(java.lang.String):160:161 -> c
     3:3:int getAttributeCount():186:186 -> c
-com.android.tools.r8.org.objectweb.asm.Opcodes -> com.android.tools.r8.internal.MK:
+com.android.tools.r8.org.objectweb.asm.Opcodes -> com.android.tools.r8.internal.NK:
     java.lang.Integer FLOAT -> c
     java.lang.Integer DOUBLE -> d
     java.lang.Integer LONG -> e
@@ -103473,7 +103464,7 @@
     java.lang.Integer TOP -> a
     java.lang.Integer INTEGER -> b
     1:7:void <clinit>():392:398 -> <clinit>
-com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor -> com.android.tools.r8.internal.qQ:
+com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor -> com.android.tools.r8.internal.rQ:
     com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor delegate -> a
     1:1:void <init>(int):57:57 -> <init>
     2:10:void <init>(int,com.android.tools.r8.org.objectweb.asm.RecordComponentVisitor):68:76 -> <init>
@@ -103489,7 +103480,7 @@
     3:4:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int,com.android.tools.r8.org.objectweb.asm.TypePath,java.lang.String,boolean):126:127 -> a
     5:6:void visitAttribute(com.android.tools.r8.org.objectweb.asm.Attribute):138:139 -> a
     7:8:void visitEnd():148:149 -> a
-com.android.tools.r8.org.objectweb.asm.RecordComponentWriter -> com.android.tools.r8.internal.rQ:
+com.android.tools.r8.org.objectweb.asm.RecordComponentWriter -> com.android.tools.r8.internal.sQ:
     com.android.tools.r8.org.objectweb.asm.AnnotationWriter lastRuntimeVisibleTypeAnnotation -> h
     com.android.tools.r8.org.objectweb.asm.AnnotationWriter lastRuntimeInvisibleTypeAnnotation -> i
     com.android.tools.r8.org.objectweb.asm.AnnotationWriter lastRuntimeVisibleAnnotation -> f
@@ -103516,7 +103507,7 @@
     10:16:int com.android.tools.r8.org.objectweb.asm.Attribute.computeAttributesSize(com.android.tools.r8.org.objectweb.asm.SymbolTable,byte[],int,int,int):219:225 -> b
     10:16:int com.android.tools.r8.org.objectweb.asm.Attribute.computeAttributesSize(com.android.tools.r8.org.objectweb.asm.SymbolTable):191 -> b
     10:16:int computeRecordComponentInfoSize():169 -> b
-com.android.tools.r8.org.objectweb.asm.SymbolTable -> com.android.tools.r8.internal.YX:
+com.android.tools.r8.org.objectweb.asm.SymbolTable -> com.android.tools.r8.internal.ZX:
     com.android.tools.r8.org.objectweb.asm.ClassWriter classWriter -> a
     int typeCount -> k
     int bootstrapMethodCount -> i
@@ -103649,7 +103640,7 @@
     11:20:int com.android.tools.r8.org.objectweb.asm.SymbolTable.addTypeInternal(com.android.tools.r8.org.objectweb.asm.SymbolTable$Entry):1216:1225 -> e
     11:20:int addType(java.lang.String):1148 -> e
     1:1:com.android.tools.r8.org.objectweb.asm.ClassReader getSource():288:288 -> f
-com.android.tools.r8.org.objectweb.asm.SymbolTable$Entry -> com.android.tools.r8.internal.XX:
+com.android.tools.r8.org.objectweb.asm.SymbolTable$Entry -> com.android.tools.r8.internal.YX:
     long com.android.tools.r8.org.objectweb.asm.Symbol.data -> f
     int hashCode -> h
     int com.android.tools.r8.org.objectweb.asm.Symbol.info -> g
@@ -103762,7 +103753,7 @@
     1:1:int getTypeArgumentIndex():382:382 -> f
     1:1:int getTypeParameterBoundIndex():327:327 -> g
     1:1:int getTypeParameterIndex():315:315 -> h
-com.android.tools.r8.org.objectweb.asm.commons.JSRInlinerAdapter -> com.android.tools.r8.internal.Av:
+com.android.tools.r8.org.objectweb.asm.commons.JSRInlinerAdapter -> com.android.tools.r8.internal.Bv:
     java.util.BitSet mainSubroutineInsns -> F
     java.util.BitSet sharedSubroutineInsns -> H
     java.util.Map subroutinesInsns -> G
@@ -103888,7 +103879,7 @@
     142:144:void com.android.tools.r8.org.objectweb.asm.commons.JSRInlinerAdapter.emitCode():315:317 -> c
     142:144:void visitEnd():155 -> c
     145:146:void visitEnd():157:158 -> c
-com.android.tools.r8.org.objectweb.asm.commons.JSRInlinerAdapter$Instantiation -> com.android.tools.r8.internal.zv:
+com.android.tools.r8.org.objectweb.asm.commons.JSRInlinerAdapter$Instantiation -> com.android.tools.r8.internal.Av:
     java.util.Map clonedLabels -> d
     java.util.BitSet subroutineInsns -> c
     com.android.tools.r8.org.objectweb.asm.tree.LabelNode returnLabel -> e
@@ -103906,7 +103897,7 @@
     2:2:com.android.tools.r8.org.objectweb.asm.tree.LabelNode com.android.tools.r8.org.objectweb.asm.commons.JSRInlinerAdapter$Instantiation.get(java.lang.Object):558 -> get
     2:2:java.lang.Object get(java.lang.Object):427 -> get
     1:1:int hashCode():568:568 -> hashCode
-com.android.tools.r8.org.objectweb.asm.signature.SignatureReader -> com.android.tools.r8.internal.MU:
+com.android.tools.r8.org.objectweb.asm.signature.SignatureReader -> com.android.tools.r8.internal.NU:
     java.lang.String signatureValue -> a
     1:2:void <init>(java.lang.String):49:50 -> <init>
     1:17:void accept(com.android.tools.r8.org.objectweb.asm.signature.SignatureVisitor):64:80 -> a
@@ -103918,7 +103909,7 @@
     230:230:int parseType(java.lang.String,int,com.android.tools.r8.org.objectweb.asm.signature.SignatureVisitor):229:229 -> a
     231:241:int parseType(java.lang.String,int,com.android.tools.r8.org.objectweb.asm.signature.SignatureVisitor):196:206 -> a
     242:242:int parseType(java.lang.String,int,com.android.tools.r8.org.objectweb.asm.signature.SignatureVisitor):168:168 -> a
-com.android.tools.r8.org.objectweb.asm.signature.SignatureVisitor -> com.android.tools.r8.internal.NU:
+com.android.tools.r8.org.objectweb.asm.signature.SignatureVisitor -> com.android.tools.r8.internal.OU:
     1:1:void <init>(int):74:74 -> <init>
 com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode -> com.android.tools.r8.internal.w:
     java.util.List visibleTypeAnnotations -> b
@@ -104101,13 +104092,13 @@
     1:2:void accept(com.android.tools.r8.org.objectweb.asm.MethodVisitor):65:66 -> a
     3:3:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):71:71 -> a
     int getType() -> b
-com.android.tools.r8.org.objectweb.asm.tree.IntInsnNode -> com.android.tools.r8.internal.ut:
+com.android.tools.r8.org.objectweb.asm.tree.IntInsnNode -> com.android.tools.r8.internal.vt:
     int operand -> g
     1:2:void <init>(int,int):51:52 -> <init>
     1:2:void accept(com.android.tools.r8.org.objectweb.asm.MethodVisitor):71:72 -> a
     3:3:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):77:77 -> a
     int getType() -> b
-com.android.tools.r8.org.objectweb.asm.tree.InvokeDynamicInsnNode -> com.android.tools.r8.internal.Lu:
+com.android.tools.r8.org.objectweb.asm.tree.InvokeDynamicInsnNode -> com.android.tools.r8.internal.Mu:
     java.lang.String name -> g
     java.lang.String desc -> h
     com.android.tools.r8.org.objectweb.asm.Handle bsm -> i
@@ -104116,7 +104107,7 @@
     1:2:void accept(com.android.tools.r8.org.objectweb.asm.MethodVisitor):84:85 -> a
     3:3:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):90:90 -> a
     int getType() -> b
-com.android.tools.r8.org.objectweb.asm.tree.JumpInsnNode -> com.android.tools.r8.internal.iw:
+com.android.tools.r8.org.objectweb.asm.tree.JumpInsnNode -> com.android.tools.r8.internal.jw:
     com.android.tools.r8.org.objectweb.asm.tree.LabelNode label -> g
     1:2:void <init>(int,com.android.tools.r8.org.objectweb.asm.tree.LabelNode):57:58 -> <init>
     1:2:void accept(com.android.tools.r8.org.objectweb.asm.MethodVisitor):79:80 -> a
@@ -104125,7 +104116,7 @@
     4:4:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):85 -> a
     5:5:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):85:85 -> a
     int getType() -> b
-com.android.tools.r8.org.objectweb.asm.tree.LabelNode -> com.android.tools.r8.internal.HA:
+com.android.tools.r8.org.objectweb.asm.tree.LabelNode -> com.android.tools.r8.internal.IA:
     com.android.tools.r8.org.objectweb.asm.Label value -> g
     1:1:void <init>():40:40 -> <init>
     1:1:void accept(com.android.tools.r8.org.objectweb.asm.MethodVisitor):68:68 -> a
@@ -104133,13 +104124,13 @@
     int getType() -> b
     1:4:com.android.tools.r8.org.objectweb.asm.Label getLabel():60:63 -> c
     1:1:void resetLabel():77:77 -> d
-com.android.tools.r8.org.objectweb.asm.tree.LdcInsnNode -> com.android.tools.r8.internal.iB:
+com.android.tools.r8.org.objectweb.asm.tree.LdcInsnNode -> com.android.tools.r8.internal.jB:
     java.lang.Object cst -> g
     1:2:void <init>(java.lang.Object):64:65 -> <init>
     1:2:void accept(com.android.tools.r8.org.objectweb.asm.MethodVisitor):75:76 -> a
     3:3:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):81:81 -> a
     int getType() -> b
-com.android.tools.r8.org.objectweb.asm.tree.LineNumberNode -> com.android.tools.r8.internal.QB:
+com.android.tools.r8.org.objectweb.asm.tree.LineNumberNode -> com.android.tools.r8.internal.RB:
     com.android.tools.r8.org.objectweb.asm.tree.LabelNode start -> h
     int line -> g
     1:3:void <init>(int,com.android.tools.r8.org.objectweb.asm.tree.LabelNode):55:57 -> <init>
@@ -104149,14 +104140,14 @@
     3:3:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):72 -> a
     4:4:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):72:72 -> a
     int getType() -> b
-com.android.tools.r8.org.objectweb.asm.tree.LocalVariableAnnotationNode -> com.android.tools.r8.internal.HC:
+com.android.tools.r8.org.objectweb.asm.tree.LocalVariableAnnotationNode -> com.android.tools.r8.internal.IC:
     java.util.List start -> f
     java.util.List index -> h
     java.util.List end -> g
     1:4:void <init>(int,int,com.android.tools.r8.org.objectweb.asm.TypePath,com.android.tools.r8.org.objectweb.asm.tree.LabelNode[],com.android.tools.r8.org.objectweb.asm.tree.LabelNode[],int[],java.lang.String):116:119 -> <init>
     1:10:void accept(com.android.tools.r8.org.objectweb.asm.MethodVisitor,boolean):129:138 -> a
     11:11:void accept(com.android.tools.r8.org.objectweb.asm.MethodVisitor,boolean):137:137 -> a
-com.android.tools.r8.org.objectweb.asm.tree.LocalVariableNode -> com.android.tools.r8.internal.IC:
+com.android.tools.r8.org.objectweb.asm.tree.LocalVariableNode -> com.android.tools.r8.internal.JC:
     int index -> f
     java.lang.String name -> a
     java.lang.String signature -> c
@@ -104164,7 +104155,7 @@
     com.android.tools.r8.org.objectweb.asm.tree.LabelNode end -> e
     com.android.tools.r8.org.objectweb.asm.tree.LabelNode start -> d
     1:7:void <init>(java.lang.String,java.lang.String,java.lang.String,com.android.tools.r8.org.objectweb.asm.tree.LabelNode,com.android.tools.r8.org.objectweb.asm.tree.LabelNode,int):74:80 -> <init>
-com.android.tools.r8.org.objectweb.asm.tree.LookupSwitchInsnNode -> com.android.tools.r8.internal.nD:
+com.android.tools.r8.org.objectweb.asm.tree.LookupSwitchInsnNode -> com.android.tools.r8.internal.oD:
     com.android.tools.r8.org.objectweb.asm.tree.LabelNode dflt -> g
     java.util.List labels -> i
     java.util.List keys -> h
@@ -104178,7 +104169,7 @@
     14:16:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):89 -> a
     17:19:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):89:91 -> a
     int getType() -> b
-com.android.tools.r8.org.objectweb.asm.tree.MethodInsnNode -> com.android.tools.r8.internal.KE:
+com.android.tools.r8.org.objectweb.asm.tree.MethodInsnNode -> com.android.tools.r8.internal.LE:
     java.lang.String owner -> g
     java.lang.String desc -> i
     java.lang.String name -> h
@@ -104187,7 +104178,7 @@
     1:2:void accept(com.android.tools.r8.org.objectweb.asm.MethodVisitor):115:116 -> a
     3:3:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):121:121 -> a
     int getType() -> b
-com.android.tools.r8.org.objectweb.asm.tree.MethodNode -> com.android.tools.r8.internal.OE:
+com.android.tools.r8.org.objectweb.asm.tree.MethodNode -> com.android.tools.r8.internal.PE:
     java.util.List attrs -> r
     java.util.List invisibleTypeAnnotations -> q
     com.android.tools.r8.org.objectweb.asm.tree.InsnList instructions -> x
@@ -104289,13 +104280,13 @@
     6:6:void visitTypeInsn(int,java.lang.String):358:358 -> c
     7:8:void visitMaxs(int,int):517:518 -> c
     1:1:void visitVarInsn(int,int):353:353 -> d
-com.android.tools.r8.org.objectweb.asm.tree.MethodNode$1 -> com.android.tools.r8.internal.NE:
+com.android.tools.r8.org.objectweb.asm.tree.MethodNode$1 -> com.android.tools.r8.internal.OE:
     com.android.tools.r8.org.objectweb.asm.tree.MethodNode this$0 -> b
     1:1:void <init>(com.android.tools.r8.org.objectweb.asm.tree.MethodNode,int):251:251 -> <init>
     1:2:boolean add(java.lang.Object):254:255 -> add
-com.android.tools.r8.org.objectweb.asm.tree.ModuleExportNode -> com.android.tools.r8.internal.zF:
+com.android.tools.r8.org.objectweb.asm.tree.ModuleExportNode -> com.android.tools.r8.internal.AF:
     1:1:void <init>(java.lang.String,int,java.util.List):64:64 -> <init>
-com.android.tools.r8.org.objectweb.asm.tree.ModuleNode -> com.android.tools.r8.internal.AF:
+com.android.tools.r8.org.objectweb.asm.tree.ModuleNode -> com.android.tools.r8.internal.BF:
     java.util.List packages -> b
     java.util.List uses -> f
     java.util.List opens -> e
@@ -104311,24 +104302,24 @@
     1:4:void visitPackage(java.lang.String):140:143 -> b
     5:8:void visitOpen(java.lang.String,int,java.lang.String[]):164:167 -> b
     1:4:void visitUse(java.lang.String):172:175 -> c
-com.android.tools.r8.org.objectweb.asm.tree.ModuleOpenNode -> com.android.tools.r8.internal.BF:
+com.android.tools.r8.org.objectweb.asm.tree.ModuleOpenNode -> com.android.tools.r8.internal.CF:
     1:1:void <init>(java.lang.String,int,java.util.List):64:64 -> <init>
-com.android.tools.r8.org.objectweb.asm.tree.ModuleProvideNode -> com.android.tools.r8.internal.CF:
+com.android.tools.r8.org.objectweb.asm.tree.ModuleProvideNode -> com.android.tools.r8.internal.DF:
     1:1:void <init>(java.lang.String,java.util.List):53:53 -> <init>
-com.android.tools.r8.org.objectweb.asm.tree.ModuleRequireNode -> com.android.tools.r8.internal.DF:
+com.android.tools.r8.org.objectweb.asm.tree.ModuleRequireNode -> com.android.tools.r8.internal.EF:
     1:1:void <init>(java.lang.String,int,java.lang.String):59:59 -> <init>
-com.android.tools.r8.org.objectweb.asm.tree.MultiANewArrayInsnNode -> com.android.tools.r8.internal.OF:
+com.android.tools.r8.org.objectweb.asm.tree.MultiANewArrayInsnNode -> com.android.tools.r8.internal.PF:
     java.lang.String desc -> g
     int dims -> h
     1:3:void <init>(java.lang.String,int):54:56 -> <init>
     1:2:void accept(com.android.tools.r8.org.objectweb.asm.MethodVisitor):66:67 -> a
     3:3:com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode clone(java.util.Map):72:72 -> a
     int getType() -> b
-com.android.tools.r8.org.objectweb.asm.tree.ParameterNode -> com.android.tools.r8.internal.KL:
+com.android.tools.r8.org.objectweb.asm.tree.ParameterNode -> com.android.tools.r8.internal.LL:
     java.lang.String name -> a
     int access -> b
     1:3:void <init>(java.lang.String,int):55:57 -> <init>
-com.android.tools.r8.org.objectweb.asm.tree.RecordComponentNode -> com.android.tools.r8.internal.pQ:
+com.android.tools.r8.org.objectweb.asm.tree.RecordComponentNode -> com.android.tools.r8.internal.qQ:
     java.util.List visibleAnnotations -> b
     java.util.List attrs -> f
     java.util.List invisibleTypeAnnotations -> e
@@ -104339,7 +104330,7 @@
     1:5:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean):108:112 -> a
     6:10:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int,com.android.tools.r8.org.objectweb.asm.TypePath,java.lang.String,boolean):120:124 -> a
     11:11:void visitAttribute(com.android.tools.r8.org.objectweb.asm.Attribute):131:131 -> a
-com.android.tools.r8.org.objectweb.asm.tree.TableSwitchInsnNode -> com.android.tools.r8.internal.qY:
+com.android.tools.r8.org.objectweb.asm.tree.TableSwitchInsnNode -> com.android.tools.r8.internal.rY:
     com.android.tools.r8.org.objectweb.asm.tree.LabelNode dflt -> i
     int max -> h
     java.util.List labels -> j
@@ -104895,14 +104886,14 @@
     6:6:int com.android.tools.r8.org.objectweb.asm.tree.analysis.Frame.getStackSize():220:220 -> toString
     6:6:java.lang.String toString():747 -> toString
     7:9:java.lang.String toString():748:750 -> toString
-com.android.tools.r8.org.objectweb.asm.tree.analysis.Interpreter -> com.android.tools.r8.internal.xu:
+com.android.tools.r8.org.objectweb.asm.tree.analysis.Interpreter -> com.android.tools.r8.internal.yu:
     1:1:void <init>(int):61:61 -> <init>
     com.android.tools.r8.org.objectweb.asm.tree.analysis.Value binaryOperation(com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode,com.android.tools.r8.org.objectweb.asm.tree.analysis.Value,com.android.tools.r8.org.objectweb.asm.tree.analysis.Value) -> a
     com.android.tools.r8.org.objectweb.asm.tree.analysis.Value copyOperation(com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode,com.android.tools.r8.org.objectweb.asm.tree.analysis.Value) -> a
     com.android.tools.r8.org.objectweb.asm.tree.analysis.Value naryOperation(com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode,java.util.List) -> a
     com.android.tools.r8.org.objectweb.asm.tree.analysis.Value newOperation(com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode) -> a
     com.android.tools.r8.org.objectweb.asm.tree.analysis.Value unaryOperation(com.android.tools.r8.org.objectweb.asm.tree.AbstractInsnNode,com.android.tools.r8.org.objectweb.asm.tree.analysis.Value) -> b
-com.android.tools.r8.org.objectweb.asm.tree.analysis.Subroutine -> com.android.tools.r8.internal.HX:
+com.android.tools.r8.org.objectweb.asm.tree.analysis.Subroutine -> com.android.tools.r8.internal.IX:
     java.util.List callers -> c
     boolean[] localsUsed -> b
     com.android.tools.r8.org.objectweb.asm.tree.LabelNode start -> a
@@ -105862,7 +105853,7 @@
     117:117:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int,com.android.tools.r8.org.objectweb.asm.TypePath,java.lang.String,boolean):92:92 -> a
     118:118:void com.android.tools.r8.org.objectweb.asm.util.CheckRecordComponentAdapter.checkVisitEndNotCalled() -> a
     118:118:com.android.tools.r8.org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int,com.android.tools.r8.org.objectweb.asm.TypePath,java.lang.String,boolean):88 -> a
-com.android.tools.r8.org.objectweb.asm.util.Printer -> com.android.tools.r8.internal.YM:
+com.android.tools.r8.org.objectweb.asm.util.Printer -> com.android.tools.r8.internal.ZM:
     java.util.List text -> c
     java.lang.StringBuilder stringBuilder -> b
     java.lang.String[] TYPES -> e
@@ -105883,7 +105874,7 @@
     com.android.tools.r8.org.objectweb.asm.util.Printer visitTryCatchAnnotation(int,com.android.tools.r8.org.objectweb.asm.TypePath,java.lang.String,boolean) -> a
     1:23:void appendString(java.lang.StringBuilder,java.lang.String):1241:1263 -> a
     24:37:void appendString(java.lang.StringBuilder,java.lang.String):1253:1266 -> a
-com.android.tools.r8.org.objectweb.asm.util.Textifier -> com.android.tools.r8.internal.rY:
+com.android.tools.r8.org.objectweb.asm.util.Textifier -> com.android.tools.r8.internal.sY:
     java.lang.String tab2 -> g
     java.lang.String tab -> f
     java.lang.String ltab -> i
@@ -106769,7 +106760,7 @@
     4:4:com.android.tools.r8.graph.DexString lookupName(com.android.tools.r8.graph.DexMethod):127:127 -> a
     5:5:com.android.tools.r8.graph.DexString lookupName(com.android.tools.r8.graph.DexField):132:132 -> a
     boolean verifyRenamingConsistentWithResolution(com.android.tools.r8.graph.DexMethod) -> b
-com.android.tools.r8.repackaging.Repackaging -> com.android.tools.r8.internal.NS:
+com.android.tools.r8.repackaging.Repackaging -> com.android.tools.r8.internal.OS:
     com.android.tools.r8.shaking.ProguardConfiguration proguardConfiguration -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.repackaging.Repackaging$RepackagingConfiguration repackagingConfiguration -> c
@@ -106778,7 +106769,7 @@
     1:5:void <init>(com.android.tools.r8.graph.AppView):66:70 -> <init>
     1:3:com.android.tools.r8.repackaging.RepackagingLens run(com.android.tools.r8.graph.DirectMappedDexApplication$Builder,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):76:78 -> a
     4:40:boolean verifyIdentityRepackaging(com.android.tools.r8.graph.AppView):86:122 -> a
-    41:41:void com.android.tools.r8.graph.AppView.rewriteWithLensAndApplication(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication):748:748 -> a
+    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
@@ -106802,7 +106793,7 @@
     117:117:boolean lambda$run$0(java.util.Map$Entry):142:142 -> a
     118:146:void processClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramPackage,java.lang.String,com.android.tools.r8.com.google.common.collect.BiMap):272:300 -> a
     147:147:void processClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramPackage,java.lang.String,com.android.tools.r8.com.google.common.collect.BiMap):298:298 -> a
-com.android.tools.r8.repackaging.Repackaging$1 -> com.android.tools.r8.internal.IS:
+com.android.tools.r8.repackaging.Repackaging$1 -> com.android.tools.r8.internal.JS:
     boolean $assertionsDisabled -> f
     1:1:void <clinit>():87:87 -> <clinit>
     1:1:void <init>(com.android.tools.r8.graph.AppView):87:87 -> <init>
@@ -106810,10 +106801,10 @@
     2:2:void recordMethodChange(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):100:100 -> a
     3:3:void recordClassChange(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType):105:105 -> a
     com.android.tools.r8.graph.DexType mapClassType(com.android.tools.r8.graph.DexType) -> b
-com.android.tools.r8.repackaging.Repackaging$2 -> com.android.tools.r8.internal.JS:
+com.android.tools.r8.repackaging.Repackaging$2 -> com.android.tools.r8.internal.KS:
     1:1:void <init>(com.android.tools.r8.graph.AppView):109:109 -> <init>
     boolean isLegitimateToHaveEmptyMappings() -> m
-com.android.tools.r8.repackaging.Repackaging$DefaultRepackagingConfiguration -> com.android.tools.r8.internal.KS:
+com.android.tools.r8.repackaging.Repackaging$DefaultRepackagingConfiguration -> com.android.tools.r8.internal.LS:
     com.android.tools.r8.graph.DexItemFactory dexItemFactory -> b
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.naming.Minifier$MinificationPackageNamingStrategy packageMinificationStrategy -> e
@@ -106853,8 +106844,8 @@
     494:498: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):444 -> a
     499:499: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):445:445 -> a
     1:13:boolean mayHavePinnedPackagePrivateOrProtectedItem(com.android.tools.r8.graph.ProgramPackage):396:408 -> b
-com.android.tools.r8.repackaging.Repackaging$RepackagingConfiguration -> com.android.tools.r8.internal.LS:
-com.android.tools.r8.repackaging.Repackaging$RepackagingTreeFixer -> com.android.tools.r8.internal.MS:
+com.android.tools.r8.repackaging.Repackaging$RepackagingConfiguration -> com.android.tools.r8.internal.MS:
+com.android.tools.r8.repackaging.Repackaging$RepackagingTreeFixer -> com.android.tools.r8.internal.NS:
     com.android.tools.r8.repackaging.RepackagingLens$Builder lensBuilder -> g
     com.android.tools.r8.com.google.common.collect.BiMap mappings -> f
     boolean $assertionsDisabled -> h
@@ -106879,7 +106870,7 @@
     9:9:void com.android.tools.r8.repackaging.RepackagingLens$Builder.recordMove(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType):100:100 -> a
     9:9:void recordClassChange(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType):191 -> a
     1:1:com.android.tools.r8.graph.DexType mapClassType(com.android.tools.r8.graph.DexType):176:176 -> b
-com.android.tools.r8.repackaging.RepackagingAnnotationTracer -> com.android.tools.r8.internal.OS:
+com.android.tools.r8.repackaging.RepackagingAnnotationTracer -> com.android.tools.r8.internal.PS:
     com.android.tools.r8.repackaging.RepackagingUseRegistry registry -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():18:18 -> <clinit>
@@ -106906,7 +106897,7 @@
     112:112:boolean com.android.tools.r8.graph.DexMethodHandle.isMethodHandle():294:294 -> a
     112:112:void traceDexValue(com.android.tools.r8.graph.DexValue):90 -> a
     113:120:void traceDexValue(com.android.tools.r8.graph.DexValue):90:97 -> a
-com.android.tools.r8.repackaging.RepackagingConstraintGraph -> com.android.tools.r8.internal.QS:
+com.android.tools.r8.repackaging.RepackagingConstraintGraph -> com.android.tools.r8.internal.RS:
     com.android.tools.r8.repackaging.RepackagingConstraintGraph$Node libraryBoundaryNode -> e
     com.android.tools.r8.graph.ProgramPackage pkg -> b
     java.util.Map nodes -> c
@@ -106936,7 +106927,7 @@
     12:15:boolean com.android.tools.r8.graph.DexDefinition.isNotProgramDefinition(com.android.tools.r8.graph.AppView):142:145 -> b
     12:15:com.android.tools.r8.repackaging.RepackagingConstraintGraph$Node getNode(com.android.tools.r8.graph.DexDefinition):82 -> b
     16:22:com.android.tools.r8.repackaging.RepackagingConstraintGraph$Node getNode(com.android.tools.r8.graph.DexDefinition):83:89 -> b
-com.android.tools.r8.repackaging.RepackagingConstraintGraph$Node -> com.android.tools.r8.internal.PS:
+com.android.tools.r8.repackaging.RepackagingConstraintGraph$Node -> com.android.tools.r8.internal.QS:
     com.android.tools.r8.graph.DexDefinition definitionForDebugging -> a
     java.util.Set neighbors -> b
     1:1:void <init>(com.android.tools.r8.graph.DexDefinition):201:201 -> <init>
@@ -106949,7 +106940,7 @@
     219:219:java.lang.String toString():216:216 -> toString
     220:220:java.lang.String toString():216:216 -> toString
     217:217:java.lang.String toString():216:216 -> toString
-com.android.tools.r8.repackaging.RepackagingLens -> com.android.tools.r8.internal.SS:
+com.android.tools.r8.repackaging.RepackagingLens -> com.android.tools.r8.internal.TS:
     com.android.tools.r8.com.google.common.collect.BiMap newTypes -> n
     boolean $assertionsDisabled -> p
     java.util.Map packageRenamings -> o
@@ -106962,14 +106953,14 @@
     13:13:boolean isSimpleTypeRenamingOrEqual(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType):70:70 -> a
     14:20:boolean isSimpleTypeRenamingOrEqual(com.android.tools.r8.graph.DexMember,com.android.tools.r8.graph.DexMember):74:80 -> a
     21:21:boolean isSimpleTypeRenamingOrEqual(com.android.tools.r8.graph.DexMember,com.android.tools.r8.graph.DexMember):77:77 -> a
-com.android.tools.r8.repackaging.RepackagingLens$Builder -> com.android.tools.r8.internal.RS:
+com.android.tools.r8.repackaging.RepackagingLens$Builder -> com.android.tools.r8.internal.SS:
     com.android.tools.r8.com.google.common.collect.BiMap newTypes -> a
     com.android.tools.r8.utils.collections.MutableBidirectionalOneToOneMap newFieldSignatures -> b
     com.android.tools.r8.utils.collections.MutableBidirectionalOneToOneMap newMethodSignatures -> c
     boolean $assertionsDisabled -> d
     1:1:void <clinit>():83:83 -> <clinit>
     1:6:void <init>():83:88 -> <init>
-com.android.tools.r8.repackaging.RepackagingUseRegistry -> com.android.tools.r8.internal.TS:
+com.android.tools.r8.repackaging.RepackagingUseRegistry -> com.android.tools.r8.internal.US:
     com.android.tools.r8.graph.InitClassLens initClassLens -> h
     boolean $assertionsDisabled -> k
     com.android.tools.r8.repackaging.RepackagingConstraintGraph constraintGraph -> g
@@ -107369,11 +107360,11 @@
     1:1:com.android.tools.r8.references.ClassReference getHolderClass():82:82 -> getHolderClass
     1:1:java.lang.String getName():77:77 -> getName
     1:1:int hashCode():105:105 -> hashCode
-com.android.tools.r8.retrace.internal.MethodDefinition -> com.android.tools.r8.internal.JE:
+com.android.tools.r8.retrace.internal.MethodDefinition -> com.android.tools.r8.internal.KE:
     1:1:void <init>():13:13 -> <init>
     com.android.tools.r8.retrace.internal.MethodDefinition$FullMethodDefinition asFullMethodDefinition() -> a
     com.android.tools.r8.retrace.internal.MethodDefinition substituteHolder(com.android.tools.r8.references.ClassReference) -> a
-com.android.tools.r8.retrace.internal.MethodDefinition$BaseMethodDefinition -> com.android.tools.r8.internal.HE:
+com.android.tools.r8.retrace.internal.MethodDefinition$BaseMethodDefinition -> com.android.tools.r8.internal.IE:
     com.android.tools.r8.references.ClassReference classReference -> a
     java.lang.String name -> b
     1:1:void <init>(com.android.tools.r8.references.ClassReference,java.lang.String,com.android.tools.r8.retrace.internal.MethodDefinition$1):33:33 -> <init>
@@ -107385,7 +107376,7 @@
     1:1:com.android.tools.r8.references.ClassReference getHolderClass():45:45 -> getHolderClass
     1:1:java.lang.String getName():50:50 -> getName
     1:1:int hashCode():72:72 -> hashCode
-com.android.tools.r8.retrace.internal.MethodDefinition$FullMethodDefinition -> com.android.tools.r8.internal.IE:
+com.android.tools.r8.retrace.internal.MethodDefinition$FullMethodDefinition -> com.android.tools.r8.internal.JE:
     com.android.tools.r8.references.MethodReference methodReference -> a
     1:1:void <init>(com.android.tools.r8.references.MethodReference,com.android.tools.r8.retrace.internal.MethodDefinition$1):76:76 -> <init>
     2:3:void <init>(com.android.tools.r8.references.MethodReference):80:81 -> <init>
@@ -107399,9 +107390,9 @@
     1:1:com.android.tools.r8.references.ClassReference getHolderClass():86:86 -> getHolderClass
     1:1:java.lang.String getName():91:91 -> getName
     1:1:int hashCode():132:132 -> hashCode
-com.android.tools.r8.retrace.internal.RetraceAbortException -> com.android.tools.r8.internal.hT:
+com.android.tools.r8.retrace.internal.RetraceAbortException -> com.android.tools.r8.internal.iT:
     1:1:void <init>():7:7 -> <init>
-com.android.tools.r8.retrace.internal.RetraceClassResultImpl -> com.android.tools.r8.internal.kT:
+com.android.tools.r8.retrace.internal.RetraceClassResultImpl -> com.android.tools.r8.internal.lT:
     com.android.tools.r8.references.ClassReference obfuscatedReference -> a
     com.android.tools.r8.retrace.internal.RetracerImpl retracer -> c
     com.android.tools.r8.naming.ClassNamingForNameMapper mapper -> b
@@ -107475,9 +107466,9 @@
     7:7:com.android.tools.r8.retrace.internal.RetraceClassResultImpl$RetraceClassElementImpl com.android.tools.r8.retrace.internal.RetraceClassResultImpl.createElement():167:167 -> stream
     7:7:java.util.stream.Stream stream():157 -> stream
     8:8:java.util.stream.Stream stream():157:157 -> stream
-com.android.tools.r8.retrace.internal.RetraceClassResultImpl$ResultConstructor -> com.android.tools.r8.internal.iT:
+com.android.tools.r8.retrace.internal.RetraceClassResultImpl$ResultConstructor -> com.android.tools.r8.internal.jT:
     java.lang.Object create(com.android.tools.r8.retrace.internal.RetraceClassResultImpl,java.util.List,java.lang.Object,com.android.tools.r8.retrace.internal.RetracerImpl) -> a
-com.android.tools.r8.retrace.internal.RetraceClassResultImpl$RetraceClassElementImpl -> com.android.tools.r8.internal.jT:
+com.android.tools.r8.retrace.internal.RetraceClassResultImpl$RetraceClassElementImpl -> com.android.tools.r8.internal.kT:
     com.android.tools.r8.retrace.internal.RetraceClassResultImpl classResult -> a
     com.android.tools.r8.naming.ClassNamingForNameMapper mapper -> c
     com.android.tools.r8.retrace.internal.RetracedClassReferenceImpl classReference -> b
@@ -107540,7 +107531,7 @@
     2:2:com.android.tools.r8.retrace.RetraceMethodResult lookupMethod(java.lang.String):182 -> lookupMethod
     3:3:com.android.tools.r8.retrace.internal.RetraceMethodResultImpl com.android.tools.r8.retrace.internal.RetraceClassResultImpl$RetraceClassElementImpl.lookupMethod(java.lang.String):253:253 -> lookupMethod
     3:3:com.android.tools.r8.retrace.RetraceMethodResult lookupMethod(java.lang.String):182 -> lookupMethod
-com.android.tools.r8.retrace.internal.RetraceFieldResultImpl -> com.android.tools.r8.internal.mT:
+com.android.tools.r8.retrace.internal.RetraceFieldResultImpl -> com.android.tools.r8.internal.nT:
     java.util.List memberNamings -> a
     com.android.tools.r8.retrace.internal.FieldDefinition fieldDefinition -> b
     com.android.tools.r8.retrace.Retracer retracer -> c
@@ -107564,7 +107555,7 @@
     1:8:boolean isAmbiguous():85:92 -> isAmbiguous
     1:1:boolean isEmpty():97:97 -> isEmpty
     1:2:java.util.stream.Stream stream():43:44 -> stream
-com.android.tools.r8.retrace.internal.RetraceFieldResultImpl$ElementImpl -> com.android.tools.r8.internal.lT:
+com.android.tools.r8.retrace.internal.RetraceFieldResultImpl$ElementImpl -> com.android.tools.r8.internal.mT:
     com.android.tools.r8.retrace.internal.RetraceClassResultImpl$RetraceClassElementImpl classElement -> c
     com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl fieldReference -> a
     com.android.tools.r8.retrace.internal.RetraceFieldResultImpl retraceFieldResult -> b
@@ -107579,7 +107570,7 @@
     1:1:com.android.tools.r8.retrace.RetracedSourceFile getSourceFile():142:142 -> getSourceFile
     1:1:boolean isCompilerSynthesized():117:117 -> isCompilerSynthesized
     1:1:boolean isUnknown():122:122 -> isUnknown
-com.android.tools.r8.retrace.internal.RetraceFrameResultImpl -> com.android.tools.r8.internal.pT:
+com.android.tools.r8.retrace.internal.RetraceFrameResultImpl -> com.android.tools.r8.internal.qT:
     com.android.tools.r8.retrace.internal.MethodDefinition methodDefinition -> a
     com.android.tools.r8.utils.OptionalBool isAmbiguousCache -> f
     com.android.tools.r8.retrace.internal.RetracerImpl retracer -> d
@@ -107663,7 +107654,7 @@
     20:34:boolean isAmbiguous():72:86 -> isAmbiguous
     1:1:boolean isEmpty():224:224 -> isEmpty
     1:2:java.util.stream.Stream stream():101:102 -> stream
-com.android.tools.r8.retrace.internal.RetraceFrameResultImpl$ElementImpl -> com.android.tools.r8.internal.nT:
+com.android.tools.r8.retrace.internal.RetraceFrameResultImpl$ElementImpl -> com.android.tools.r8.internal.oT:
     com.android.tools.r8.retrace.internal.RetracedMethodReferenceImpl methodReference -> a
     com.android.tools.r8.retrace.internal.RetraceClassResultImpl$RetraceClassElementImpl classElement -> c
     com.android.tools.r8.retrace.internal.RetraceFrameResultImpl retraceFrameResult -> b
@@ -107731,7 +107722,7 @@
     1:1:boolean isUnknown():275:275 -> isUnknown
     1:3:java.util.stream.Stream stream():303:305 -> stream
     1:3:java.util.stream.Stream streamRewritten(com.android.tools.r8.retrace.RetraceStackTraceContext):344:346 -> streamRewritten
-com.android.tools.r8.retrace.internal.RetraceFrameResultImpl$MappedRangeForFrame -> com.android.tools.r8.internal.oT:
+com.android.tools.r8.retrace.internal.RetraceFrameResultImpl$MappedRangeForFrame -> com.android.tools.r8.internal.pT:
     com.android.tools.r8.naming.ClassNamingForNameMapper$MappedRange mappedRange -> a
     java.util.OptionalInt position -> b
     1:3:void <init>(com.android.tools.r8.naming.ClassNamingForNameMapper$MappedRange,java.util.OptionalInt):394:396 -> <init>
@@ -107754,7 +107745,7 @@
     1:1:com.android.tools.r8.naming.ClassNamingForNameMapper$MappedRange com.android.tools.r8.retrace.internal.RetraceFrameResultImpl$MappedRangeForFrame.getMappedRange():400:400 -> c
     1:1:com.android.tools.r8.naming.ClassNamingForNameMapper$MappedRange access$400(com.android.tools.r8.retrace.internal.RetraceFrameResultImpl$MappedRangeForFrame):389 -> c
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-com.android.tools.r8.retrace.internal.RetraceMethodResultImpl -> com.android.tools.r8.internal.rT:
+com.android.tools.r8.retrace.internal.RetraceMethodResultImpl -> com.android.tools.r8.internal.sT:
     com.android.tools.r8.retrace.internal.MethodDefinition methodDefinition -> a
     com.android.tools.r8.retrace.internal.RetraceClassResultImpl classResult -> b
     com.android.tools.r8.retrace.internal.RetracerImpl retracer -> d
@@ -107792,7 +107783,7 @@
     1:1:boolean isEmpty():69:69 -> isEmpty
     1:1:com.android.tools.r8.retrace.RetraceFrameResult narrowByPosition(com.android.tools.r8.retrace.RetraceStackTraceContext,java.util.OptionalInt):27:27 -> narrowByPosition
     1:2:java.util.stream.Stream stream():128:129 -> stream
-com.android.tools.r8.retrace.internal.RetraceMethodResultImpl$ElementImpl -> com.android.tools.r8.internal.qT:
+com.android.tools.r8.retrace.internal.RetraceMethodResultImpl$ElementImpl -> com.android.tools.r8.internal.rT:
     com.android.tools.r8.retrace.internal.RetracedMethodReferenceImpl methodReference -> a
     com.android.tools.r8.retrace.internal.RetraceClassResultImpl$RetraceClassElementImpl classElement -> c
     com.android.tools.r8.retrace.internal.RetraceMethodResultImpl retraceMethodResult -> b
@@ -107806,7 +107797,7 @@
     1:3:com.android.tools.r8.retrace.RetracedSourceFile getSourceFile():200:200 -> getSourceFile
     1:1:boolean isCompilerSynthesized():175:175 -> isCompilerSynthesized
     1:1:boolean isUnknown():180:180 -> isUnknown
-com.android.tools.r8.retrace.internal.RetraceStackTraceContextImpl -> com.android.tools.r8.internal.tT:
+com.android.tools.r8.retrace.internal.RetraceStackTraceContextImpl -> com.android.tools.r8.internal.uT:
     com.android.tools.r8.references.ClassReference thrownException -> a
     java.util.OptionalInt rewritePosition -> b
     1:1:void <init>(com.android.tools.r8.references.ClassReference,java.util.OptionalInt,com.android.tools.r8.retrace.internal.RetraceStackTraceContextImpl$1):16:16 -> <init>
@@ -107817,7 +107808,7 @@
     1:1:int getRewritePosition():56:56 -> b
     1:1:com.android.tools.r8.references.ClassReference getThrownException():28:28 -> c
     1:1:boolean hasRewritePosition():52:52 -> d
-com.android.tools.r8.retrace.internal.RetraceStackTraceContextImpl$Builder -> com.android.tools.r8.internal.sT:
+com.android.tools.r8.retrace.internal.RetraceStackTraceContextImpl$Builder -> com.android.tools.r8.internal.tT:
     com.android.tools.r8.references.ClassReference thrownException -> a
     java.util.OptionalInt rewritePosition -> b
     1:1:void <init>():81:81 -> <init>
@@ -107827,7 +107818,7 @@
     3:3:com.android.tools.r8.retrace.internal.RetraceStackTraceContextImpl build():99:99 -> a
     1:1:com.android.tools.r8.retrace.internal.RetraceStackTraceContextImpl$Builder clearRewritePosition():94:94 -> b
     1:1:com.android.tools.r8.retrace.internal.RetraceStackTraceContextImpl$Builder create():103:103 -> c
-com.android.tools.r8.retrace.internal.RetraceStackTraceCurrentEvaluationInformation -> com.android.tools.r8.internal.vT:
+com.android.tools.r8.retrace.internal.RetraceStackTraceCurrentEvaluationInformation -> com.android.tools.r8.internal.wT:
     com.android.tools.r8.retrace.internal.RetraceStackTraceCurrentEvaluationInformation EMPTY -> b
     int removeInnerFramesCount -> a
     1:1:void <clinit>():9:9 -> <clinit>
@@ -107835,12 +107826,12 @@
     2:3:void <init>(int):14:15 -> <init>
     1:1:com.android.tools.r8.retrace.internal.RetraceStackTraceCurrentEvaluationInformation empty():23:23 -> a
     1:1:int getRemoveInnerFramesCount():19:19 -> b
-com.android.tools.r8.retrace.internal.RetraceStackTraceCurrentEvaluationInformation$Builder -> com.android.tools.r8.internal.uT:
+com.android.tools.r8.retrace.internal.RetraceStackTraceCurrentEvaluationInformation$Builder -> com.android.tools.r8.internal.vT:
     int removeInnerFramesCount -> a
     1:1:void <init>():30:30 -> <init>
     1:1:com.android.tools.r8.retrace.internal.RetraceStackTraceCurrentEvaluationInformation$Builder incrementRemoveInnerFramesCount(int):36:36 -> a
     2:2:com.android.tools.r8.retrace.internal.RetraceStackTraceCurrentEvaluationInformation build():50:50 -> a
-com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl -> com.android.tools.r8.internal.xT:
+com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl -> com.android.tools.r8.internal.yT:
     java.util.stream.Stream resultStream -> a
     java.util.function.Supplier resultContext -> b
     1:1:void <init>(java.util.stream.Stream,java.util.function.Supplier,com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl$1):14:14 -> <init>
@@ -107853,13 +107844,13 @@
     4:4:com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl$Builder builder():38 -> a
     1:1:com.android.tools.r8.retrace.RetraceStackTraceContext getResultContext():34:34 -> getResultContext
     1:1:java.util.stream.Stream stream():29:29 -> stream
-com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl$Builder -> com.android.tools.r8.internal.wT:
+com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl$Builder -> com.android.tools.r8.internal.xT:
     java.util.stream.Stream resultStream -> a
     java.util.function.Supplier resultContext -> b
     1:1:void <init>():46:46 -> <init>
     1:1:com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl build():60:60 -> a
     1:1:com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl$Builder create():64:64 -> b
-com.android.tools.r8.retrace.internal.RetraceThrownExceptionResultImpl -> com.android.tools.r8.internal.zT:
+com.android.tools.r8.retrace.internal.RetraceThrownExceptionResultImpl -> com.android.tools.r8.internal.AT:
     com.android.tools.r8.references.ClassReference obfuscatedReference -> a
     com.android.tools.r8.naming.ClassNamingForNameMapper mapper -> b
     1:4:void <init>(com.android.tools.r8.retrace.internal.RetraceStackTraceContextImpl,com.android.tools.r8.references.ClassReference,com.android.tools.r8.naming.ClassNamingForNameMapper):26:29 -> <init>
@@ -107869,7 +107860,7 @@
     7:7:com.android.tools.r8.retrace.RetraceThrownExceptionElement com.android.tools.r8.retrace.internal.RetraceThrownExceptionResultImpl.createElement():45:45 -> stream
     7:7:java.util.stream.Stream stream():34 -> stream
     8:8:java.util.stream.Stream stream():34:34 -> stream
-com.android.tools.r8.retrace.internal.RetraceThrownExceptionResultImpl$RetraceThrownExceptionElementImpl -> com.android.tools.r8.internal.yT:
+com.android.tools.r8.retrace.internal.RetraceThrownExceptionResultImpl$RetraceThrownExceptionElementImpl -> com.android.tools.r8.internal.zT:
     com.android.tools.r8.naming.ClassNamingForNameMapper mapper -> c
     com.android.tools.r8.references.ClassReference thrownException -> d
     com.android.tools.r8.retrace.internal.RetracedClassReferenceImpl classReference -> b
@@ -107890,7 +107881,7 @@
     11:11:com.android.tools.r8.retrace.internal.RetracedClassReferenceImpl com.android.tools.r8.retrace.internal.RetraceThrownExceptionResultImpl$RetraceThrownExceptionElementImpl.getRetracedClass():73:73 -> getSourceFile
     11:11:com.android.tools.r8.retrace.RetracedSourceFile getSourceFile():92 -> getSourceFile
     12:12:com.android.tools.r8.retrace.RetracedSourceFile getSourceFile():92:92 -> getSourceFile
-com.android.tools.r8.retrace.internal.RetraceTypeResultImpl -> com.android.tools.r8.internal.BT:
+com.android.tools.r8.retrace.internal.RetraceTypeResultImpl -> com.android.tools.r8.internal.CT:
     com.android.tools.r8.retrace.Retracer retracer -> b
     com.android.tools.r8.references.TypeReference obfuscatedType -> a
     1:3:void <init>(com.android.tools.r8.references.TypeReference,com.android.tools.r8.retrace.Retracer):19:21 -> <init>
@@ -107901,11 +107892,11 @@
     1:1:com.android.tools.r8.retrace.RetraceTypeResult forEach(java.util.function.Consumer):14 -> forEach
     1:13:java.util.stream.Stream stream():31:43 -> stream
     14:14:java.util.stream.Stream stream():32:32 -> stream
-com.android.tools.r8.retrace.internal.RetraceTypeResultImpl$ElementImpl -> com.android.tools.r8.internal.AT:
+com.android.tools.r8.retrace.internal.RetraceTypeResultImpl$ElementImpl -> com.android.tools.r8.internal.BT:
     com.android.tools.r8.retrace.RetracedTypeReference retracedType -> a
     1:2:void <init>(com.android.tools.r8.retrace.RetracedTypeReference):61:62 -> <init>
     1:1:com.android.tools.r8.retrace.RetracedTypeReference getType():67:67 -> getType
-com.android.tools.r8.retrace.internal.RetraceUnknownJsonMappingInformationResultImpl -> com.android.tools.r8.internal.CT:
+com.android.tools.r8.retrace.internal.RetraceUnknownJsonMappingInformationResultImpl -> com.android.tools.r8.internal.DT:
     java.util.List elements -> a
     1:2:void <init>(java.util.List):21:22 -> <init>
     1:1:com.android.tools.r8.retrace.RetraceUnknownMappingInformationElement lambda$stream$0(com.android.tools.r8.naming.mappinginformation.UnknownJsonMappingInformation):30:30 -> a
@@ -107915,14 +107906,14 @@
     11:11:void lambda$build$1(com.android.tools.r8.com.google.common.collect.ImmutableList$Builder,com.android.tools.r8.naming.mappinginformation.MappingInformation):39 -> a
     12:12:void lambda$build$1(com.android.tools.r8.com.google.common.collect.ImmutableList$Builder,com.android.tools.r8.naming.mappinginformation.MappingInformation):40:40 -> a
     1:2:java.util.stream.Stream stream():27:28 -> stream
-com.android.tools.r8.retrace.internal.RetraceUnknownMappingInformationElementImpl -> com.android.tools.r8.internal.DT:
+com.android.tools.r8.retrace.internal.RetraceUnknownMappingInformationElementImpl -> com.android.tools.r8.internal.ET:
     com.android.tools.r8.naming.mappinginformation.UnknownJsonMappingInformation mappingInformation -> b
     com.android.tools.r8.retrace.RetraceUnknownJsonMappingInformationResult result -> a
     1:3:void <init>(com.android.tools.r8.retrace.RetraceUnknownJsonMappingInformationResult,com.android.tools.r8.naming.mappinginformation.UnknownJsonMappingInformation):19:21 -> <init>
     1:1:java.lang.String getIdentifier():26:26 -> getIdentifier
     1:1:java.lang.String getPayLoad():31:31 -> getPayLoad
     1:1:com.android.tools.r8.retrace.RetraceUnknownJsonMappingInformationResult getRetraceResultContext():36:36 -> getRetraceResultContext
-com.android.tools.r8.retrace.internal.RetraceUtils -> com.android.tools.r8.internal.ET:
+com.android.tools.r8.retrace.internal.RetraceUtils -> com.android.tools.r8.internal.FT:
     java.util.Set KEEP_SOURCEFILE_NAMES -> a
     boolean $assertionsDisabled -> b
     1:3:void <clinit>():31:33 -> <clinit>
@@ -107970,7 +107961,7 @@
     264:264:int firstNonWhiteSpaceCharacterFromIndex(java.lang.String,int):127 -> a
     265:265:int com.android.tools.r8.retrace.internal.RetraceUtils.firstFromIndex(java.lang.String,int,java.util.function.Predicate):140:140 -> a
     265:265:int firstNonWhiteSpaceCharacterFromIndex(java.lang.String,int):127 -> a
-com.android.tools.r8.retrace.internal.RetracedClassReferenceImpl -> com.android.tools.r8.internal.FT:
+com.android.tools.r8.retrace.internal.RetracedClassReferenceImpl -> com.android.tools.r8.internal.GT:
     com.android.tools.r8.references.ClassReference classReference -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():10:10 -> <clinit>
@@ -107983,11 +107974,11 @@
     1:1:com.android.tools.r8.retrace.RetracedTypeReference getRetracedType():10 -> getRetracedType
     1:1:java.lang.String getTypeName():25:25 -> getTypeName
     1:1:int hashCode():56:56 -> hashCode
-com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl -> com.android.tools.r8.internal.IT:
+com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl -> com.android.tools.r8.internal.JT:
     1:1:void <init>(com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl$1):12:12 -> <init>
     2:2:void <init>():14:14 -> <init>
     1:1:boolean isKnown():23:23 -> isKnown
-com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl$KnownRetracedFieldReferenceImpl -> com.android.tools.r8.internal.GT:
+com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl$KnownRetracedFieldReferenceImpl -> com.android.tools.r8.internal.HT:
     com.android.tools.r8.references.FieldReference fieldReference -> b
     1:1:void <init>(com.android.tools.r8.references.FieldReference,com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl$1):31:31 -> <init>
     2:3:void <init>(com.android.tools.r8.references.FieldReference):36:37 -> <init>
@@ -107998,7 +107989,7 @@
     1:1:com.android.tools.r8.retrace.internal.RetracedClassReferenceImpl com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl$KnownRetracedFieldReferenceImpl.getHolderClass():52:52 -> getHolderClass
     1:1:com.android.tools.r8.retrace.RetracedClassReference getHolderClass():31 -> getHolderClass
     1:1:int hashCode():84:84 -> hashCode
-com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl$UnknownRetracedFieldReferenceImpl -> com.android.tools.r8.internal.HT:
+com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl$UnknownRetracedFieldReferenceImpl -> com.android.tools.r8.internal.IT:
     com.android.tools.r8.retrace.internal.FieldDefinition fieldDefinition -> b
     1:1:void <init>(com.android.tools.r8.retrace.internal.FieldDefinition,com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl$1):88:88 -> <init>
     2:3:void <init>(com.android.tools.r8.retrace.internal.FieldDefinition):92:93 -> <init>
@@ -108007,7 +107998,7 @@
     1:1:com.android.tools.r8.retrace.internal.RetracedClassReferenceImpl com.android.tools.r8.retrace.internal.RetracedFieldReferenceImpl$UnknownRetracedFieldReferenceImpl.getHolderClass():98:98 -> getHolderClass
     1:1:com.android.tools.r8.retrace.RetracedClassReference getHolderClass():88 -> getHolderClass
     1:1:int hashCode():120:120 -> hashCode
-com.android.tools.r8.retrace.internal.RetracedMethodReferenceImpl -> com.android.tools.r8.internal.LT:
+com.android.tools.r8.retrace.internal.RetracedMethodReferenceImpl -> com.android.tools.r8.internal.MT:
     java.util.Comparator comparator -> c
     int $r8$clinit -> d
     java.util.OptionalInt position -> b
@@ -108026,7 +108017,7 @@
     1:1:int getOriginalPositionOrDefault(int):50:50 -> getOriginalPositionOrDefault
     1:1:boolean hasPosition():45:45 -> hasPosition
     1:1:boolean isKnown():60:60 -> isKnown
-com.android.tools.r8.retrace.internal.RetracedMethodReferenceImpl$KnownRetracedMethodReferenceImpl -> com.android.tools.r8.internal.JT:
+com.android.tools.r8.retrace.internal.RetracedMethodReferenceImpl$KnownRetracedMethodReferenceImpl -> com.android.tools.r8.internal.KT:
     com.android.tools.r8.references.MethodReference methodReference -> e
     boolean $assertionsDisabled -> f
     1:1:void <clinit>():73:73 -> <clinit>
@@ -108042,14 +108033,14 @@
     1:2:com.android.tools.r8.references.TypeReference getReturnType():112:113 -> getReturnType
     1:1:int hashCode():140:140 -> hashCode
     1:1:boolean isVoid():92:92 -> isVoid
-com.android.tools.r8.retrace.internal.RetracedMethodReferenceImpl$UnknownRetracedMethodReferenceImpl -> com.android.tools.r8.internal.KT:
+com.android.tools.r8.retrace.internal.RetracedMethodReferenceImpl$UnknownRetracedMethodReferenceImpl -> com.android.tools.r8.internal.LT:
     com.android.tools.r8.retrace.internal.MethodDefinition methodDefinition -> e
     1:1:void <init>(com.android.tools.r8.retrace.internal.MethodDefinition,java.util.OptionalInt,com.android.tools.r8.retrace.internal.RetracedMethodReferenceImpl$1):144:144 -> <init>
     2:3:void <init>(com.android.tools.r8.retrace.internal.MethodDefinition,java.util.OptionalInt):150:151 -> <init>
     1:1:com.android.tools.r8.retrace.internal.RetracedClassReferenceImpl com.android.tools.r8.retrace.internal.RetracedMethodReferenceImpl$UnknownRetracedMethodReferenceImpl.getHolderClass():156:156 -> getHolderClass
     1:1:com.android.tools.r8.retrace.RetracedClassReference getHolderClass():144 -> getHolderClass
     1:1:java.lang.String getMethodName():161:161 -> getMethodName
-com.android.tools.r8.retrace.internal.RetracedSingleFrameImpl -> com.android.tools.r8.internal.MT:
+com.android.tools.r8.retrace.internal.RetracedSingleFrameImpl -> com.android.tools.r8.internal.NT:
     com.android.tools.r8.retrace.RetracedMethodReference methodReference -> b
     com.android.tools.r8.retrace.internal.RetraceFrameResultImpl$ElementImpl frameElement -> a
     int index -> c
@@ -108061,7 +108052,7 @@
     2:2:com.android.tools.r8.retrace.RetracedMethodReference com.android.tools.r8.retrace.internal.RetracedSingleFrameImpl.getMethodReference():27:27 -> getSourceFile
     2:2:com.android.tools.r8.retrace.RetracedSourceFile getSourceFile():37 -> getSourceFile
     3:3:com.android.tools.r8.retrace.RetracedSourceFile getSourceFile():37:37 -> getSourceFile
-com.android.tools.r8.retrace.internal.RetracedSourceFileImpl -> com.android.tools.r8.internal.NT:
+com.android.tools.r8.retrace.internal.RetracedSourceFileImpl -> com.android.tools.r8.internal.OT:
     com.android.tools.r8.references.ClassReference classReference -> a
     java.lang.String filename -> b
     boolean $assertionsDisabled -> c
@@ -108072,7 +108063,7 @@
     2:2:java.lang.String getOrInferSourceFile():36:36 -> getOrInferSourceFile
     1:1:java.lang.String getSourceFile():28:28 -> getSourceFile
     1:1:boolean hasRetraceResult():23:23 -> hasRetraceResult
-com.android.tools.r8.retrace.internal.RetracedTypeReferenceImpl -> com.android.tools.r8.internal.OT:
+com.android.tools.r8.retrace.internal.RetracedTypeReferenceImpl -> com.android.tools.r8.internal.PT:
     boolean $assertionsDisabled -> b
     com.android.tools.r8.references.TypeReference typeReference -> a
     1:1:void <clinit>():12:12 -> <clinit>
@@ -108085,7 +108076,7 @@
     1:1:int hashCode():62:62 -> hashCode
     1:1:boolean isVoid():30:30 -> isVoid
     1:1:com.android.tools.r8.references.TypeReference toArray(int):35:35 -> toArray
-com.android.tools.r8.retrace.internal.RetracerImpl -> com.android.tools.r8.internal.PT:
+com.android.tools.r8.retrace.internal.RetracerImpl -> com.android.tools.r8.internal.QT:
     com.android.tools.r8.DiagnosticsHandler diagnosticsHandler -> b
     com.android.tools.r8.naming.ClassNameMapper classNameMapper -> a
     boolean $assertionsDisabled -> c
@@ -108126,7 +108117,7 @@
     4:4:com.android.tools.r8.retrace.RetraceThrownExceptionResult retraceThrownException(com.android.tools.r8.references.ClassReference):24 -> retraceThrownException
     1:1:com.android.tools.r8.retrace.internal.RetraceTypeResultImpl com.android.tools.r8.retrace.internal.RetracerImpl.retraceType(com.android.tools.r8.references.TypeReference):101:101 -> retraceType
     1:1:com.android.tools.r8.retrace.RetraceTypeResult retraceType(com.android.tools.r8.references.TypeReference):24 -> retraceType
-com.android.tools.r8.retrace.internal.StackTraceElementProxyRetracerImpl -> com.android.tools.r8.internal.TV:
+com.android.tools.r8.retrace.internal.StackTraceElementProxyRetracerImpl -> com.android.tools.r8.internal.UV:
     com.android.tools.r8.retrace.Retracer retracer -> a
     1:2:void <init>(com.android.tools.r8.retrace.Retracer):45:46 -> <init>
     1:4:com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl retraceClassOrType(com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl,com.android.tools.r8.retrace.RetraceClassResult):81:84 -> a
@@ -108204,7 +108195,7 @@
     5:5:com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl$Builder com.android.tools.r8.retrace.internal.RetraceStackTraceElementProxyResultImpl$Builder.setResultContext(java.util.function.Supplier):55:55 -> retrace
     5:5:com.android.tools.r8.retrace.RetraceStackTraceElementProxyResult retrace(com.android.tools.r8.retrace.StackTraceElementProxy,com.android.tools.r8.retrace.RetraceStackTraceContext):55 -> retrace
     6:21:com.android.tools.r8.retrace.RetraceStackTraceElementProxyResult retrace(com.android.tools.r8.retrace.StackTraceElementProxy,com.android.tools.r8.retrace.RetraceStackTraceContext):56:71 -> retrace
-com.android.tools.r8.retrace.internal.StackTraceElementProxyRetracerImpl$RetraceStackTraceElementProxyImpl -> com.android.tools.r8.internal.SV:
+com.android.tools.r8.retrace.internal.StackTraceElementProxyRetracerImpl$RetraceStackTraceElementProxyImpl -> com.android.tools.r8.internal.TV:
     boolean $assertionsDisabled -> m
     java.lang.String sourceFile -> h
     boolean isAmbiguous -> j
@@ -108259,7 +108250,7 @@
     1:1:boolean hasSourceFile():412:412 -> hasSourceFile
     1:1:boolean isAmbiguous():387:387 -> isAmbiguous
     1:1:boolean isTopFrame():392:392 -> isTopFrame
-com.android.tools.r8.retrace.internal.StackTraceElementProxyRetracerImpl$RetraceStackTraceElementProxyImpl$Builder -> com.android.tools.r8.internal.RV:
+com.android.tools.r8.retrace.internal.StackTraceElementProxyRetracerImpl$RetraceStackTraceElementProxyImpl$Builder -> com.android.tools.r8.internal.SV:
     java.lang.String sourceFile -> g
     com.android.tools.r8.retrace.RetracedMethodReference methodContext -> c
     java.util.List methodArguments -> f
@@ -108324,7 +108315,7 @@
     1:1:com.android.tools.r8.retrace.internal.StackTraceElementProxyRetracerImpl$RetraceStackTraceElementProxyImpl$Builder com.android.tools.r8.retrace.internal.StackTraceElementProxyRetracerImpl$RetraceStackTraceElementProxyImpl$Builder.setTopFrame(boolean):602:602 -> d
     1:1:com.android.tools.r8.retrace.internal.StackTraceElementProxyRetracerImpl$RetraceStackTraceElementProxyImpl$Builder access$300(com.android.tools.r8.retrace.internal.StackTraceElementProxyRetracerImpl$RetraceStackTraceElementProxyImpl$Builder,boolean):543 -> d
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-com.android.tools.r8.retrace.internal.StackTraceElementStringProxy -> com.android.tools.r8.internal.YV:
+com.android.tools.r8.retrace.internal.StackTraceElementStringProxy -> com.android.tools.r8.internal.ZV:
     java.util.List orderedIndices -> b
     com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StringIndex fieldOrReturnType -> h
     com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StringIndex methodArguments -> i
@@ -108370,19 +108361,19 @@
     1:1:boolean hasSourceFile():73:73 -> hasSourceFile
     1:9:java.lang.String com.android.tools.r8.retrace.internal.StackTraceElementStringProxy.toRetracedItem(com.android.tools.r8.retrace.RetraceStackTraceElementProxy,boolean):146:154 -> toRetracedItem
     1:9:java.lang.Object toRetracedItem(com.android.tools.r8.retrace.RetraceStackTraceElementProxy,boolean):23 -> toRetracedItem
-com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassNameType -> com.android.tools.r8.internal.UV:
+com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassNameType -> com.android.tools.r8.internal.VV:
     com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassNameType TYPENAME -> c
     com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassNameType BINARY -> b
     1:2:void <clinit>():167:168 -> <clinit>
     1:1:void <init>(java.lang.String,int):166:166 -> <init>
-com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassStringIndex -> com.android.tools.r8.internal.VV:
+com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassStringIndex -> com.android.tools.r8.internal.WV:
     com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassStringIndex NO_INDEX -> e
     com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassNameType classNameType -> d
     1:1:void <clinit>():364:364 -> <clinit>
     1:1:void <init>(int,int,com.android.tools.r8.utils.TriFunction,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassNameType,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$1):362:362 -> <init>
     2:3:void <init>(int,int,com.android.tools.r8.utils.TriFunction,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassNameType):379:380 -> <init>
     1:4:com.android.tools.r8.references.ClassReference getReference(java.lang.String):384:387 -> a
-com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder -> com.android.tools.r8.internal.WV:
+com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder -> com.android.tools.r8.internal.XV:
     java.util.List orderedIndices -> b
     com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StringIndex fieldOrReturnType -> h
     com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StringIndex methodArguments -> i
@@ -108424,7 +108415,7 @@
     43:43:java.lang.String lambda$registerMethodName$1(com.android.tools.r8.retrace.RetraceStackTraceElementProxy,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy,java.lang.Boolean):216 -> d
     1:7:com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder registerSourceFile(int,int):224:230 -> e
     8:8:java.lang.String lambda$registerSourceFile$2(com.android.tools.r8.retrace.RetraceStackTraceElementProxy,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy,java.lang.Boolean):229:229 -> e
-com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StringIndex -> com.android.tools.r8.internal.XV:
+com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StringIndex -> com.android.tools.r8.internal.YV:
     com.android.tools.r8.utils.TriFunction retracedString -> c
     int endIndex -> b
     int startIndex -> a
@@ -108432,7 +108423,7 @@
     2:5:void <init>(int,int,com.android.tools.r8.utils.TriFunction):351:354 -> <init>
     1:1:com.android.tools.r8.utils.TriFunction access$100(com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StringIndex):331:331 -> a
     2:2:boolean hasIndex():358:358 -> a
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser -> com.android.tools.r8.internal.mW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser -> com.android.tools.r8.internal.nW:
     com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$LineNumberGroup lineNumberGroup -> g
     com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$FieldOrReturnTypeGroup fieldOrReturnTypeGroup -> h
     com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$MethodNameGroup methodNameGroup -> j
@@ -108473,60 +108464,60 @@
     2:2:com.android.tools.r8.retrace.StackTraceElementProxy parse(java.lang.Object):16 -> parse
     3:15:com.android.tools.r8.retrace.internal.StackTraceElementStringProxy com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser.parse(java.lang.String):61:73 -> parse
     3:15:com.android.tools.r8.retrace.StackTraceElementProxy parse(java.lang.Object):16 -> parse
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$BinaryNameGroup -> com.android.tools.r8.internal.ZV:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$BinaryNameGroup -> com.android.tools.r8.internal.aW:
     1:1:void <init>():222:222 -> <init>
     2:2:void <init>(com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$1):222:222 -> <init>
     1:1:java.lang.String subExpression():226:226 -> a
     1:1:com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassNameType getClassNameType():231:231 -> b
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$ClassNameGroup -> com.android.tools.r8.internal.bW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$ClassNameGroup -> com.android.tools.r8.internal.cW:
     1:1:void <init>():179:179 -> <init>
     1:1:com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroupHandler createHandler(java.lang.String):185:185 -> a
     com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$ClassNameType getClassNameType() -> b
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$ClassNameGroup$1 -> com.android.tools.r8.internal.aW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$ClassNameGroup$1 -> com.android.tools.r8.internal.bW:
     com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$ClassNameGroup this$0 -> b
     java.lang.String val$captureGroup -> a
     1:1:void <init>(com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$ClassNameGroup,java.lang.String):185:185 -> <init>
     boolean isClassHandler() -> a
     1:10:boolean matchHandler(com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder,java.util.regex.Matcher):188:197 -> a
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$FieldNameGroup -> com.android.tools.r8.internal.cW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$FieldNameGroup -> com.android.tools.r8.internal.dW:
     1:1:void <init>():255:255 -> <init>
     2:2:void <init>(com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$1):255:255 -> <init>
     1:1:java.lang.String subExpression():259:259 -> a
     2:2:com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroupHandler createHandler(java.lang.String):264:264 -> a
     3:7:boolean lambda$createHandler$0(java.lang.String,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder,java.util.regex.Matcher):265:269 -> a
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$FieldOrReturnTypeGroup -> com.android.tools.r8.internal.dW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$FieldOrReturnTypeGroup -> com.android.tools.r8.internal.eW:
     1:1:void <init>():367:367 -> <init>
     2:2:void <init>(com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$1):367:367 -> <init>
     1:1:java.lang.String subExpression():371:371 -> a
     2:2:com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroupHandler createHandler(java.lang.String):376:376 -> a
     3:7:boolean lambda$createHandler$0(java.lang.String,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder,java.util.regex.Matcher):377:381 -> a
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$LineNumberGroup -> com.android.tools.r8.internal.eW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$LineNumberGroup -> com.android.tools.r8.internal.fW:
     1:1:void <init>():302:302 -> <init>
     2:2:void <init>(com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$1):302:302 -> <init>
     1:1:java.lang.String subExpression():306:306 -> a
     2:2:com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroupHandler createHandler(java.lang.String):311:311 -> a
     3:7:boolean lambda$createHandler$0(java.lang.String,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder,java.util.regex.Matcher):312:316 -> a
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$MethodArgumentsGroup -> com.android.tools.r8.internal.fW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$MethodArgumentsGroup -> com.android.tools.r8.internal.gW:
     1:1:void <init>():387:387 -> <init>
     2:2:void <init>(com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$1):387:387 -> <init>
     1:1:java.lang.String subExpression():391:391 -> a
     2:2:com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroupHandler createHandler(java.lang.String):396:396 -> a
     3:7:boolean lambda$createHandler$0(java.lang.String,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder,java.util.regex.Matcher):397:401 -> a
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$MethodNameGroup -> com.android.tools.r8.internal.gW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$MethodNameGroup -> com.android.tools.r8.internal.hW:
     1:1:void <init>():235:235 -> <init>
     2:2:void <init>(com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$1):235:235 -> <init>
     1:1:java.lang.String subExpression():239:239 -> a
     2:2:com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroupHandler createHandler(java.lang.String):244:244 -> a
     3:7:boolean lambda$createHandler$0(java.lang.String,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder,java.util.regex.Matcher):245:249 -> a
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroup -> com.android.tools.r8.internal.hW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroup -> com.android.tools.r8.internal.iW:
     1:1:void <init>():161:161 -> <init>
     2:2:void <init>(com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$1):161:161 -> <init>
     com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroupHandler createHandler(java.lang.String) -> a
     java.lang.String subExpression() -> a
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroupHandler -> com.android.tools.r8.internal.iW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroupHandler -> com.android.tools.r8.internal.jW:
     boolean isClassHandler() -> a
     boolean matchHandler(com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder,java.util.regex.Matcher) -> a
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$SourceFileGroup -> com.android.tools.r8.internal.jW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$SourceFileGroup -> com.android.tools.r8.internal.kW:
     1:1:void <init>():275:275 -> <init>
     2:2:void <init>(com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$1):275:275 -> <init>
     1:1:java.lang.String subExpression():0:0 -> a
@@ -108547,7 +108538,7 @@
     2:2:java.lang.String subExpression():286 -> a
     9:9:com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$RegularExpressionGroupHandler createHandler(java.lang.String):291:291 -> a
     10:14:boolean lambda$createHandler$0(java.lang.String,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder,java.util.regex.Matcher):292:296 -> a
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$SourceFileLineNumberGroup -> com.android.tools.r8.internal.kW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$SourceFileLineNumberGroup -> com.android.tools.r8.internal.lW:
     1:1:void <init>():322:322 -> <init>
     2:2:void <init>(com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$1):322:322 -> <init>
     1:1:java.lang.String subExpression():326:326 -> a
@@ -108578,7 +108569,7 @@
     20:32:boolean lambda$createHandler$0(java.lang.String,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder,java.util.regex.Matcher):336 -> a
     33:37:boolean lambda$createHandler$0(java.lang.String,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder,java.util.regex.Matcher):338:342 -> a
     38:38:boolean lambda$createHandler$0(java.lang.String,com.android.tools.r8.retrace.internal.StackTraceElementStringProxy$StackTraceElementStringProxyBuilder,java.util.regex.Matcher):341:341 -> a
-com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$TypeNameGroup -> com.android.tools.r8.internal.lW:
+com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$TypeNameGroup -> com.android.tools.r8.internal.mW:
     1:1:void <init>():209:209 -> <init>
     2:2:void <init>(com.android.tools.r8.retrace.internal.StackTraceRegularExpressionParser$1):209:209 -> <init>
     1:1:java.lang.String subExpression():213:213 -> a
@@ -109814,1413 +109805,1361 @@
     57:57:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
     58:58:com.android.tools.r8.graph.ObjectAllocationInfoCollectionImpl$Builder access$1000(com.android.tools.r8.shaking.Enqueuer):193:193 -> a
     59:59:void access$1500(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexProgramClass):193:193 -> a
-    60:63:void transitionUnusedInterfaceToLive(com.android.tools.r8.graph.DexProgramClass):2809:2812 -> a
-    60:63:void access$1500(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexProgramClass):193 -> a
-    64:64:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramDefinition):1811:1811 -> a
-    64:64:void transitionUnusedInterfaceToLive(com.android.tools.r8.graph.DexProgramClass):2813 -> a
-    64:64:void access$1500(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexProgramClass):193 -> a
-    65:65:void transitionUnusedInterfaceToLive(com.android.tools.r8.graph.DexProgramClass):2817:2817 -> a
-    65:65:void access$1500(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexProgramClass):193 -> a
-    66:66:void access$1600(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDerivedContext):193:193 -> a
-    67:68:void recordFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDerivedContext):650:651 -> a
-    67:68:void access$1600(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDerivedContext):193 -> a
-    69:69:com.android.tools.r8.graph.DexProgramClass access$1700(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexMember,com.android.tools.r8.graph.ProgramDefinition):193:193 -> a
-    70:70:com.android.tools.r8.graph.DexProgramClass getProgramHolderOrNull(com.android.tools.r8.graph.DexMember,com.android.tools.r8.graph.ProgramDefinition):781:781 -> a
-    70:70:com.android.tools.r8.graph.DexProgramClass access$1700(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexMember,com.android.tools.r8.graph.ProgramDefinition):193 -> a
-    71:71:void access$1900(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):193:193 -> a
-    72:72:void access$2100(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):193:193 -> a
-    73:73:void access$2200(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDerivedContext):193:193 -> a
-    74:74:void access$2300(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):193:193 -> a
-    75:75:void access$2400(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):193:193 -> a
-    76:76:void access$2700(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):193:193 -> a
-    77:77:boolean com.android.tools.r8.graph.DexMethodHandle.isMethodHandle():294:294 -> a
-    77:77:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1244 -> a
+    60:68:void transitionUnusedInterfaceToLive(com.android.tools.r8.graph.DexProgramClass):2809:2817 -> a
+    60:68:void access$1500(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexProgramClass):193 -> a
+    69:69:void access$1600(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDerivedContext):193:193 -> a
+    70:71:void recordFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDerivedContext):650:651 -> a
+    70:71:void access$1600(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDerivedContext):193 -> a
+    72:72:com.android.tools.r8.graph.DexProgramClass access$1700(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexMember,com.android.tools.r8.graph.ProgramDefinition):193:193 -> a
+    73:73:com.android.tools.r8.graph.DexProgramClass getProgramHolderOrNull(com.android.tools.r8.graph.DexMember,com.android.tools.r8.graph.ProgramDefinition):781:781 -> a
+    73:73:com.android.tools.r8.graph.DexProgramClass access$1700(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexMember,com.android.tools.r8.graph.ProgramDefinition):193 -> a
+    74:74:void access$1900(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):193:193 -> a
+    75:75:void access$2100(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):193:193 -> a
+    76:76:void access$2200(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDerivedContext):193:193 -> a
+    77:77:void access$2300(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):193:193 -> a
+    78:78:void access$2400(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):193:193 -> a
+    79:79:void access$2700(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):193:193 -> a
+    80:80:boolean com.android.tools.r8.graph.DexMethodHandle.isMethodHandle():294:294 -> a
+    80:80:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1244 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    78:78:boolean com.android.tools.r8.graph.DexMethodHandle.isMethodHandle():294:294 -> a
-    78:78:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1244 -> a
-    79:81:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1244:1246 -> a
-    82:82:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.methodHandleReferencedIn(com.android.tools.r8.graph.ProgramMethod):87:87 -> a
-    82:82:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1248 -> a
-    83:83:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    83:83:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1249 -> a
-    84:88:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1250:1254 -> a
-    89:89:void lambda$new$0(com.android.tools.r8.ir.analysis.proto.GeneratedMessageLiteBuilderShrinker):487:487 -> a
-    90:90:com.android.tools.r8.shaking.Enqueuer registerAnalysis(com.android.tools.r8.graph.analysis.EnqueuerAnalysis):535:535 -> a
-    90:90:void lambda$new$0(com.android.tools.r8.ir.analysis.proto.GeneratedMessageLiteBuilderShrinker):487 -> a
-    91:91:com.android.tools.r8.shaking.EnqueuerUseRegistryFactory lambda$createUseRegistryFactory$1(com.android.tools.r8.ir.analysis.proto.GeneratedMessageLiteShrinker):525:525 -> a
-    92:92:com.android.tools.r8.shaking.Enqueuer registerFieldAccessAnalysis(com.android.tools.r8.graph.analysis.EnqueuerFieldAccessAnalysis):540:540 -> a
-    93:93:com.android.tools.r8.shaking.Enqueuer registerInvokeAnalysis(com.android.tools.r8.graph.analysis.EnqueuerInvokeAnalysis):545:545 -> a
-    94:94:com.android.tools.r8.shaking.Enqueuer registerCheckCastAnalysis(com.android.tools.r8.graph.analysis.EnqueuerCheckCastAnalysis):555:555 -> a
-    95:95:void setAnnotationRemoverBuilder(com.android.tools.r8.shaking.AnnotationRemover$Builder):565:565 -> a
-    96:96:void addDeadProtoTypeCandidate(com.android.tools.r8.graph.DexType):579:579 -> a
-    97:97:void addDeadProtoTypeCandidate(com.android.tools.r8.graph.DexProgramClass):586:586 -> a
-    97:97:void addDeadProtoTypeCandidate(com.android.tools.r8.graph.DexType):581 -> a
-    98:98:boolean addLiveMethod(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):590:590 -> a
-    99:102:void recordTypeReference(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):623:626 -> a
-    103:108:com.android.tools.r8.graph.DexClass internalDefinitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):679:684 -> a
-    103:108:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):671 -> a
-    103:108:void recordTypeReference(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):630 -> a
-    109:109:void recordMethodReference(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDerivedContext):634:634 -> a
-    110:113:void recordMethodReference(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):642:645 -> a
-    114:114:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):663:663 -> a
-    115:120:com.android.tools.r8.graph.DexClass internalDefinitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):679:684 -> a
-    115:120:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):671 -> a
-    115:120:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):663 -> a
-    121:121:com.android.tools.r8.graph.DexClass internalDefinitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):679:679 -> a
-    121:121:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):671 -> a
-    121:121:com.android.tools.r8.graph.DexClass access$2500(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):193 -> a
+    81:81:boolean com.android.tools.r8.graph.DexMethodHandle.isMethodHandle():294:294 -> a
+    81:81:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1244 -> a
+    82:84:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1244:1246 -> a
+    85:85:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.methodHandleReferencedIn(com.android.tools.r8.graph.ProgramMethod):87:87 -> a
+    85:85:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1248 -> a
+    86:86:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    86:86:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1249 -> a
+    87:91:void traceMethodHandle(com.android.tools.r8.graph.DexMethodHandle,com.android.tools.r8.graph.UseRegistry$MethodHandleUse,com.android.tools.r8.graph.ProgramMethod):1250:1254 -> a
+    92:92:void lambda$new$0(com.android.tools.r8.ir.analysis.proto.GeneratedMessageLiteBuilderShrinker):487:487 -> a
+    93:93:com.android.tools.r8.shaking.Enqueuer registerAnalysis(com.android.tools.r8.graph.analysis.EnqueuerAnalysis):535:535 -> a
+    93:93:void lambda$new$0(com.android.tools.r8.ir.analysis.proto.GeneratedMessageLiteBuilderShrinker):487 -> a
+    94:94:com.android.tools.r8.shaking.EnqueuerUseRegistryFactory lambda$createUseRegistryFactory$1(com.android.tools.r8.ir.analysis.proto.GeneratedMessageLiteShrinker):525:525 -> a
+    95:95:com.android.tools.r8.shaking.Enqueuer registerFieldAccessAnalysis(com.android.tools.r8.graph.analysis.EnqueuerFieldAccessAnalysis):540:540 -> a
+    96:96:com.android.tools.r8.shaking.Enqueuer registerInvokeAnalysis(com.android.tools.r8.graph.analysis.EnqueuerInvokeAnalysis):545:545 -> a
+    97:97:com.android.tools.r8.shaking.Enqueuer registerCheckCastAnalysis(com.android.tools.r8.graph.analysis.EnqueuerCheckCastAnalysis):555:555 -> a
+    98:98:void setAnnotationRemoverBuilder(com.android.tools.r8.shaking.AnnotationRemover$Builder):565:565 -> a
+    99:99:void addDeadProtoTypeCandidate(com.android.tools.r8.graph.DexType):579:579 -> a
+    100:100:void addDeadProtoTypeCandidate(com.android.tools.r8.graph.DexProgramClass):586:586 -> a
+    100:100:void addDeadProtoTypeCandidate(com.android.tools.r8.graph.DexType):581 -> a
+    101:101:boolean addLiveMethod(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):590:590 -> a
+    102:105:void recordTypeReference(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):623:626 -> a
+    106:111:com.android.tools.r8.graph.DexClass internalDefinitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):679:684 -> a
+    106:111:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):671 -> a
+    106:111:void recordTypeReference(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):630 -> a
+    112:112:void recordMethodReference(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDerivedContext):634:634 -> a
+    113:116:void recordMethodReference(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):642:645 -> a
+    117:117:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):663:663 -> a
+    118:123:com.android.tools.r8.graph.DexClass internalDefinitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):679:684 -> a
+    118:123:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):671 -> a
+    118:123:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):663 -> a
+    124:124:com.android.tools.r8.graph.DexClass internalDefinitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):679:679 -> a
+    124:124:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):671 -> a
+    124:124:com.android.tools.r8.graph.DexClass access$2500(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):193 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
-    122:127:com.android.tools.r8.graph.DexClass internalDefinitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):679:684 -> a
-    122:127:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):671 -> a
-    122:127:com.android.tools.r8.graph.DexClass access$2500(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):193 -> a
-    128:133:void processNewLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.utils.WorkList,java.util.function.BiConsumer,boolean):718:723 -> a
-    134:138:void handleLibraryTypeInheritingFromProgramType(com.android.tools.r8.graph.DexLibraryClass):796:800 -> a
-    134:138:void processNewLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.utils.WorkList,java.util.function.BiConsumer,boolean):723 -> a
-    139:163:void processNewLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.utils.WorkList,java.util.function.BiConsumer,boolean):725:749 -> a
-    164:164:void processNewLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.utils.WorkList,java.util.function.BiConsumer,boolean):747:747 -> a
-    165:166:void lambda$processNewLiveNonProgramType$2(java.util.function.BiConsumer,com.android.tools.r8.graph.DexClassAndField):728:729 -> a
-    167:167:void lambda$processNewLiveNonProgramType$2(java.util.function.BiConsumer,com.android.tools.r8.graph.DexClassAndField):727:727 -> a
-    168:170:void lambda$processNewLiveNonProgramType$3(java.util.function.BiConsumer,com.android.tools.r8.graph.DexClassAndMethod):734:736 -> a
-    171:177:void lambda$processNewLiveNonProgramType$3(java.util.function.BiConsumer,com.android.tools.r8.graph.DexClassAndMethod):735:741 -> a
-    178:188:void addNonProgramClassToWorklist(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ClasspathOrLibraryDefinition,java.util.function.Consumer,java.util.function.BiConsumer):760:770 -> a
-    189:189:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):865:865 -> a
-    190:190:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    190:190:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):866 -> a
+    125:130:com.android.tools.r8.graph.DexClass internalDefinitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):679:684 -> a
+    125:130:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):671 -> a
+    125:130:com.android.tools.r8.graph.DexClass access$2500(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,java.util.function.BiConsumer,java.util.function.BiConsumer):193 -> a
+    131:136:void processNewLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.utils.WorkList,java.util.function.BiConsumer,boolean):718:723 -> a
+    137:141:void handleLibraryTypeInheritingFromProgramType(com.android.tools.r8.graph.DexLibraryClass):796:800 -> a
+    137:141:void processNewLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.utils.WorkList,java.util.function.BiConsumer,boolean):723 -> a
+    142:166:void processNewLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.utils.WorkList,java.util.function.BiConsumer,boolean):725:749 -> a
+    167:167:void processNewLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.utils.WorkList,java.util.function.BiConsumer,boolean):747:747 -> a
+    168:169:void lambda$processNewLiveNonProgramType$2(java.util.function.BiConsumer,com.android.tools.r8.graph.DexClassAndField):728:729 -> a
+    170:170:void lambda$processNewLiveNonProgramType$2(java.util.function.BiConsumer,com.android.tools.r8.graph.DexClassAndField):727:727 -> a
+    171:173:void lambda$processNewLiveNonProgramType$3(java.util.function.BiConsumer,com.android.tools.r8.graph.DexClassAndMethod):734:736 -> a
+    174:180:void lambda$processNewLiveNonProgramType$3(java.util.function.BiConsumer,com.android.tools.r8.graph.DexClassAndMethod):735:741 -> a
+    181:191:void addNonProgramClassToWorklist(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ClasspathOrLibraryDefinition,java.util.function.Consumer,java.util.function.BiConsumer):760:770 -> a
+    192:192:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):865:865 -> a
+    193:193:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    193:193:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):866 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    191:191:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    191:191:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):866 -> a
-    192:196:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):867:871 -> a
-    197:197:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
-    197:197:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
-    197:197:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):872 -> a
-    198:202:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):873:877 -> a
-    203:207:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):875:879 -> a
-    208:208:boolean com.android.tools.r8.graph.DexClass.isExternalizable(com.android.tools.r8.graph.AppView):849:849 -> a
-    208:208:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):879 -> a
-    209:209:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isExternalizable(com.android.tools.r8.graph.DexType):439:439 -> a
-    209:209:boolean com.android.tools.r8.graph.DexClass.isExternalizable(com.android.tools.r8.graph.AppView):849 -> a
+    194:194:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    194:194:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):866 -> a
+    195:199:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):867:871 -> a
+    200:200:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
+    200:200:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
+    200:200:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):872 -> a
+    201:205:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):873:877 -> a
+    206:210:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):875:879 -> a
+    211:211:boolean com.android.tools.r8.graph.DexClass.isExternalizable(com.android.tools.r8.graph.AppView):849:849 -> a
+    211:211:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):879 -> a
+    212:212:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isExternalizable(com.android.tools.r8.graph.DexType):439:439 -> a
+    212:212:boolean com.android.tools.r8.graph.DexClass.isExternalizable(com.android.tools.r8.graph.AppView):849 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    209:209:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):879 -> a
-    210:210:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isExternalizable(com.android.tools.r8.graph.DexType):439:439 -> a
-    210:210:boolean com.android.tools.r8.graph.DexClass.isExternalizable(com.android.tools.r8.graph.AppView):849 -> a
-    210:210:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):879 -> a
-    211:213:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):880:882 -> a
-    214:214:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
-    214:214:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
-    214:214:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):881 -> a
-    215:215:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
-    215:215:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):881 -> a
-    216:218:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):890:892 -> a
-    216:218:void lambda$enqueueAllIfNotShrinking$4(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramField):848 -> a
-    219:219:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
-    219:219:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895 -> a
+    212:212:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):879 -> a
+    213:213:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isExternalizable(com.android.tools.r8.graph.DexType):439:439 -> a
+    213:213:boolean com.android.tools.r8.graph.DexClass.isExternalizable(com.android.tools.r8.graph.AppView):849 -> a
+    213:213:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):879 -> a
+    214:216:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):880:882 -> a
+    217:217:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
+    217:217:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
+    217:217:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):881 -> a
+    218:218:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    218:218:void enqueueKeepRuleInstantiatedType(com.android.tools.r8.graph.DexProgramClass,java.util.Set,com.android.tools.r8.graph.DexDefinition):881 -> a
+    219:221:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):890:892 -> a
+    219:221:void lambda$enqueueAllIfNotShrinking$4(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramField):848 -> a
+    222:222:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
+    222:222:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    219:219:void lambda$enqueueAllIfNotShrinking$4(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramField):848 -> a
-    220:220:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895:895 -> a
-    220:220:void lambda$enqueueAllIfNotShrinking$4(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramField):848 -> a
-    221:221:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):894:894 -> a
-    221:221:void lambda$enqueueAllIfNotShrinking$4(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramField):848 -> a
-    222:222:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):892:892 -> a
     222:222:void lambda$enqueueAllIfNotShrinking$4(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramField):848 -> a
-    223:225:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):902:904 -> a
-    223:225:void lambda$enqueueAllIfNotShrinking$5(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramMethod):850 -> a
-    226:226:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
-    226:226:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):907 -> a
+    223:223:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895:895 -> a
+    223:223:void lambda$enqueueAllIfNotShrinking$4(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramField):848 -> a
+    224:224:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):894:894 -> a
+    224:224:void lambda$enqueueAllIfNotShrinking$4(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramField):848 -> a
+    225:225:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):892:892 -> a
+    225:225:void lambda$enqueueAllIfNotShrinking$4(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramField):848 -> a
+    226:228:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):902:904 -> a
+    226:228:void lambda$enqueueAllIfNotShrinking$5(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramMethod):850 -> a
+    229:229:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
+    229:229:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):907 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    226:226:void lambda$enqueueAllIfNotShrinking$5(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramMethod):850 -> a
-    227:227:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):907:907 -> a
-    227:227:void lambda$enqueueAllIfNotShrinking$5(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramMethod):850 -> a
-    228:228:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):906:906 -> a
-    228:228:void lambda$enqueueAllIfNotShrinking$5(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramMethod):850 -> a
-    229:229:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):904:904 -> a
     229:229:void lambda$enqueueAllIfNotShrinking$5(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramMethod):850 -> a
-    230:233:boolean registerMethodWithTargetAndContext(java.util.function.BiPredicate,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):946:949 -> a
-    234:234:boolean registerFieldRead(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod):955:955 -> a
-    234:234:void traceInstanceFieldRead(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType):1482 -> a
-    235:235:void traceInstanceFieldRead(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType):1486:1486 -> a
-    236:236:void com.android.tools.r8.graph.FieldResolutionResult.visitFieldResolutionResults(java.util.function.Consumer,java.util.function.Consumer):124:124 -> a
-    236:236:void traceInstanceFieldRead(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType):1487 -> a
-    237:237:boolean registerFieldWrite(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod):963:963 -> a
-    237:237:void traceInstanceFieldWrite(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean):1544 -> a
-    238:238:void traceInstanceFieldWrite(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean):1548:1548 -> a
+    230:230:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):907:907 -> a
+    230:230:void lambda$enqueueAllIfNotShrinking$5(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramMethod):850 -> a
+    231:231:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):906:906 -> a
+    231:231:void lambda$enqueueAllIfNotShrinking$5(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramMethod):850 -> a
+    232:232:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):904:904 -> a
+    232:232:void lambda$enqueueAllIfNotShrinking$5(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramMethod):850 -> a
+    233:236:boolean registerMethodWithTargetAndContext(java.util.function.BiPredicate,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):946:949 -> a
+    237:237:boolean registerFieldRead(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod):955:955 -> a
+    237:237:void traceInstanceFieldRead(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType):1482 -> a
+    238:238:void traceInstanceFieldRead(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType):1486:1486 -> a
     239:239:void com.android.tools.r8.graph.FieldResolutionResult.visitFieldResolutionResults(java.util.function.Consumer,java.util.function.Consumer):124:124 -> a
-    239:239:void traceInstanceFieldWrite(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean):1549 -> a
-    240:241:boolean registerReflectiveFieldAccess(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod):971:972 -> a
-    242:273:boolean registerFieldAccess(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,boolean):978:1009 -> a
-    274:274:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015:1015 -> a
-    275:275:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
-    275:275:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    276:276:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
-    276:276:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015 -> a
+    239:239:void traceInstanceFieldRead(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType):1487 -> a
+    240:240:boolean registerFieldWrite(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod):963:963 -> a
+    240:240:void traceInstanceFieldWrite(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean):1544 -> a
+    241:241:void traceInstanceFieldWrite(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean):1548:1548 -> a
+    242:242:void com.android.tools.r8.graph.FieldResolutionResult.visitFieldResolutionResults(java.util.function.Consumer,java.util.function.Consumer):124:124 -> a
+    242:242:void traceInstanceFieldWrite(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean):1549 -> a
+    243:244:boolean registerReflectiveFieldAccess(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod):971:972 -> a
+    245:276:boolean registerFieldAccess(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,boolean):978:1009 -> a
     277:277:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015:1015 -> a
-    278:281:boolean com.android.tools.r8.ir.desugar.LambdaDescriptor.isLambdaMetafactoryMethod(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.DexDefinitionSupplier):272:275 -> a
-    278:281:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015 -> a
-    282:282:boolean com.android.tools.r8.graph.DexItemFactory.isLambdaMetafactoryMethod(com.android.tools.r8.graph.DexMethod):872:872 -> a
-    282:282:boolean com.android.tools.r8.ir.desugar.LambdaDescriptor.isLambdaMetafactoryMethod(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.DexDefinitionSupplier):275 -> a
+    278:278:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
+    278:278:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    282:282:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015 -> a
-    283:283:boolean com.android.tools.r8.graph.DexItemFactory.isLambdaMetafactoryMethod(com.android.tools.r8.graph.DexMethod):872:872 -> a
-    283:283:boolean com.android.tools.r8.ir.desugar.LambdaDescriptor.isLambdaMetafactoryMethod(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.DexDefinitionSupplier):275 -> a
-    283:283:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015 -> a
-    284:285:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1016:1017 -> a
-    286:286:com.android.tools.r8.graph.DexProgramClass getProgramHolderOrNull(com.android.tools.r8.graph.DexMember,com.android.tools.r8.graph.ProgramDefinition):781:781 -> a
-    286:286:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1017 -> a
-    287:291:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1019:1023 -> a
-    292:292:java.util.List com.android.tools.r8.graph.DexCallSite.getBootstrapArgs():106:106 -> a
-    292:292:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1025 -> a
-    293:294:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1025:1026 -> a
-    295:295:boolean com.android.tools.r8.graph.DexValue.isDexValueMethodHandle():0:0 -> a
-    295:295:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1026 -> a
-    296:296:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1027:1027 -> a
-    297:297:boolean com.android.tools.r8.graph.DexMethodHandle.isMethodHandle():294:294 -> a
-    297:297:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1028 -> a
+    279:279:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
+    279:279:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015 -> a
+    280:280:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015:1015 -> a
+    281:284:boolean com.android.tools.r8.ir.desugar.LambdaDescriptor.isLambdaMetafactoryMethod(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.DexDefinitionSupplier):272:275 -> a
+    281:284:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015 -> a
+    285:285:boolean com.android.tools.r8.graph.DexItemFactory.isLambdaMetafactoryMethod(com.android.tools.r8.graph.DexMethod):872:872 -> a
+    285:285:boolean com.android.tools.r8.ir.desugar.LambdaDescriptor.isLambdaMetafactoryMethod(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.DexDefinitionSupplier):275 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    298:298:boolean com.android.tools.r8.graph.DexMethodHandle.isMethodHandle():294:294 -> a
-    298:298:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1028 -> a
-    299:299:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1029:1029 -> a
-    300:300:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.methodHandleReferencedIn(com.android.tools.r8.graph.ProgramMethod):87:87 -> a
-    300:300:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1075 -> a
-    300:300:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1029 -> a
-    301:305:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1075:1079 -> a
-    301:305:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1029 -> a
-    306:306:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
-    306:306:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
-    306:306:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1077 -> a
-    306:306:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1029 -> a
-    307:307:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
-    307:307:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1077 -> a
-    307:307:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1029 -> a
-    308:308:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1036:1036 -> a
-    309:309:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2522:2522 -> a
-    309:309:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    310:313:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2529:2532 -> a
-    310:313:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    310:313:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    314:314:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":384,"2":385,"3":386}}
-    384:384:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2532:2532 -> a
-    384:384:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    384:384:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    385:385:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2532:2532 -> a
-    385:385:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    385:385:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    386:386:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2532:2532 -> a
-    386:386:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    386:386:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    315:315:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":388,"2":389,"3":390,"4":391}}
-    388:388:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2534:2534 -> a
+    285:285:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015 -> a
+    286:286:boolean com.android.tools.r8.graph.DexItemFactory.isLambdaMetafactoryMethod(com.android.tools.r8.graph.DexMethod):872:872 -> a
+    286:286:boolean com.android.tools.r8.ir.desugar.LambdaDescriptor.isLambdaMetafactoryMethod(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.DexDefinitionSupplier):275 -> a
+    286:286:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1015 -> a
+    287:288:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1016:1017 -> a
+    289:289:com.android.tools.r8.graph.DexProgramClass getProgramHolderOrNull(com.android.tools.r8.graph.DexMember,com.android.tools.r8.graph.ProgramDefinition):781:781 -> a
+    289:289:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1017 -> a
+    290:294:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1019:1023 -> a
+    295:295:java.util.List com.android.tools.r8.graph.DexCallSite.getBootstrapArgs():106:106 -> a
+    295:295:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1025 -> a
+    296:297:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1025:1026 -> a
+    298:298:boolean com.android.tools.r8.graph.DexValue.isDexValueMethodHandle():0:0 -> a
+    298:298:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1026 -> a
+    299:299:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1027:1027 -> a
+    300:300:boolean com.android.tools.r8.graph.DexMethodHandle.isMethodHandle():294:294 -> a
+    300:300:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1028 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    301:301:boolean com.android.tools.r8.graph.DexMethodHandle.isMethodHandle():294:294 -> a
+    301:301:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1028 -> a
+    302:302:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1029:1029 -> a
+    303:303:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.methodHandleReferencedIn(com.android.tools.r8.graph.ProgramMethod):87:87 -> a
+    303:303:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1075 -> a
+    303:303:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1029 -> a
+    304:308:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1075:1079 -> a
+    304:308:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1029 -> a
+    309:309:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
+    309:309:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
+    309:309:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1077 -> a
+    309:309:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1029 -> a
+    310:310:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    310:310:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1077 -> a
+    310:310:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1029 -> a
+    311:311:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1036:1036 -> a
+    312:312:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2522:2522 -> a
+    312:312:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    313:316:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2529:2532 -> a
+    313:316:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    313:316:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    317:317:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":387,"2":388,"3":389}}
+    387:387:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2532:2532 -> a
+    387:387:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    387:387:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    388:388:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2532:2532 -> a
     388:388:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
     388:388:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    389:389:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2534:2534 -> a
+    389:389:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2532:2532 -> a
     389:389:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
     389:389:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    390:390:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2534:2534 -> a
-    390:390:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    390:390:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    318:318:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":391,"2":392,"3":393,"4":394}}
     391:391:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2534:2534 -> a
     391:391:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
     391:391:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    316:321:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2535:2540 -> a
-    316:321:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    316:321:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    322:322:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":397,"2":398,"3":399}}
-    397:397:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2540:2540 -> a
-    397:397:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    397:397:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    398:398:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2540:2540 -> a
-    398:398:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    398:398:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    399:399:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2540:2540 -> a
-    399:399:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    399:399:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    323:323:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":403,"2":404,"3":405,"4":406}}
-    403:403:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2544:2544 -> a
-    403:403:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    403:403:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    404:404:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2544:2544 -> a
-    404:404:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    404:404:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    405:405:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2544:2544 -> a
-    405:405:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    405:405:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    392:392:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2534:2534 -> a
+    392:392:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    392:392:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    393:393:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2534:2534 -> a
+    393:393:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    393:393:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    394:394:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2534:2534 -> a
+    394:394:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    394:394:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    319:324:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2535:2540 -> a
+    319:324:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    319:324:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    325:325:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":400,"2":401,"3":402}}
+    400:400:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2540:2540 -> a
+    400:400:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    400:400:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    401:401:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2540:2540 -> a
+    401:401:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    401:401:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    402:402:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2540:2540 -> a
+    402:402:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    402:402:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    326:326:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":406,"2":407,"3":408,"4":409}}
     406:406:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2544:2544 -> a
     406:406:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
     406:406:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    324:325:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2546:2547 -> a
-    324:325:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
-    324:325:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    326:326:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2524:2524 -> a
-    326:326:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
-    327:327:com.android.tools.r8.shaking.InstantiatedObject com.android.tools.r8.shaking.InstantiatedObject.of(com.android.tools.r8.ir.desugar.LambdaDescriptor):17:17 -> a
-    327:327:void transitionMethodsForInstantiatedLambda(com.android.tools.r8.ir.desugar.LambdaDescriptor):2554 -> a
-    327:327:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1039 -> a
-    328:328:void transitionMethodsForInstantiatedLambda(com.android.tools.r8.ir.desugar.LambdaDescriptor):2554:2554 -> a
-    328:328:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1039 -> a
-    329:329:void transitionMethodsForInstantiatedLambda(com.android.tools.r8.ir.desugar.LambdaDescriptor):2553:2553 -> a
-    329:329:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1039 -> a
-    330:357:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1040:1067 -> a
-    358:358:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFromLambdaCreatedIn(com.android.tools.r8.graph.ProgramMethod):58:58 -> a
-    358:358:void traceInvokeInterfaceFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1325 -> a
-    358:358:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1055 -> a
-    359:359:void traceInvokeInterfaceFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1325:1325 -> a
-    359:359:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1055 -> a
-    360:360:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFromLambdaCreatedIn(com.android.tools.r8.graph.ProgramMethod):58:58 -> a
-    360:360:void traceInvokeDirectFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1304 -> a
-    360:360:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1061 -> a
-    361:361:void traceInvokeDirectFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1304:1304 -> a
-    361:361:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1061 -> a
-    362:362:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064:1064 -> a
-    363:363:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1443:1443 -> a
-    363:363:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064 -> a
-    364:364:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFromLambdaCreatedIn(com.android.tools.r8.graph.ProgramMethod):58:58 -> a
-    364:364:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1444 -> a
-    364:364:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064 -> a
-    365:365:void traceNewInstance(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):1452:1452 -> a
-    365:365:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1443 -> a
-    365:365:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064 -> a
-    366:366:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    366:366:void traceNewInstance(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):1454 -> a
-    366:366:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1443 -> a
+    407:407:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2544:2544 -> a
+    407:407:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    407:407:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    408:408:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2544:2544 -> a
+    408:408:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    408:408:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    409:409:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2544:2544 -> a
+    409:409:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    409:409:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    327:328:void checkLambdaInterface(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):2546:2547 -> a
+    327:328:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2523 -> a
+    327:328:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    329:329:void markLambdaAsInstantiated(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.ProgramMethod):2524:2524 -> a
+    329:329:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1038 -> a
+    330:330:com.android.tools.r8.shaking.InstantiatedObject com.android.tools.r8.shaking.InstantiatedObject.of(com.android.tools.r8.ir.desugar.LambdaDescriptor):17:17 -> a
+    330:330:void transitionMethodsForInstantiatedLambda(com.android.tools.r8.ir.desugar.LambdaDescriptor):2554 -> a
+    330:330:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1039 -> a
+    331:331:void transitionMethodsForInstantiatedLambda(com.android.tools.r8.ir.desugar.LambdaDescriptor):2554:2554 -> a
+    331:331:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1039 -> a
+    332:332:void transitionMethodsForInstantiatedLambda(com.android.tools.r8.ir.desugar.LambdaDescriptor):2553:2553 -> a
+    332:332:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1039 -> a
+    333:360:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1040:1067 -> a
+    361:361:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFromLambdaCreatedIn(com.android.tools.r8.graph.ProgramMethod):58:58 -> a
+    361:361:void traceInvokeInterfaceFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1325 -> a
+    361:361:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1055 -> a
+    362:362:void traceInvokeInterfaceFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1325:1325 -> a
+    362:362:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1055 -> a
+    363:363:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFromLambdaCreatedIn(com.android.tools.r8.graph.ProgramMethod):58:58 -> a
+    363:363:void traceInvokeDirectFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1304 -> a
+    363:363:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1061 -> a
+    364:364:void traceInvokeDirectFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1304:1304 -> a
+    364:364:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1061 -> a
+    365:365:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064:1064 -> a
+    366:366:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1443:1443 -> a
     366:366:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064 -> a
-    367:370:void traceNewInstance(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):1454:1457 -> a
-    367:370:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1443 -> a
-    367:370:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064 -> a
-    371:371:void traceNewInstance(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):1455:1455 -> a
-    371:371:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1443 -> a
-    371:371:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064 -> a
-    372:372:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFromLambdaCreatedIn(com.android.tools.r8.graph.ProgramMethod):58:58 -> a
-    372:372:void traceInvokeVirtualFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1401 -> a
-    372:372:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1058 -> a
-    373:373:void traceInvokeVirtualFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1401:1401 -> a
-    373:373:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1058 -> a
-    374:374:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFromLambdaCreatedIn(com.android.tools.r8.graph.ProgramMethod):58:58 -> a
-    374:374:void traceInvokeStaticFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1346 -> a
-    374:374:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1052 -> a
-    375:375:void traceInvokeStaticFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1346:1346 -> a
-    375:375:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1052 -> a
-    376:376:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.methodHandleReferencedIn(com.android.tools.r8.graph.ProgramMethod):87:87 -> a
-    376:376:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1075 -> a
-    376:376:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1070 -> a
-    377:381:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1075:1079 -> a
-    377:381:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1070 -> a
-    382:382:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
-    382:382:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
-    382:382:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1077 -> a
-    382:382:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1070 -> a
-    383:383:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
-    383:383:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1077 -> a
-    383:383:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1070 -> a
-    407:407:com.android.tools.r8.utils.collections.ProgramMethodSet lambda$traceCallSite$6(com.android.tools.r8.graph.DexCallSite):1040:1040 -> a
-    408:408:void lambda$traceCallSite$7(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.DexType):1041:1041 -> a
-    409:409:void lambda$traceCheckCast$8(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.EnqueuerCheckCastAnalysis):1084:1084 -> a
-    410:414:void handleLockCandidate(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator):1108:1112 -> a
-    410:414:void traceConstClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator,boolean):1098 -> a
-    415:415:void traceConstClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator,boolean):1099:1099 -> a
-    416:428:boolean isConstClassMaybeUsedAsLock(com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator):1128:1140 -> a
-    429:429:boolean com.android.tools.r8.graph.DexItemFactory$ClassMethods.isReflectiveNameLookup(com.android.tools.r8.graph.DexMethod):1598:1598 -> a
-    429:429:boolean isConstClassMaybeUsedAsLock(com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator):1141 -> a
+    367:367:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFromLambdaCreatedIn(com.android.tools.r8.graph.ProgramMethod):58:58 -> a
+    367:367:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1444 -> a
+    367:367:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064 -> a
+    368:368:void traceNewInstance(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):1452:1452 -> a
+    368:368:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1443 -> a
+    368:368:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064 -> a
+    369:369:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    369:369:void traceNewInstance(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):1454 -> a
+    369:369:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1443 -> a
+    369:369:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064 -> a
+    370:373:void traceNewInstance(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):1454:1457 -> a
+    370:373:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1443 -> a
+    370:373:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064 -> a
+    374:374:void traceNewInstance(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):1455:1455 -> a
+    374:374:void traceNewInstanceFromLambda(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1443 -> a
+    374:374:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1064 -> a
+    375:375:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFromLambdaCreatedIn(com.android.tools.r8.graph.ProgramMethod):58:58 -> a
+    375:375:void traceInvokeVirtualFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1401 -> a
+    375:375:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1058 -> a
+    376:376:void traceInvokeVirtualFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1401:1401 -> a
+    376:376:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1058 -> a
+    377:377:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFromLambdaCreatedIn(com.android.tools.r8.graph.ProgramMethod):58:58 -> a
+    377:377:void traceInvokeStaticFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1346 -> a
+    377:377:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1052 -> a
+    378:378:void traceInvokeStaticFromLambda(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1346:1346 -> a
+    378:378:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1052 -> a
+    379:379:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.methodHandleReferencedIn(com.android.tools.r8.graph.ProgramMethod):87:87 -> a
+    379:379:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1075 -> a
+    379:379:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1070 -> a
+    380:384:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1075:1079 -> a
+    380:384:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1070 -> a
+    385:385:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
+    385:385:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
+    385:385:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1077 -> a
+    385:385:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1070 -> a
+    386:386:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    386:386:void disableClosedWorldReasoning(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1077 -> a
+    386:386:void traceCallSite(com.android.tools.r8.graph.DexCallSite,com.android.tools.r8.graph.ProgramMethod):1070 -> a
+    410:410:com.android.tools.r8.utils.collections.ProgramMethodSet lambda$traceCallSite$6(com.android.tools.r8.graph.DexCallSite):1040:1040 -> a
+    411:411:void lambda$traceCallSite$7(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.DexType):1041:1041 -> a
+    412:412:void lambda$traceCheckCast$8(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.EnqueuerCheckCastAnalysis):1084:1084 -> a
+    413:417:void handleLockCandidate(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator):1108:1112 -> a
+    413:417:void traceConstClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator,boolean):1098 -> a
+    418:418:void traceConstClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator,boolean):1099:1099 -> a
+    419:431:boolean isConstClassMaybeUsedAsLock(com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator):1128:1140 -> a
+    432:432:boolean com.android.tools.r8.graph.DexItemFactory$ClassMethods.isReflectiveNameLookup(com.android.tools.r8.graph.DexMethod):1598:1598 -> a
+    432:432:boolean isConstClassMaybeUsedAsLock(com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator):1141 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    430:430:boolean com.android.tools.r8.graph.DexItemFactory$ClassMethods.isReflectiveNameLookup(com.android.tools.r8.graph.DexMethod):1598:1598 -> a
-    430:430:boolean isConstClassMaybeUsedAsLock(com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator):1141 -> a
-    431:438:boolean isConstClassMaybeUsedAsLock(com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator):1141:1148 -> a
-    439:439:boolean lambda$isConstClassMaybeUsedAsLock$10(com.android.tools.r8.code.CfOrDexInstruction):1133:1133 -> a
-    440:440:boolean com.android.tools.r8.cf.code.CfInstruction.isLabel():0:0 -> a
-    440:440:boolean lambda$isConstClassMaybeUsedAsLock$10(com.android.tools.r8.code.CfOrDexInstruction):1133 -> a
-    441:441:boolean lambda$isConstClassMaybeUsedAsLock$10(com.android.tools.r8.code.CfOrDexInstruction):1134:1134 -> a
-    442:442:boolean com.android.tools.r8.cf.code.CfInstruction.isPosition():0:0 -> a
-    442:442:boolean lambda$isConstClassMaybeUsedAsLock$10(com.android.tools.r8.code.CfOrDexInstruction):1134 -> a
-    443:443:com.android.tools.r8.shaking.KeepReason lambda$internalTraceConstClassOrCheckCast$11(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod):1165:1165 -> a
-    444:444:void traceTypeReference(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1262:1262 -> a
-    444:444:void internalTraceConstClassOrCheckCast(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,boolean):1155 -> a
-    445:453:void internalTraceConstClassOrCheckCast(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,boolean):1156:1164 -> a
-    454:454:void lambda$traceInvokeDirect$14(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1280:1280 -> a
-    455:457:boolean registerDeferredActionForDeadProtoBuilder(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.utils.Action):1292:1294 -> a
-    458:458:java.lang.Boolean lambda$registerDeferredActionForDeadProtoBuilder$16(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.utils.Action,com.android.tools.r8.ir.analysis.proto.GeneratedMessageLiteBuilderShrinker):1296:1296 -> a
-    459:459:boolean lambda$registerDeferredActionForDeadProtoBuilder$15(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.utils.Action):1297:1297 -> a
-    460:465:void traceInvokeDirect(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):1309:1314 -> a
-    466:466:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
-    466:466:void traceInvokeDirect(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):1314 -> a
-    467:498:void handleInvokeOfDirectTarget(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2272:2303 -> a
-    467:498:void traceInvokeDirect(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):1316 -> a
-    499:499:void traceInvokeDirect(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):1317:1317 -> a
-    500:500:void lambda$traceInvokeDirect$17(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.EnqueuerInvokeAnalysis):1317:1317 -> a
-    501:513:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1489:1501 -> a
-    514:514:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1500:1500 -> a
-    515:515:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":2042,"2":2043,"3":2044}}
-    2042:2042:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1500:1500 -> a
-    2043:2043:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1500:1500 -> a
-    2044:2044:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1500:1500 -> a
-    2018:2031:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1503:1516 -> a
-    2032:2032:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
-    2032:2032:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1516 -> a
-    2033:2035:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1519:1521 -> a
-    2036:2038:void markTypeAsLive(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDefinition):1804:1806 -> a
-    2036:2038:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1521 -> a
-    2039:2039:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1524:1524 -> a
-    2040:2040:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.fieldReferencedIn(com.android.tools.r8.graph.ProgramMethod):62:62 -> a
-    2040:2040:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1525 -> a
-    2041:2041:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1524:1524 -> a
-    2045:2045:void lambda$traceInstanceFieldRead$23(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.EnqueuerFieldAccessAnalysis):1491:1491 -> a
-    2046:2058:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1551:1563 -> a
-    2059:2059:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1562:1562 -> a
-    2060:2060:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":3644,"2":3645,"3":3646}}
-    3644:3644:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1562:1562 -> a
-    3645:3645:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1562:1562 -> a
-    3646:3646:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1562:1562 -> a
-    3625:3634:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1565:1574 -> a
-    3635:3635:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
-    3635:3635:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1574 -> a
-    3636:3638:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1577:1579 -> a
-    3639:3641:void markTypeAsLive(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDefinition):1804:1806 -> a
-    3639:3641:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1579 -> a
-    3642:3642:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.fieldReferencedIn(com.android.tools.r8.graph.ProgramMethod):62:62 -> a
-    3642:3642:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1582 -> a
-    3643:3643:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1583:1583 -> a
-    3647:3647:java.lang.Boolean lambda$traceStaticFieldRead$30(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.ir.analysis.proto.GeneratedExtensionRegistryShrinker):1639:1639 -> a
-    3648:3648:void lambda$traceStaticFieldRead$32(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.proto.GeneratedExtensionRegistryShrinker):1663:1663 -> a
-    3649:3661:void markTypeAsLive(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):1788:1800 -> a
-    3662:3666:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1825:1829 -> a
-    3667:3667:boolean com.android.tools.r8.shaking.Enqueuer$Mode.isFinalMainDexTracing():220:220 -> a
-    3667:3667:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1829 -> a
-    3668:3671:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1829:1829 -> a
-    3672:3672:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":5656,"2":5657,"3":5658}}
-    5656:5656:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1829:1829 -> a
-    5657:5657:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1829:1829 -> a
-    5658:5658:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1829:1829 -> a
-    5504:5506:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1832:1834 -> a
-    5507:5507:boolean com.android.tools.r8.ir.optimize.enums.EnumDataMap.isUnboxedEnum(com.android.tools.r8.graph.DexProgramClass):28:28 -> a
-    5507:5507:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1834 -> a
-    5508:5518:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1834:1844 -> a
-    5519:5525:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1843:1849 -> a
-    5526:5562:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1848:1884 -> a
-    5563:5563:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
-    5563:5563:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1884 -> a
-    5564:5564:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1887:1887 -> a
-    5565:5565:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reachableFromLiveType(com.android.tools.r8.graph.DexType):46:46 -> a
-    5565:5565:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1887 -> a
-    5566:5575:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1889:1898 -> a
-    5576:5579:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):805:808 -> a
-    5576:5579:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
-    5580:5580:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":5659,"2":5660,"3":5661}}
-    5659:5659:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):808:808 -> a
-    5659:5659:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
-    5660:5660:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):808:808 -> a
-    5660:5660:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
-    5661:5661:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):808:808 -> a
-    5661:5661:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
-    5581:5583:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):811:813 -> a
-    5581:5583:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
-    5584:5596:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):808:820 -> a
-    5584:5596:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
-    5597:5597:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":5673,"2":5674,"3":5675}}
-    5673:5673:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):820:820 -> a
-    5673:5673:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
-    5674:5674:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):820:820 -> a
-    5674:5674:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
-    5675:5675:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):820:820 -> a
-    5675:5675:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
-    5598:5600:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):823:825 -> a
-    5598:5600:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
-    5601:5601:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):820:820 -> a
-    5601:5601:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
-    5602:5605:void transitionUnusedInterfaceToLive(com.android.tools.r8.graph.DexProgramClass):2809:2812 -> a
-    5602:5605:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1906 -> a
-    5606:5606:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramDefinition):1811:1811 -> a
-    5606:5606:void transitionUnusedInterfaceToLive(com.android.tools.r8.graph.DexProgramClass):2813 -> a
-    5606:5606:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1906 -> a
-    5607:5607:void transitionUnusedInterfaceToLive(com.android.tools.r8.graph.DexProgramClass):2817:2817 -> a
-    5607:5607:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1906 -> a
-    5608:5610:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1923:1925 -> a
-    5611:5611:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845:845 -> a
-    5611:5611:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1925 -> a
-    5612:5612:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isSerializable(com.android.tools.r8.graph.DexType):443:443 -> a
-    5612:5612:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    5612:5612:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1925 -> a
-    5613:5613:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isSerializable(com.android.tools.r8.graph.DexType):443:443 -> a
-    5613:5613:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845 -> a
-    5613:5613:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1925 -> a
-    5614:5614:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):912:912 -> a
-    5614:5614:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5615:5615:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845:845 -> a
-    5615:5615:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):912 -> a
-    5615:5615:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5616:5616:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isSerializable(com.android.tools.r8.graph.DexType):443:443 -> a
-    5616:5616:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    5616:5616:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):912 -> a
-    5616:5616:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5617:5617:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isSerializable(com.android.tools.r8.graph.DexType):443:443 -> a
-    5617:5617:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845 -> a
-    5617:5617:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):912 -> a
-    5617:5617:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5618:5621:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):912:915 -> a
-    5618:5621:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5622:5622:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845:845 -> a
-    5622:5622:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):915 -> a
-    5622:5622:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5623:5623:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isSerializable(com.android.tools.r8.graph.DexType):443:443 -> a
-    5623:5623:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    5623:5623:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):915 -> a
-    5623:5623:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    433:433:boolean com.android.tools.r8.graph.DexItemFactory$ClassMethods.isReflectiveNameLookup(com.android.tools.r8.graph.DexMethod):1598:1598 -> a
+    433:433:boolean isConstClassMaybeUsedAsLock(com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator):1141 -> a
+    434:441:boolean isConstClassMaybeUsedAsLock(com.android.tools.r8.graph.ProgramMethod,java.util.ListIterator):1141:1148 -> a
+    442:442:boolean lambda$isConstClassMaybeUsedAsLock$10(com.android.tools.r8.code.CfOrDexInstruction):1133:1133 -> a
+    443:443:boolean com.android.tools.r8.cf.code.CfInstruction.isLabel():0:0 -> a
+    443:443:boolean lambda$isConstClassMaybeUsedAsLock$10(com.android.tools.r8.code.CfOrDexInstruction):1133 -> a
+    444:444:boolean lambda$isConstClassMaybeUsedAsLock$10(com.android.tools.r8.code.CfOrDexInstruction):1134:1134 -> a
+    445:445:boolean com.android.tools.r8.cf.code.CfInstruction.isPosition():0:0 -> a
+    445:445:boolean lambda$isConstClassMaybeUsedAsLock$10(com.android.tools.r8.code.CfOrDexInstruction):1134 -> a
+    446:446:com.android.tools.r8.shaking.KeepReason lambda$internalTraceConstClassOrCheckCast$11(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod):1165:1165 -> a
+    447:447:void traceTypeReference(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):1262:1262 -> a
+    447:447:void internalTraceConstClassOrCheckCast(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,boolean):1155 -> a
+    448:456:void internalTraceConstClassOrCheckCast(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,boolean):1156:1164 -> a
+    457:457:void lambda$traceInvokeDirect$14(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):1280:1280 -> a
+    458:464:boolean registerDeferredActionForDeadProtoBuilder(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.utils.Action):1292:1298 -> a
+    465:465:boolean registerDeferredActionForDeadProtoBuilder(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.utils.Action):1294:1294 -> a
+    466:466:java.lang.Boolean lambda$registerDeferredActionForDeadProtoBuilder$16(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.utils.Action,com.android.tools.r8.ir.analysis.proto.GeneratedMessageLiteBuilderShrinker):1296:1296 -> a
+    467:467:boolean lambda$registerDeferredActionForDeadProtoBuilder$15(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.utils.Action):1297:1297 -> a
+    468:473:void traceInvokeDirect(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):1309:1314 -> a
+    474:474:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
+    474:474:void traceInvokeDirect(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):1314 -> a
+    475:506:void handleInvokeOfDirectTarget(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2272:2303 -> a
+    475:506:void traceInvokeDirect(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):1316 -> a
+    507:507:void traceInvokeDirect(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):1317:1317 -> a
+    508:508:void lambda$traceInvokeDirect$17(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.EnqueuerInvokeAnalysis):1317:1317 -> a
+    509:521:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1489:1501 -> a
+    522:522:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1500:1500 -> a
+    523:523:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":2050,"2":2051,"3":2052}}
+    2050:2050:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1500:1500 -> a
+    2051:2051:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1500:1500 -> a
+    2052:2052:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1500:1500 -> a
+    2026:2039:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1503:1516 -> a
+    2040:2040:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
+    2040:2040:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1516 -> a
+    2041:2043:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1519:1521 -> a
+    2044:2046:void markTypeAsLive(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDefinition):1804:1806 -> a
+    2044:2046:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1521 -> a
+    2047:2047:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1524:1524 -> a
+    2048:2048:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.fieldReferencedIn(com.android.tools.r8.graph.ProgramMethod):62:62 -> a
+    2048:2048:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1525 -> a
+    2049:2049:void lambda$traceInstanceFieldRead$24(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.Enqueuer$FieldReadType,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1524:1524 -> a
+    2053:2053:void lambda$traceInstanceFieldRead$23(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.EnqueuerFieldAccessAnalysis):1491:1491 -> a
+    2054:2066:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1551:1563 -> a
+    2067:2067:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1562:1562 -> a
+    2068:2068:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":3652,"2":3653,"3":3654}}
+    3652:3652:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1562:1562 -> a
+    3653:3653:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1562:1562 -> a
+    3654:3654:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1562:1562 -> a
+    3633:3642:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1565:1574 -> a
+    3643:3643:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
+    3643:3643:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1574 -> a
+    3644:3646:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1577:1579 -> a
+    3647:3649:void markTypeAsLive(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDefinition):1804:1806 -> a
+    3647:3649:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1579 -> a
+    3650:3650:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.fieldReferencedIn(com.android.tools.r8.graph.ProgramMethod):62:62 -> a
+    3650:3650:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1582 -> a
+    3651:3651:void lambda$traceInstanceFieldWrite$27(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,boolean,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):1583:1583 -> a
+    3655:3655:java.lang.Boolean lambda$traceStaticFieldRead$30(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.ir.analysis.proto.GeneratedExtensionRegistryShrinker):1639:1639 -> a
+    3656:3656:void lambda$traceStaticFieldRead$32(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.analysis.proto.GeneratedExtensionRegistryShrinker):1663:1663 -> a
+    3657:3669:void markTypeAsLive(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):1788:1800 -> a
+    3670:3670:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramDefinition):1811:1811 -> a
+    3671:3675:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1825:1829 -> a
+    3676:3676:boolean com.android.tools.r8.shaking.Enqueuer$Mode.isFinalMainDexTracing():220:220 -> a
+    3676:3676:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1829 -> a
+    3677:3680:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1829:1829 -> a
+    3681:3681:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":5665,"2":5666,"3":5667}}
+    5665:5665:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1829:1829 -> a
+    5666:5666:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1829:1829 -> a
+    5667:5667:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1829:1829 -> a
+    5513:5515:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1832:1834 -> a
+    5516:5516:boolean com.android.tools.r8.ir.optimize.enums.EnumDataMap.isUnboxedEnum(com.android.tools.r8.graph.DexProgramClass):28:28 -> a
+    5516:5516:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1834 -> a
+    5517:5527:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1834:1844 -> a
+    5528:5534:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1843:1849 -> a
+    5535:5571:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1848:1884 -> a
+    5572:5572:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
+    5572:5572:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1884 -> a
+    5573:5573:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1887:1887 -> a
+    5574:5574:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reachableFromLiveType(com.android.tools.r8.graph.DexType):46:46 -> a
+    5574:5574:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1887 -> a
+    5575:5584:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1889:1898 -> a
+    5585:5588:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):805:808 -> a
+    5585:5588:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
+    5589:5589:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":5668,"2":5669,"3":5670}}
+    5668:5668:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):808:808 -> a
+    5668:5668:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
+    5669:5669:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):808:808 -> a
+    5669:5669:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
+    5670:5670:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):808:808 -> a
+    5670:5670:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
+    5590:5592:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):811:813 -> a
+    5590:5592:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
+    5593:5605:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):808:820 -> a
+    5593:5605:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
+    5606:5606:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":5682,"2":5683,"3":5684}}
+    5682:5682:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):820:820 -> a
+    5682:5682:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
+    5683:5683:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):820:820 -> a
+    5683:5683:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
+    5684:5684:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):820:820 -> a
+    5684:5684:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
+    5607:5609:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):823:825 -> a
+    5607:5609:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
+    5610:5610:void warnIfClassExtendsInterfaceOrImplementsClass(com.android.tools.r8.graph.DexProgramClass):820:820 -> a
+    5610:5610:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1902 -> a
+    5611:5619:void transitionUnusedInterfaceToLive(com.android.tools.r8.graph.DexProgramClass):2809:2817 -> a
+    5611:5619:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1906 -> a
+    5620:5622:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1923:1925 -> a
+    5623:5623:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845:845 -> a
+    5623:5623:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1925 -> a
     5624:5624:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isSerializable(com.android.tools.r8.graph.DexType):443:443 -> a
     5624:5624:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845 -> a
-    5624:5624:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):915 -> a
-    5624:5624:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5625:5625:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):916:916 -> a
-    5625:5625:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5626:5626:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
-    5626:5626:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
-    5626:5626:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):922 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    5624:5624:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1925 -> a
+    5625:5625:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isSerializable(com.android.tools.r8.graph.DexType):443:443 -> a
+    5625:5625:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845 -> a
+    5625:5625:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1925 -> a
+    5626:5626:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):912:912 -> a
     5626:5626:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5627:5630:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):923:926 -> a
-    5627:5630:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5631:5631:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
-    5631:5631:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
-    5631:5631:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):924 -> a
-    5631:5631:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5632:5632:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
-    5632:5632:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):924 -> a
-    5632:5632:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
-    5633:5634:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1930:1931 -> a
-    5635:5635:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2043:2043 -> a
-    5635:5635:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1933 -> a
-    5636:5636:com.android.tools.r8.graph.DexAnnotation$AnnotatedKind com.android.tools.r8.graph.DexAnnotation$AnnotatedKind.from(com.android.tools.r8.graph.ProgramDefinition):40:40 -> a
-    5636:5636:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2044 -> a
-    5636:5636:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1933 -> a
-    5637:5637:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049:2049 -> a
-    5637:5637:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> a
-    5637:5637:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1933 -> a
-    5638:5639:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation[],com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2054:2055 -> a
-    5638:5639:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049 -> a
-    5638:5639:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> a
-    5638:5639:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1933 -> a
-    5640:5640:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    5640:5640:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1936 -> a
-    5641:5647:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1937:1943 -> a
-    5648:5648:java.util.Set com.android.tools.r8.shaking.RootSetUtils$RootSetBase.getDependentKeepClassCompatRule(com.android.tools.r8.graph.DexType):1681:1681 -> a
-    5648:5648:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1943 -> a
+    5627:5627:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845:845 -> a
+    5627:5627:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):912 -> a
+    5627:5627:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5628:5628:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isSerializable(com.android.tools.r8.graph.DexType):443:443 -> a
+    5628:5628:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    5649:5649:java.util.Set com.android.tools.r8.shaking.RootSetUtils$RootSetBase.getDependentKeepClassCompatRule(com.android.tools.r8.graph.DexType):1681:1681 -> a
-    5649:5649:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1943 -> a
-    5650:5654:void compatEnqueueHolderIfDependentNonStaticMember(com.android.tools.r8.graph.DexProgramClass,java.util.Set):932:936 -> a
-    5650:5654:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1942 -> a
-    5655:5655:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1945:1945 -> a
-    5676:5676:com.android.tools.r8.graph.DexAnnotation$AnnotatedKind lambda$markTypeAsLive$40(com.android.tools.r8.graph.ProgramDefinition):1939:1939 -> a
-    5677:5677:void lambda$markTypeAsLive$41(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):1945:1945 -> a
-    5678:5681:void processDeferredAnnotations(com.android.tools.r8.graph.DexProgramClass,java.util.Map,java.util.function.Function):1953:1956 -> a
-    5682:5684:void processDeferredAnnotations(com.android.tools.r8.graph.DexProgramClass,java.util.Map,java.util.function.Function):1955:1957 -> a
-    5685:5685:boolean lambda$processDeferredAnnotations$42(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexAnnotation):1956:1956 -> a
-    5686:5686:void lambda$processDeferredAnnotations$44(java.util.function.Function,com.android.tools.r8.graph.DexAnnotation,java.util.List):1959:1959 -> a
-    5687:5687:void lambda$processDeferredAnnotations$43(com.android.tools.r8.graph.DexAnnotation,java.util.function.Function,com.android.tools.r8.graph.ProgramDefinition):1962:1962 -> a
-    5688:5688:void lambda$processDeferredAnnotations$43(com.android.tools.r8.graph.DexAnnotation,java.util.function.Function,com.android.tools.r8.graph.ProgramDefinition):1961:1961 -> a
-    5689:5692:void ensureMethodsContinueToWidenAccess(com.android.tools.r8.graph.ClassDefinition):1967:1970 -> a
-    5693:5695:void ensureMethodsContinueToWidenAccess(com.android.tools.r8.graph.ClassDefinition):1969:1971 -> a
-    5696:5696:void com.android.tools.r8.graph.MethodCollection.forEachVirtualMethod(java.util.function.Consumer):154:154 -> a
-    5696:5696:void ensureMethodsContinueToWidenAccess(com.android.tools.r8.graph.ClassDefinition):1971 -> a
-    5697:5697:void com.android.tools.r8.graph.MethodCollection.forEachVirtualMethod(java.util.function.Consumer):154:154 -> a
-    5697:5697:void ensureMethodsContinueToWidenAccess(com.android.tools.r8.graph.ClassDefinition):1971 -> a
+    5628:5628:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):912 -> a
+    5628:5628:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5629:5629:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isSerializable(com.android.tools.r8.graph.DexType):443:443 -> a
+    5629:5629:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845 -> a
+    5629:5629:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):912 -> a
+    5629:5629:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5630:5633:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):912:915 -> a
+    5630:5633:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5634:5634:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845:845 -> a
+    5634:5634:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):915 -> a
+    5634:5634:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5635:5635:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isSerializable(com.android.tools.r8.graph.DexType):443:443 -> a
+    5635:5635:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    5698:5698:void ensureMethodsContinueToWidenAccess(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.KeepReason):1976:1976 -> a
-    5699:5701:boolean lambda$ensureMethodsContinueToWidenAccess$46(com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod):1978:1980 -> a
-    5702:5702:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.methodDefinedInInterfaces(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexType):506:506 -> a
-    5702:5702:boolean lambda$ensureMethodsContinueToWidenAccess$46(com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod):1980 -> a
+    5635:5635:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):915 -> a
+    5635:5635:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5636:5636:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.isSerializable(com.android.tools.r8.graph.DexType):443:443 -> a
+    5636:5636:boolean com.android.tools.r8.graph.DexClass.isSerializable(com.android.tools.r8.graph.AppView):845 -> a
+    5636:5636:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):915 -> a
+    5636:5636:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5637:5637:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):916:916 -> a
+    5637:5637:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5638:5638:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
+    5638:5638:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
+    5638:5638:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):922 -> a
+    5638:5638:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5639:5642:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):923:926 -> a
+    5639:5642:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5643:5643:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
+    5643:5643:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
+    5643:5643:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):924 -> a
+    5643:5643:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5644:5644:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    5644:5644:void enqueueFirstNonSerializableClassInitializer(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):924 -> a
+    5644:5644:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1926 -> a
+    5645:5648:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1930:1933 -> a
+    5649:5649:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    5649:5649:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1936 -> a
+    5650:5656:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1937:1943 -> a
+    5657:5657:java.util.Set com.android.tools.r8.shaking.RootSetUtils$RootSetBase.getDependentKeepClassCompatRule(com.android.tools.r8.graph.DexType):1681:1681 -> a
+    5657:5657:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1943 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    5706:5707:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.methodDefinedInInterfaces(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexType):510:511 -> a
-    5706:5707:boolean lambda$ensureMethodsContinueToWidenAccess$46(com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod):1980 -> a
-    5708:5711:void processAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2061:2064 -> a
-    5712:5717:boolean shouldKeepAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind,boolean):2094:2099 -> a
-    5712:5717:void processAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2065 -> a
-    5718:5718:void processAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2069:2069 -> a
-    5719:5719:boolean com.android.tools.r8.graph.DexAnnotation$AnnotatedKind.isParameter():48:48 -> a
-    5719:5719:void processAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2069 -> a
-    5720:5737:void processAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2069:2086 -> a
-    5738:5738:java.util.List lambda$processAnnotation$50(com.android.tools.r8.graph.DexAnnotation):2073:2073 -> a
-    5739:5740:com.android.tools.r8.graph.FieldResolutionResult resolveField(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition):2105:2106 -> a
-    5741:5741:void com.android.tools.r8.graph.FieldResolutionResult.visitFieldResolutionResults(java.util.function.Consumer,java.util.function.Consumer):124:124 -> a
-    5741:5741:com.android.tools.r8.graph.FieldResolutionResult resolveField(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition):2106 -> a
+    5658:5658:java.util.Set com.android.tools.r8.shaking.RootSetUtils$RootSetBase.getDependentKeepClassCompatRule(com.android.tools.r8.graph.DexType):1681:1681 -> a
+    5658:5658:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1943 -> a
+    5659:5663:void compatEnqueueHolderIfDependentNonStaticMember(com.android.tools.r8.graph.DexProgramClass,java.util.Set):932:936 -> a
+    5659:5663:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1942 -> a
+    5664:5664:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):1945:1945 -> a
+    5685:5685:com.android.tools.r8.graph.DexAnnotation$AnnotatedKind lambda$markTypeAsLive$40(com.android.tools.r8.graph.ProgramDefinition):1939:1939 -> a
+    5686:5686:void lambda$markTypeAsLive$41(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):1945:1945 -> a
+    5687:5690:void processDeferredAnnotations(com.android.tools.r8.graph.DexProgramClass,java.util.Map,java.util.function.Function):1953:1956 -> a
+    5691:5693:void processDeferredAnnotations(com.android.tools.r8.graph.DexProgramClass,java.util.Map,java.util.function.Function):1955:1957 -> a
+    5694:5694:boolean lambda$processDeferredAnnotations$42(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexAnnotation):1956:1956 -> a
+    5695:5695:void lambda$processDeferredAnnotations$44(java.util.function.Function,com.android.tools.r8.graph.DexAnnotation,java.util.List):1959:1959 -> a
+    5696:5696:void lambda$processDeferredAnnotations$43(com.android.tools.r8.graph.DexAnnotation,java.util.function.Function,com.android.tools.r8.graph.ProgramDefinition):1962:1962 -> a
+    5697:5697:void lambda$processDeferredAnnotations$43(com.android.tools.r8.graph.DexAnnotation,java.util.function.Function,com.android.tools.r8.graph.ProgramDefinition):1961:1961 -> a
+    5698:5701:void ensureMethodsContinueToWidenAccess(com.android.tools.r8.graph.ClassDefinition):1967:1970 -> a
+    5702:5704:void ensureMethodsContinueToWidenAccess(com.android.tools.r8.graph.ClassDefinition):1969:1971 -> a
+    5705:5705:void com.android.tools.r8.graph.MethodCollection.forEachVirtualMethod(java.util.function.Consumer):154:154 -> a
+    5705:5705:void ensureMethodsContinueToWidenAccess(com.android.tools.r8.graph.ClassDefinition):1971 -> a
+    5706:5706:void com.android.tools.r8.graph.MethodCollection.forEachVirtualMethod(java.util.function.Consumer):154:154 -> a
+    5706:5706:void ensureMethodsContinueToWidenAccess(com.android.tools.r8.graph.ClassDefinition):1971 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    5742:5742:void lambda$resolveField$51(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):2109:2109 -> a
-    5743:5744:void recordFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDerivedContext):650:651 -> a
-    5743:5744:void lambda$resolveField$51(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):2108 -> a
-    5745:5745:void lambda$resolveField$52(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):2112:2112 -> a
-    5746:5747:void recordFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDerivedContext):650:651 -> a
-    5746:5747:void lambda$resolveField$52(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):2113 -> a
-    5748:5751:com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult resolveMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason,boolean):2135:2138 -> a
-    5752:5757:com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult resolveMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason,boolean):2137:2142 -> a
-    5758:5762:com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult resolveMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason,boolean):2141:2145 -> a
-    5763:5794:void handleInvokeOfDirectTarget(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2272:2303 -> a
-    5763:5794:void markNonStaticDirectMethodAsReachable(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2267 -> a
-    5795:5808:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2308:2321 -> a
-    5809:5809:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reachableFromLiveType(com.android.tools.r8.graph.DexType):46:46 -> a
-    5809:5809:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2321 -> a
-    5810:5820:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2322:2332 -> a
-    5821:5821:boolean com.android.tools.r8.errors.dontwarn.DontWarnConfiguration.matches(com.android.tools.r8.graph.Definition):27:27 -> a
-    5821:5821:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2332 -> a
-    5822:5823:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2337:2338 -> a
-    5824:5824:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":8173,"2":8174,"3":8175}}
-    8173:8173:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2338:2338 -> a
-    8174:8174:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2338:2338 -> a
-    8175:8175:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2338:2338 -> a
-    8162:8172:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2338:2348 -> a
-    8176:8178:void lambda$ensureFromLibraryOrThrow$53(com.android.tools.r8.shaking.KeepReason,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexClass,java.lang.Boolean):2326:2328 -> a
-    8179:8181:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2360:2362 -> a
-    8182:8182:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> a
-    8182:8182:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2363 -> a
-    8183:8183:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
-    8183:8183:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> a
+    5707:5707:void ensureMethodsContinueToWidenAccess(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.shaking.KeepReason):1976:1976 -> a
+    5708:5710:boolean lambda$ensureMethodsContinueToWidenAccess$46(com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod):1978:1980 -> a
+    5711:5711:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.methodDefinedInInterfaces(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexType):506:506 -> a
+    5711:5711:boolean lambda$ensureMethodsContinueToWidenAccess$46(com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod):1980 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8183:8183:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2363 -> a
-    8184:8184:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2355:2355 -> a
-    8184:8184:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2363 -> a
-    8185:8185:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2364:2364 -> a
-    8186:8186:void com.android.tools.r8.graph.DexProgramClass.forEachProgramField(java.util.function.Consumer):196:196 -> a
-    8186:8186:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2364 -> a
-    8187:8187:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2370:2370 -> a
-    8188:8188:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2366:2366 -> a
-    8189:8189:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> a
-    8189:8189:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2367 -> a
-    8190:8190:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
-    8190:8190:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> a
+    5715:5716:boolean com.android.tools.r8.graph.AppInfoWithClassHierarchy.methodDefinedInInterfaces(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexType):510:511 -> a
+    5715:5716:boolean lambda$ensureMethodsContinueToWidenAccess$46(com.android.tools.r8.shaking.ScopedDexMethodSet,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod):1980 -> a
+    5717:5720:void processAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2061:2064 -> a
+    5721:5726:boolean shouldKeepAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind,boolean):2094:2099 -> a
+    5721:5726:void processAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2065 -> a
+    5727:5727:void processAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2069:2069 -> a
+    5728:5728:boolean com.android.tools.r8.graph.DexAnnotation$AnnotatedKind.isParameter():48:48 -> a
+    5728:5728:void processAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2069 -> a
+    5729:5746:void processAnnotation(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2069:2086 -> a
+    5747:5747:java.util.List lambda$processAnnotation$50(com.android.tools.r8.graph.DexAnnotation):2073:2073 -> a
+    5748:5749:com.android.tools.r8.graph.FieldResolutionResult resolveField(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition):2105:2106 -> a
+    5750:5750:void com.android.tools.r8.graph.FieldResolutionResult.visitFieldResolutionResults(java.util.function.Consumer,java.util.function.Consumer):124:124 -> a
+    5750:5750:com.android.tools.r8.graph.FieldResolutionResult resolveField(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition):2106 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8190:8190:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2367 -> a
-    8191:8191:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2355:2355 -> a
-    8191:8191:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2367 -> a
-    8192:8192:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2368:2368 -> a
-    8193:8193:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2372:2372 -> a
-    8194:8194:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> a
-    8194:8194:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2373 -> a
-    8195:8195:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
-    8195:8195:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> a
+    5751:5751:void lambda$resolveField$51(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):2109:2109 -> a
+    5752:5753:void recordFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDerivedContext):650:651 -> a
+    5752:5753:void lambda$resolveField$51(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.FieldResolutionResult$SingleFieldResolutionResult):2108 -> a
+    5754:5754:void lambda$resolveField$52(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):2112:2112 -> a
+    5755:5756:void recordFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDerivedContext):650:651 -> a
+    5755:5756:void lambda$resolveField$52(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):2113 -> a
+    5757:5760:com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult resolveMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason,boolean):2135:2138 -> a
+    5761:5766:com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult resolveMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason,boolean):2137:2142 -> a
+    5767:5771:com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult resolveMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason,boolean):2141:2145 -> a
+    5772:5803:void handleInvokeOfDirectTarget(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2272:2303 -> a
+    5772:5803:void markNonStaticDirectMethodAsReachable(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2267 -> a
+    5804:5817:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2308:2321 -> a
+    5818:5818:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reachableFromLiveType(com.android.tools.r8.graph.DexType):46:46 -> a
+    5818:5818:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2321 -> a
+    5819:5829:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2322:2332 -> a
+    5830:5830:boolean com.android.tools.r8.errors.dontwarn.DontWarnConfiguration.matches(com.android.tools.r8.graph.Definition):27:27 -> a
+    5830:5830:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2332 -> a
+    5831:5832:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2337:2338 -> a
+    5833:5833:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":8182,"2":8183,"3":8184}}
+    8182:8182:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2338:2338 -> a
+    8183:8183:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2338:2338 -> a
+    8184:8184:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2338:2338 -> a
+    8171:8181:void ensureFromLibraryOrThrow(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexLibraryClass):2338:2348 -> a
+    8185:8187:void lambda$ensureFromLibraryOrThrow$53(com.android.tools.r8.shaking.KeepReason,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexClass,java.lang.Boolean):2326:2328 -> a
+    8188:8190:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2360:2362 -> a
+    8191:8191:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> a
+    8191:8191:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2363 -> a
+    8192:8192:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
+    8192:8192:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8195:8195:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2373 -> a
-    8196:8196:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2355:2355 -> a
-    8196:8196:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2373 -> a
-    8197:8197:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2374:2374 -> a
-    8198:8200:void recordFoundClass(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):2379:2381 -> a
-    8201:8203:void markTypeAsLive(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDefinition):1804:1806 -> a
-    8201:8203:void recordFoundClass(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):2381 -> a
-    8204:8204:void recordFoundClass(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):2384:2384 -> a
-    8205:8205:void lambda$recordNonProgramClass$57(com.android.tools.r8.graph.ProgramDerivedContext,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ClasspathOrLibraryDefinition):2394:2394 -> a
-    8206:8206:void ignoreMissingClass(com.android.tools.r8.graph.DexType):2407:2407 -> a
-    8206:8206:void ignoreMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2411 -> a
-    8206:8206:void access$2600(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):193 -> a
+    8192:8192:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2363 -> a
+    8193:8193:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2355:2355 -> a
+    8193:8193:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2363 -> a
+    8194:8194:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2364:2364 -> a
+    8195:8195:void com.android.tools.r8.graph.DexProgramClass.forEachProgramField(java.util.function.Consumer):196:196 -> a
+    8195:8195:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2364 -> a
+    8196:8196:void keepClassAndAllMembers(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):2370:2370 -> a
+    8197:8197:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2366:2366 -> a
+    8198:8198:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> a
+    8198:8198:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2367 -> a
+    8199:8199:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
+    8199:8199:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8199:8199:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2367 -> a
+    8200:8200:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2355:2355 -> a
+    8200:8200:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2367 -> a
+    8201:8201:void lambda$keepClassAndAllMembers$55(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramField):2368:2368 -> a
+    8202:8202:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2372:2372 -> a
+    8203:8203:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> a
+    8203:8203:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2373 -> a
+    8204:8204:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> a
+    8204:8204:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8204:8204:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2373 -> a
+    8205:8205:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2355:2355 -> a
+    8205:8205:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2373 -> a
+    8206:8206:void lambda$keepClassAndAllMembers$56(com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness,com.android.tools.r8.graph.ProgramMethod):2374:2374 -> a
+    8207:8209:void recordFoundClass(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):2379:2381 -> a
+    8210:8212:void markTypeAsLive(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDefinition):1804:1806 -> a
+    8210:8212:void recordFoundClass(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):2381 -> a
+    8213:8213:void recordFoundClass(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):2384:2384 -> a
+    8214:8214:void lambda$recordNonProgramClass$57(com.android.tools.r8.graph.ProgramDerivedContext,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ClasspathOrLibraryDefinition):2394:2394 -> a
+    8215:8215:void ignoreMissingClass(com.android.tools.r8.graph.DexType):2407:2407 -> a
+    8215:8215:void ignoreMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2411 -> a
+    8215:8215:void access$2600(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):193 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
-    8207:8207:void ignoreMissingClass(com.android.tools.r8.graph.DexType):2407:2407 -> a
-    8207:8207:void ignoreMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2411 -> a
-    8207:8207:void access$2600(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):193 -> a
-    8208:8208:void ignoreMissingClass(com.android.tools.r8.graph.DexType):2407:2407 -> a
-    8208:8208:void ignoreMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2411 -> a
-    8209:8209:void ignoreMissingClass(com.android.tools.r8.graph.DexType):2407:2407 -> a
-    8209:8209:void ignoreMissingClasspathOrLibraryClass(com.android.tools.r8.graph.DexType):2415 -> a
-    8209:8209:void ignoreMissingClasspathOrLibraryClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ClasspathOrLibraryDefinition):2420 -> a
-    8210:8210:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2460:2460 -> a
-    8211:8211:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    8211:8211:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2460 -> a
+    8216:8216:void ignoreMissingClass(com.android.tools.r8.graph.DexType):2407:2407 -> a
+    8216:8216:void ignoreMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2411 -> a
+    8216:8216:void access$2600(com.android.tools.r8.shaking.Enqueuer,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):193 -> a
+    8217:8217:void ignoreMissingClass(com.android.tools.r8.graph.DexType):2407:2407 -> a
+    8217:8217:void ignoreMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2411 -> a
+    8218:8218:void ignoreMissingClass(com.android.tools.r8.graph.DexType):2407:2407 -> a
+    8218:8218:void ignoreMissingClasspathOrLibraryClass(com.android.tools.r8.graph.DexType):2415 -> a
+    8218:8218:void ignoreMissingClasspathOrLibraryClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ClasspathOrLibraryDefinition):2420 -> a
+    8219:8219:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2460:2460 -> a
+    8220:8220:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    8220:8220:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2460 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8212:8212:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    8212:8212:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2460 -> a
-    8213:8219:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2460:2466 -> a
-    8220:8221:boolean markInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2496:2497 -> a
-    8220:8221:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2470 -> a
-    8222:8223:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2474:2475 -> a
-    8224:8224:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
-    8224:8224:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2475 -> a
-    8225:8227:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2478:2480 -> a
-    8228:8228:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    8228:8228:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2558 -> a
+    8221:8221:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    8221:8221:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2460 -> a
+    8222:8228:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2460:2466 -> a
+    8229:8230:boolean markInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2496:2497 -> a
+    8229:8230:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2470 -> a
+    8231:8232:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2474:2475 -> a
+    8233:8233:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
+    8233:8233:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2475 -> a
+    8234:8236:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2478:2480 -> a
+    8237:8237:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    8237:8237:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2558 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8228:8228:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
-    8229:8229:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    8229:8229:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2558 -> a
-    8229:8229:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
-    8230:8231:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2558:2559 -> a
-    8230:8231:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
-    8232:8232:com.android.tools.r8.shaking.InstantiatedObject com.android.tools.r8.shaking.InstantiatedObject.of(com.android.tools.r8.graph.DexProgramClass):13:13 -> a
-    8232:8232:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2561 -> a
-    8232:8232:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
-    8233:8233:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2561:2561 -> a
-    8233:8233:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
-    8234:8234:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2560:2560 -> a
-    8234:8234:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
-    8235:8238:void transitionFieldsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2745:2748 -> a
-    8235:8238:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2485 -> a
-    8239:8239:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reachableFromLiveType(com.android.tools.r8.graph.DexType):46:46 -> a
-    8239:8239:void transitionFieldsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2748 -> a
-    8239:8239:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2485 -> a
-    8240:8245:void transitionFieldsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2749:2754 -> a
-    8240:8245:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2485 -> a
-    8246:8246:void transitionDependentItemsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2758:2758 -> a
-    8246:8246:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2487 -> a
-    8247:8247:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    8247:8247:void transitionDependentItemsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2758 -> a
+    8237:8237:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
+    8238:8238:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    8238:8238:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2558 -> a
+    8238:8238:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
+    8239:8240:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2558:2559 -> a
+    8239:8240:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
+    8241:8241:com.android.tools.r8.shaking.InstantiatedObject com.android.tools.r8.shaking.InstantiatedObject.of(com.android.tools.r8.graph.DexProgramClass):13:13 -> a
+    8241:8241:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2561 -> a
+    8241:8241:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
+    8242:8242:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2561:2561 -> a
+    8242:8242:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
+    8243:8243:void transitionMethodsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2560:2560 -> a
+    8243:8243:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2483 -> a
+    8244:8247:void transitionFieldsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2745:2748 -> a
+    8244:8247:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2485 -> a
+    8248:8248:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reachableFromLiveType(com.android.tools.r8.graph.DexType):46:46 -> a
+    8248:8248:void transitionFieldsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2748 -> a
+    8248:8248:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2485 -> a
+    8249:8254:void transitionFieldsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2749:2754 -> a
+    8249:8254:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2485 -> a
+    8255:8255:void transitionDependentItemsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2758:2758 -> a
+    8255:8255:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2487 -> a
+    8256:8256:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    8256:8256:void transitionDependentItemsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2758 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8247:8247:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2487 -> a
-    8248:8248:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    8248:8248:void transitionDependentItemsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2758 -> a
-    8248:8248:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2487 -> a
-    8249:8251:void transitionDependentItemsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2758:2760 -> a
-    8249:8251:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2487 -> a
-    8252:8252:void lambda$processNewlyInstantiatedClass$58(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):2468:2468 -> a
-    8253:8253:void markAnnotationAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2502:2502 -> a
-    8254:8254:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    8254:8254:void markAnnotationAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2502 -> a
+    8256:8256:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2487 -> a
+    8257:8257:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    8257:8257:void transitionDependentItemsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2758 -> a
+    8257:8257:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2487 -> a
+    8258:8260:void transitionDependentItemsForInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):2758:2760 -> a
+    8258:8260:void processNewlyInstantiatedClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.InstantiationReason,com.android.tools.r8.shaking.KeepReason):2487 -> a
+    8261:8261:void lambda$processNewlyInstantiatedClass$58(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):2468:2468 -> a
+    8262:8262:void markAnnotationAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2502:2502 -> a
+    8263:8263:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    8263:8263:void markAnnotationAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2502 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8255:8255:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    8255:8255:void markAnnotationAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2502 -> a
-    8256:8260:void markAnnotationAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2502:2506 -> a
-    8261:8262:void transitionDependentItemsForInstantiatedInterface(com.android.tools.r8.graph.DexProgramClass):2764:2765 -> a
-    8261:8262:void markAnnotationAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2507 -> a
-    8263:8271:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2573:2581 -> a
-    8272:8286:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2657:2671 -> a
-    8272:8286:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
-    8287:8287:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2668:2668 -> a
-    8287:8287:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
-    8288:8288:boolean com.android.tools.r8.shaking.InstantiatedObject.isClass():0:0 -> a
-    8288:8288:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2678 -> a
-    8288:8288:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
-    8289:8291:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2678:2680 -> a
-    8289:8291:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
-    8292:8296:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2679:2683 -> a
-    8292:8296:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
-    8297:8303:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2682:2688 -> a
-    8297:8303:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
-    8304:8304:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2685:2685 -> a
-    8304:8304:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
-    8305:8308:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2585:2588 -> a
-    8309:8309:void markProgramMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass):2599:2599 -> a
-    8310:8310:boolean com.android.tools.r8.shaking.InstantiatedObject.isLambda():0:0 -> a
-    8310:8310:void markProgramMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass):2599 -> a
-    8311:8313:void markProgramMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass):2599:2599 -> a
-    8314:8314:java.util.Map getReachableVirtualTargets(com.android.tools.r8.graph.DexProgramClass):2594:2594 -> a
-    8314:8314:void markProgramMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass):2601 -> a
-    8315:8316:void markProgramMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass):2601:2602 -> a
-    8317:8331:void lambda$markProgramMethodOverridesAsLive$65(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.shaking.Enqueuer$ResolutionSearchKey,com.android.tools.r8.utils.collections.ProgramMethodSet):2604:2618 -> a
-    8332:8342:void lambda$markProgramMethodOverridesAsLive$64(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass,java.util.List):2620:2630 -> a
-    8343:8343:void com.android.tools.r8.graph.LookupResult.forEach(java.util.function.Consumer):33:33 -> a
-    8343:8343:void lambda$markProgramMethodOverridesAsLive$64(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass,java.util.List):2630 -> a
+    8264:8264:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    8264:8264:void markAnnotationAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2502 -> a
+    8265:8269:void markAnnotationAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2502:2506 -> a
+    8270:8271:void transitionDependentItemsForInstantiatedInterface(com.android.tools.r8.graph.DexProgramClass):2764:2765 -> a
+    8270:8271:void markAnnotationAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2507 -> a
+    8272:8280:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2573:2581 -> a
+    8281:8295:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2657:2671 -> a
+    8281:8295:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
+    8296:8296:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2668:2668 -> a
+    8296:8296:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
+    8297:8297:boolean com.android.tools.r8.shaking.InstantiatedObject.isClass():0:0 -> a
+    8297:8297:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2678 -> a
+    8297:8297:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
+    8298:8300:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2678:2680 -> a
+    8298:8300:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
+    8301:8305:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2679:2683 -> a
+    8301:8305:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
+    8306:8312:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2682:2688 -> a
+    8306:8312:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
+    8313:8313:void markLibraryAndClasspathMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass):2685:2685 -> a
+    8313:8313:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2583 -> a
+    8314:8317:void transitionMethodsForInstantiatedObject(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.List):2585:2588 -> a
+    8318:8318:void markProgramMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass):2599:2599 -> a
+    8319:8319:boolean com.android.tools.r8.shaking.InstantiatedObject.isLambda():0:0 -> a
+    8319:8319:void markProgramMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass):2599 -> a
+    8320:8322:void markProgramMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass):2599:2599 -> a
+    8323:8323:java.util.Map getReachableVirtualTargets(com.android.tools.r8.graph.DexProgramClass):2594:2594 -> a
+    8323:8323:void markProgramMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass):2601 -> a
+    8324:8325:void markProgramMethodOverridesAsLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass):2601:2602 -> a
+    8326:8340:void lambda$markProgramMethodOverridesAsLive$65(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.shaking.Enqueuer$ResolutionSearchKey,com.android.tools.r8.utils.collections.ProgramMethodSet):2604:2618 -> a
+    8341:8351:void lambda$markProgramMethodOverridesAsLive$64(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass,java.util.List):2620:2630 -> a
+    8352:8352:void com.android.tools.r8.graph.LookupResult.forEach(java.util.function.Consumer):33:33 -> a
+    8352:8352:void lambda$markProgramMethodOverridesAsLive$64(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass,java.util.List):2630 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8344:8344:void lambda$markProgramMethodOverridesAsLive$64(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass,java.util.List):2638:2638 -> a
-    8345:8346:void lambda$markProgramMethodOverridesAsLive$59(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.function.Consumer,java.util.function.Consumer):2625:2626 -> a
-    8347:8347:boolean lambda$markProgramMethodOverridesAsLive$60(com.android.tools.r8.graph.DexDefinition):2629:2629 -> a
-    8348:8348:boolean com.android.tools.r8.shaking.KeepInfoCollection.isPinned(com.android.tools.r8.graph.DexReference,com.android.tools.r8.graph.DexDefinitionSupplier,com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):160:160 -> a
-    8348:8348:boolean lambda$markProgramMethodOverridesAsLive$60(com.android.tools.r8.graph.DexDefinition):2629 -> a
+    8353:8353:void lambda$markProgramMethodOverridesAsLive$64(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexProgramClass,java.util.List):2638:2638 -> a
+    8354:8355:void lambda$markProgramMethodOverridesAsLive$59(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexType,java.util.function.Consumer,java.util.function.Consumer):2625:2626 -> a
+    8356:8356:boolean lambda$markProgramMethodOverridesAsLive$60(com.android.tools.r8.graph.DexDefinition):2629:2629 -> a
+    8357:8357:boolean com.android.tools.r8.shaking.KeepInfoCollection.isPinned(com.android.tools.r8.graph.DexReference,com.android.tools.r8.graph.DexDefinitionSupplier,com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):160:160 -> a
+    8357:8357:boolean lambda$markProgramMethodOverridesAsLive$60(com.android.tools.r8.graph.DexDefinition):2629 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8349:8349:boolean com.android.tools.r8.shaking.KeepInfoCollection.isPinned(com.android.tools.r8.graph.DexReference,com.android.tools.r8.graph.DexDefinitionSupplier,com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):160:160 -> a
-    8349:8349:boolean lambda$markProgramMethodOverridesAsLive$60(com.android.tools.r8.graph.DexDefinition):2629 -> a
-    8350:8350:void lambda$markProgramMethodOverridesAsLive$62(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.LookupTarget):2632:2632 -> a
-    8351:8353:com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness lambda$markProgramMethodOverridesAsLive$61(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod):2635:2635 -> a
-    8354:8358:void lambda$markProgramMethodOverridesAsLive$63(com.android.tools.r8.graph.DexProgramClass,java.util.List,com.android.tools.r8.graph.DexEncodedMethod):2641:2645 -> a
-    8359:8359:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.ProgramMethod):54:54 -> a
-    8359:8359:void lambda$markProgramMethodOverridesAsLive$63(com.android.tools.r8.graph.DexProgramClass,java.util.List,com.android.tools.r8.graph.DexEncodedMethod):2647 -> a
-    8360:8360:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod):50:50 -> a
-    8360:8360:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.ProgramMethod):54 -> a
-    8360:8360:void lambda$markProgramMethodOverridesAsLive$63(com.android.tools.r8.graph.DexProgramClass,java.util.List,com.android.tools.r8.graph.DexEncodedMethod):2647 -> a
-    8361:8361:void lambda$markProgramMethodOverridesAsLive$63(com.android.tools.r8.graph.DexProgramClass,java.util.List,com.android.tools.r8.graph.DexEncodedMethod):2645:2645 -> a
-    8362:8362:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2697:2697 -> a
-    8363:8378:boolean shouldMarkLibraryMethodOverrideAsReachable(com.android.tools.r8.graph.LookupTarget):4270:4285 -> a
-    8363:8378:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2701 -> a
-    8379:8387:java.util.Set getImmediateSubtypesInInstantiatedHierarchy(com.android.tools.r8.graph.DexProgramClass):4321:4329 -> a
-    8379:8387:boolean shouldMarkLibraryMethodOverrideAsReachable(com.android.tools.r8.graph.LookupTarget):4291 -> a
-    8379:8387:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2701 -> a
-    8388:8402:boolean shouldMarkLibraryMethodOverrideAsReachable(com.android.tools.r8.graph.LookupTarget):4292:4306 -> a
-    8388:8402:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2701 -> a
-    8403:8411:java.util.Set getImmediateSubtypesInInstantiatedHierarchy(com.android.tools.r8.graph.DexProgramClass):4321:4329 -> a
-    8403:8411:boolean shouldMarkLibraryMethodOverrideAsReachable(com.android.tools.r8.graph.LookupTarget):4310 -> a
-    8403:8411:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2701 -> a
-    8412:8414:boolean shouldMarkLibraryMethodOverrideAsReachable(com.android.tools.r8.graph.LookupTarget):4310:4312 -> a
-    8412:8414:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2701 -> a
-    8415:8415:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2704:2704 -> a
-    8416:8416:boolean com.android.tools.r8.shaking.InstantiatedObject.isClass():0:0 -> a
-    8416:8416:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2709 -> a
-    8417:8417:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2712:2712 -> a
-    8418:8418:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2711:2711 -> a
-    8419:8419:com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness lambda$markLibraryOrClasspathOverrideLive$66(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramMethod):2707:2707 -> a
-    8420:8431:void markOverridesAsLibraryMethodOverrides(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexMethod):2718:2729 -> a
-    8432:8434:void lambda$markOverridesAsLibraryMethodOverrides$67(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexType):2731:2733 -> a
-    8435:8441:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2829:2835 -> a
-    8442:8442:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878:2878 -> a
-    8442:8442:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2836 -> a
-    8443:8443:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramDefinition):1811:1811 -> a
-    8443:8443:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878 -> a
-    8443:8443:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2836 -> a
-    8444:8444:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2879:2879 -> a
-    8444:8444:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2836 -> a
-    8445:8445:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2043:2043 -> a
-    8445:8445:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> a
-    8445:8445:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2836 -> a
-    8446:8446:com.android.tools.r8.graph.DexAnnotation$AnnotatedKind com.android.tools.r8.graph.DexAnnotation$AnnotatedKind.from(com.android.tools.r8.graph.ProgramDefinition):40:40 -> a
-    8446:8446:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2044 -> a
-    8446:8446:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> a
-    8446:8446:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2836 -> a
-    8447:8447:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049:2049 -> a
-    8447:8447:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> a
-    8447:8447:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> a
-    8447:8447:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2836 -> a
-    8448:8449:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation[],com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2054:2055 -> a
-    8448:8449:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049 -> a
-    8448:8449:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> a
-    8448:8449:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> a
-    8448:8449:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2836 -> a
-    8450:8453:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2837:2840 -> a
-    8454:8454:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878:2878 -> a
-    8454:8454:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2841 -> a
-    8455:8455:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramDefinition):1811:1811 -> a
-    8455:8455:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878 -> a
-    8455:8455:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2841 -> a
-    8456:8456:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2879:2879 -> a
-    8456:8456:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2841 -> a
-    8457:8457:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2043:2043 -> a
-    8457:8457:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> a
-    8457:8457:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2841 -> a
-    8458:8458:com.android.tools.r8.graph.DexAnnotation$AnnotatedKind com.android.tools.r8.graph.DexAnnotation$AnnotatedKind.from(com.android.tools.r8.graph.ProgramDefinition):40:40 -> a
-    8458:8458:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2044 -> a
-    8458:8458:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> a
-    8458:8458:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2841 -> a
-    8459:8459:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049:2049 -> a
-    8459:8459:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> a
-    8459:8459:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> a
+    8358:8358:boolean com.android.tools.r8.shaking.KeepInfoCollection.isPinned(com.android.tools.r8.graph.DexReference,com.android.tools.r8.graph.DexDefinitionSupplier,com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):160:160 -> a
+    8358:8358:boolean lambda$markProgramMethodOverridesAsLive$60(com.android.tools.r8.graph.DexDefinition):2629 -> a
+    8359:8359:void lambda$markProgramMethodOverridesAsLive$62(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.LookupTarget):2632:2632 -> a
+    8360:8362:com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness lambda$markProgramMethodOverridesAsLive$61(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.ProgramMethod):2635:2635 -> a
+    8363:8367:void lambda$markProgramMethodOverridesAsLive$63(com.android.tools.r8.graph.DexProgramClass,java.util.List,com.android.tools.r8.graph.DexEncodedMethod):2641:2645 -> a
+    8368:8368:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.ProgramMethod):54:54 -> a
+    8368:8368:void lambda$markProgramMethodOverridesAsLive$63(com.android.tools.r8.graph.DexProgramClass,java.util.List,com.android.tools.r8.graph.DexEncodedMethod):2647 -> a
+    8369:8369:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod):50:50 -> a
+    8369:8369:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.ProgramMethod):54 -> a
+    8369:8369:void lambda$markProgramMethodOverridesAsLive$63(com.android.tools.r8.graph.DexProgramClass,java.util.List,com.android.tools.r8.graph.DexEncodedMethod):2647 -> a
+    8370:8370:void lambda$markProgramMethodOverridesAsLive$63(com.android.tools.r8.graph.DexProgramClass,java.util.List,com.android.tools.r8.graph.DexEncodedMethod):2645:2645 -> a
+    8371:8371:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2697:2697 -> a
+    8372:8387:boolean shouldMarkLibraryMethodOverrideAsReachable(com.android.tools.r8.graph.LookupTarget):4270:4285 -> a
+    8372:8387:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2701 -> a
+    8388:8396:java.util.Set getImmediateSubtypesInInstantiatedHierarchy(com.android.tools.r8.graph.DexProgramClass):4321:4329 -> a
+    8388:8396:boolean shouldMarkLibraryMethodOverrideAsReachable(com.android.tools.r8.graph.LookupTarget):4291 -> a
+    8388:8396:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2701 -> a
+    8397:8411:boolean shouldMarkLibraryMethodOverrideAsReachable(com.android.tools.r8.graph.LookupTarget):4292:4306 -> a
+    8397:8411:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2701 -> a
+    8412:8420:java.util.Set getImmediateSubtypesInInstantiatedHierarchy(com.android.tools.r8.graph.DexProgramClass):4321:4329 -> a
+    8412:8420:boolean shouldMarkLibraryMethodOverrideAsReachable(com.android.tools.r8.graph.LookupTarget):4310 -> a
+    8412:8420:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2701 -> a
+    8421:8423:boolean shouldMarkLibraryMethodOverrideAsReachable(com.android.tools.r8.graph.LookupTarget):4310:4312 -> a
+    8421:8423:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2701 -> a
+    8424:8424:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2704:2704 -> a
+    8425:8425:boolean com.android.tools.r8.shaking.InstantiatedObject.isClass():0:0 -> a
+    8425:8425:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2709 -> a
+    8426:8426:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2712:2712 -> a
+    8427:8427:void markLibraryOrClasspathOverrideLive(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.MethodResolutionResult):2711:2711 -> a
+    8428:8428:com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness lambda$markLibraryOrClasspathOverrideLive$66(com.android.tools.r8.shaking.InstantiatedObject,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramMethod):2707:2707 -> a
+    8429:8440:void markOverridesAsLibraryMethodOverrides(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexMethod):2718:2729 -> a
+    8441:8443:void lambda$markOverridesAsLibraryMethodOverrides$67(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexType):2731:2733 -> a
+    8444:8450:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2829:2835 -> a
+    8451:8451:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878:2878 -> a
+    8451:8451:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2836 -> a
+    8452:8452:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramDefinition):1811:1811 -> a
+    8452:8452:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878 -> a
+    8452:8452:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2836 -> a
+    8453:8454:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2879:2880 -> a
+    8453:8454:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2836 -> a
+    8455:8458:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2837:2840 -> a
+    8459:8459:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878:2878 -> a
     8459:8459:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2841 -> a
-    8460:8461:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation[],com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2054:2055 -> a
-    8460:8461:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049 -> a
-    8460:8461:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> a
-    8460:8461:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> a
-    8460:8461:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2841 -> a
-    8462:8465:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2845:2848 -> a
-    8466:8466:void lambda$markFieldAsLive$68(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):2848:2848 -> a
-    8467:8467:void lambda$markFieldAsReachable$70(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):2874:2874 -> a
-    8468:8469:void traceFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult,com.android.tools.r8.graph.ProgramMethod):2887:2888 -> a
-    8468:8469:void lambda$traceInstanceFieldRead$25(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):1529 -> a
-    8470:8470:void lambda$traceInstanceFieldRead$25(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):1530:1530 -> a
-    8471:8471:boolean isFieldLive(com.android.tools.r8.graph.DexEncodedField):2927:2927 -> a
-    8472:8473:boolean isFieldWrittenInMethodSatisfying(com.android.tools.r8.graph.ProgramField,java.util.function.Predicate):2937:2938 -> a
-    8474:8474:boolean isMethodLive(com.android.tools.r8.graph.DexEncodedMethod):2981:2981 -> a
-    8475:8475:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985:2985 -> a
-    8475:8475:void lambda$desugar$98(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod):3673 -> a
-    8476:8476:boolean isMethodLive(com.android.tools.r8.graph.DexEncodedMethod):2981:2981 -> a
-    8476:8476:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985 -> a
+    8460:8460:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramDefinition):1811:1811 -> a
+    8460:8460:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878 -> a
+    8460:8460:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2841 -> a
+    8461:8462:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2879:2880 -> a
+    8461:8462:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2841 -> a
+    8463:8466:void markFieldAsLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2845:2848 -> a
+    8467:8467:void lambda$markFieldAsLive$68(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):2848:2848 -> a
+    8468:8468:void lambda$markFieldAsReachable$70(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):2874:2874 -> a
+    8469:8470:void traceFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult,com.android.tools.r8.graph.ProgramMethod):2887:2888 -> a
+    8469:8470:void lambda$traceInstanceFieldRead$25(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):1529 -> a
+    8471:8471:void lambda$traceInstanceFieldRead$25(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):1530:1530 -> a
+    8472:8472:boolean isFieldLive(com.android.tools.r8.graph.DexEncodedField):2927:2927 -> a
+    8473:8474:boolean isFieldWrittenInMethodSatisfying(com.android.tools.r8.graph.ProgramField,java.util.function.Predicate):2937:2938 -> a
+    8475:8475:boolean isMethodLive(com.android.tools.r8.graph.DexEncodedMethod):2981:2981 -> a
+    8476:8476:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985:2985 -> a
     8476:8476:void lambda$desugar$98(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod):3673 -> a
-    8477:8477:void lambda$desugar$98(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod):3676:3676 -> a
-    8478:8479:boolean isTypeLive(com.android.tools.r8.graph.DexClass):2997:2998 -> a
-    8480:8480:boolean isTypeLive(com.android.tools.r8.graph.DexProgramClass):3003:3003 -> a
-    8480:8480:boolean isTypeLive(com.android.tools.r8.graph.DexClass):2998 -> a
-    8481:8482:boolean isNonProgramTypeLive(com.android.tools.r8.graph.DexClass):3007:3008 -> a
-    8481:8482:boolean isTypeLive(com.android.tools.r8.graph.DexClass):2999 -> a
-    8483:8493:boolean isReachable(com.android.tools.r8.graph.Definition):3012:3022 -> a
-    8494:8494:boolean isFieldLive(com.android.tools.r8.graph.ProgramField):2923:2923 -> a
-    8494:8494:boolean isReachable(com.android.tools.r8.graph.Definition):3023 -> a
-    8495:8495:boolean isFieldReferenced(com.android.tools.r8.graph.ProgramField):2919:2919 -> a
+    8477:8477:boolean isMethodLive(com.android.tools.r8.graph.DexEncodedMethod):2981:2981 -> a
+    8477:8477:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985 -> a
+    8477:8477:void lambda$desugar$98(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod):3673 -> a
+    8478:8478:void lambda$desugar$98(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod):3676:3676 -> a
+    8479:8480:boolean isTypeLive(com.android.tools.r8.graph.DexClass):2997:2998 -> a
+    8481:8481:boolean isTypeLive(com.android.tools.r8.graph.DexProgramClass):3003:3003 -> a
+    8481:8481:boolean isTypeLive(com.android.tools.r8.graph.DexClass):2998 -> a
+    8482:8483:boolean isNonProgramTypeLive(com.android.tools.r8.graph.DexClass):3007:3008 -> a
+    8482:8483:boolean isTypeLive(com.android.tools.r8.graph.DexClass):2999 -> a
+    8484:8494:boolean isReachable(com.android.tools.r8.graph.Definition):3012:3022 -> a
+    8495:8495:boolean isFieldLive(com.android.tools.r8.graph.ProgramField):2923:2923 -> a
     8495:8495:boolean isReachable(com.android.tools.r8.graph.Definition):3023 -> a
-    8496:8497:boolean isReachable(com.android.tools.r8.graph.Definition):3025:3026 -> a
-    8498:8498:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985:2985 -> a
-    8498:8498:boolean isReachable(com.android.tools.r8.graph.Definition):3027 -> a
-    8499:8499:boolean isMethodLive(com.android.tools.r8.graph.DexEncodedMethod):2981:2981 -> a
-    8499:8499:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985 -> a
+    8496:8496:boolean isFieldReferenced(com.android.tools.r8.graph.ProgramField):2919:2919 -> a
+    8496:8496:boolean isReachable(com.android.tools.r8.graph.Definition):3023 -> a
+    8497:8498:boolean isReachable(com.android.tools.r8.graph.Definition):3025:3026 -> a
+    8499:8499:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985:2985 -> a
     8499:8499:boolean isReachable(com.android.tools.r8.graph.Definition):3027 -> a
-    8500:8500:boolean isMethodTargeted(com.android.tools.r8.graph.ProgramMethod):2993:2993 -> a
+    8500:8500:boolean isMethodLive(com.android.tools.r8.graph.DexEncodedMethod):2981:2981 -> a
+    8500:8500:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985 -> a
     8500:8500:boolean isReachable(com.android.tools.r8.graph.Definition):3027 -> a
-    8501:8501:boolean isMethodTargeted(com.android.tools.r8.graph.DexEncodedMethod):2989:2989 -> a
-    8501:8501:boolean isMethodTargeted(com.android.tools.r8.graph.ProgramMethod):2993 -> a
+    8501:8501:boolean isMethodTargeted(com.android.tools.r8.graph.ProgramMethod):2993:2993 -> a
     8501:8501:boolean isReachable(com.android.tools.r8.graph.Definition):3027 -> a
-    8502:8502:boolean isReachable(com.android.tools.r8.graph.Definition):3031:3031 -> a
-    8503:8504:boolean isNonProgramTypeLive(com.android.tools.r8.graph.DexClass):3007:3008 -> a
-    8503:8504:boolean isReachable(com.android.tools.r8.graph.Definition):3031 -> a
-    8505:8505:void forAllLiveClasses(java.util.function.Consumer):3035:3035 -> a
-    8506:8530:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3040:3064 -> a
-    8531:8531:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.graph.ProgramMethod.getContextClass():135:135 -> a
-    8531:8531:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3072 -> a
+    8502:8502:boolean isMethodTargeted(com.android.tools.r8.graph.DexEncodedMethod):2989:2989 -> a
+    8502:8502:boolean isMethodTargeted(com.android.tools.r8.graph.ProgramMethod):2993 -> a
+    8502:8502:boolean isReachable(com.android.tools.r8.graph.Definition):3027 -> a
+    8503:8503:boolean isReachable(com.android.tools.r8.graph.Definition):3031:3031 -> a
+    8504:8505:boolean isNonProgramTypeLive(com.android.tools.r8.graph.DexClass):3007:3008 -> a
+    8504:8505:boolean isReachable(com.android.tools.r8.graph.Definition):3031 -> a
+    8506:8506:void forAllLiveClasses(java.util.function.Consumer):3035:3035 -> a
+    8507:8531:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3040:3064 -> a
+    8532:8532:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.graph.ProgramMethod.getContextClass():135:135 -> a
+    8532:8532:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3072 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8532:8532:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3075:3075 -> a
-    8533:8533:java.util.Map getReachableVirtualTargets(com.android.tools.r8.graph.DexProgramClass):2594:2594 -> a
-    8533:8533:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3077 -> a
-    8534:8542:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3077:3085 -> a
-    8543:8543:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
-    8543:8543:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3085 -> a
-    8544:8559:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3090:3105 -> a
-    8560:8560:void com.android.tools.r8.graph.LookupResult.forEach(java.util.function.Consumer):33:33 -> a
-    8560:8560:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3112 -> a
+    8533:8533:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3075:3075 -> a
+    8534:8534:java.util.Map getReachableVirtualTargets(com.android.tools.r8.graph.DexProgramClass):2594:2594 -> a
+    8534:8534:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3077 -> a
+    8535:8543:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3077:3085 -> a
+    8544:8544:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
+    8544:8544:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3085 -> a
+    8545:8560:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3090:3105 -> a
+    8561:8561:void com.android.tools.r8.graph.LookupResult.forEach(java.util.function.Consumer):33:33 -> a
+    8561:8561:void markVirtualMethodAsReachable(com.android.tools.r8.graph.DexMethod,boolean,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):3112 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8561:8561:void lambda$markVirtualMethodAsReachable$73(com.android.tools.r8.graph.DexType,java.util.function.Consumer,java.util.function.Consumer):3109:3109 -> a
-    8562:8562:void lambda$markVirtualMethodAsReachable$76(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.LookupTarget):3114:3114 -> a
-    8563:8565:com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness lambda$markVirtualMethodAsReachable$75(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.ProgramMethod):3117:3117 -> a
-    8566:8569:void markVirtualDispatchTargetAsLive(com.android.tools.r8.graph.LookupTarget,java.util.function.Function):3123:3126 -> a
-    8570:8570:void lambda$markVirtualDispatchTargetAsLive$79(com.android.tools.r8.graph.LookupTarget,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):3126:3126 -> a
-    8571:8573:void markVirtualDispatchTargetAsLive(com.android.tools.r8.graph.DexClassAndMethod,java.util.function.Function):3131:3133 -> a
-    8571:8573:void lambda$markVirtualDispatchTargetAsLive$77(java.util.function.Function,com.android.tools.r8.graph.DexClassAndMethod):3124 -> a
-    8574:8577:void markVirtualDispatchTargetAsLive(com.android.tools.r8.graph.LookupLambdaTarget,java.util.function.Function):3139:3142 -> a
-    8574:8577:void lambda$markVirtualDispatchTargetAsLive$78(java.util.function.Function,com.android.tools.r8.graph.LookupLambdaTarget):3125 -> a
-    8578:8578:void markVirtualDispatchTargetAsLive(com.android.tools.r8.graph.LookupLambdaTarget,java.util.function.Function):3141:3141 -> a
-    8578:8578:void lambda$markVirtualDispatchTargetAsLive$78(java.util.function.Function,com.android.tools.r8.graph.LookupLambdaTarget):3125 -> a
-    8579:8580:void markFailedMethodResolutionTargets(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.MethodResolutionResult$FailedResolutionResult,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):3151:3152 -> a
-    8581:8584:void lambda$markFailedMethodResolutionTargets$80(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason,com.android.tools.r8.graph.DexEncodedMethod):3154:3157 -> a
-    8585:8585:void lambda$markSuperMethodAsReachable$82(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):3208:3208 -> a
-    8586:8586:void lambda$markSuperMethodAsReachable$82(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):3207:3207 -> a
-    8587:8587:void lambda$traceMainDex$84(com.android.tools.r8.shaking.MainDexInfo$Builder,com.android.tools.r8.graph.DexEncodedMethod):3249:3249 -> a
-    8588:8594:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3261:3267 -> a
-    8595:8595:com.android.tools.r8.shaking.Enqueuer registerAnalysis(com.android.tools.r8.graph.analysis.EnqueuerAnalysis):535:535 -> a
-    8595:8595:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3267 -> a
-    8596:8598:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3271:3273 -> a
-    8599:8599:com.android.tools.r8.shaking.Enqueuer registerAnalysis(com.android.tools.r8.graph.analysis.EnqueuerAnalysis):535:535 -> a
-    8599:8599:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3273 -> a
-    8600:8600:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3275:3275 -> a
-    8601:8601:com.android.tools.r8.shaking.Enqueuer registerAnalysis(com.android.tools.r8.graph.analysis.EnqueuerAnalysis):535:535 -> a
-    8601:8601:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3275 -> a
-    8602:8622:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3278:3298 -> a
-    8623:8626:void finalizeLibraryMethodOverrideInformation():3745:3748 -> a
-    8623:8626:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3299 -> a
-    8627:8628:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3300:3301 -> a
-    8629:8631:boolean verifyKeptGraph():3755:3757 -> a
-    8629:8631:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3301 -> a
-    8632:8637:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3302:3307 -> a
-    8638:8638:boolean com.android.tools.r8.shaking.Enqueuer$Mode.isWhyAreYouKeeping():232:232 -> a
-    8638:8638:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3307 -> a
-    8639:8639:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3312:3312 -> a
-    8640:8640:void lambda$traceApplication$87(com.android.tools.r8.graph.analysis.EnqueuerAnalysis):3300:3300 -> a
-    8641:8642:void includeMinimumKeepInfo(com.android.tools.r8.shaking.RootSetUtils$RootSetBase):3317:3318 -> a
-    8643:8647:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3326:3330 -> a
-    8648:8648:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3353:3353 -> a
-    8648:8648:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
-    8649:8649:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
-    8649:8649:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3354 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8562:8562:void lambda$markVirtualMethodAsReachable$73(com.android.tools.r8.graph.DexType,java.util.function.Consumer,java.util.function.Consumer):3109:3109 -> a
+    8563:8563:void lambda$markVirtualMethodAsReachable$76(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.LookupTarget):3114:3114 -> a
+    8564:8566:com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness lambda$markVirtualMethodAsReachable$75(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.ProgramMethod):3117:3117 -> a
+    8567:8570:void markVirtualDispatchTargetAsLive(com.android.tools.r8.graph.LookupTarget,java.util.function.Function):3123:3126 -> a
+    8571:8571:void lambda$markVirtualDispatchTargetAsLive$79(com.android.tools.r8.graph.LookupTarget,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):3126:3126 -> a
+    8572:8574:void markVirtualDispatchTargetAsLive(com.android.tools.r8.graph.DexClassAndMethod,java.util.function.Function):3131:3133 -> a
+    8572:8574:void lambda$markVirtualDispatchTargetAsLive$77(java.util.function.Function,com.android.tools.r8.graph.DexClassAndMethod):3124 -> a
+    8575:8578:void markVirtualDispatchTargetAsLive(com.android.tools.r8.graph.LookupLambdaTarget,java.util.function.Function):3139:3142 -> a
+    8575:8578:void lambda$markVirtualDispatchTargetAsLive$78(java.util.function.Function,com.android.tools.r8.graph.LookupLambdaTarget):3125 -> a
+    8579:8579:void markVirtualDispatchTargetAsLive(com.android.tools.r8.graph.LookupLambdaTarget,java.util.function.Function):3141:3141 -> a
+    8579:8579:void lambda$markVirtualDispatchTargetAsLive$78(java.util.function.Function,com.android.tools.r8.graph.LookupLambdaTarget):3125 -> a
+    8580:8581:void markFailedMethodResolutionTargets(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.MethodResolutionResult$FailedResolutionResult,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):3151:3152 -> a
+    8582:8585:void lambda$markFailedMethodResolutionTargets$80(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason,com.android.tools.r8.graph.DexEncodedMethod):3154:3157 -> a
+    8586:8586:void lambda$markSuperMethodAsReachable$82(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):3208:3208 -> a
+    8587:8587:void lambda$markSuperMethodAsReachable$82(com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):3207:3207 -> a
+    8588:8588:void lambda$traceMainDex$84(com.android.tools.r8.shaking.MainDexInfo$Builder,com.android.tools.r8.graph.DexEncodedMethod):3249:3249 -> a
+    8589:8595:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3261:3267 -> a
+    8596:8596:com.android.tools.r8.shaking.Enqueuer registerAnalysis(com.android.tools.r8.graph.analysis.EnqueuerAnalysis):535:535 -> a
+    8596:8596:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3267 -> a
+    8597:8599:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3271:3273 -> a
+    8600:8600:com.android.tools.r8.shaking.Enqueuer registerAnalysis(com.android.tools.r8.graph.analysis.EnqueuerAnalysis):535:535 -> a
+    8600:8600:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3273 -> a
+    8601:8601:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3275:3275 -> a
+    8602:8602:com.android.tools.r8.shaking.Enqueuer registerAnalysis(com.android.tools.r8.graph.analysis.EnqueuerAnalysis):535:535 -> a
+    8602:8602:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3275 -> a
+    8603:8623:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3278:3298 -> a
+    8624:8627:void finalizeLibraryMethodOverrideInformation():3745:3748 -> a
+    8624:8627:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3299 -> a
+    8628:8629:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3300:3301 -> a
+    8630:8632:boolean verifyKeptGraph():3755:3757 -> a
+    8630:8632:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3301 -> a
+    8633:8638:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3302:3307 -> a
+    8639:8639:boolean com.android.tools.r8.shaking.Enqueuer$Mode.isWhyAreYouKeeping():232:232 -> a
+    8639:8639:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3307 -> a
+    8640:8640:com.android.tools.r8.shaking.EnqueuerResult traceApplication(com.android.tools.r8.shaking.RootSetUtils$RootSet,java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3312:3312 -> a
+    8641:8641:void lambda$traceApplication$87(com.android.tools.r8.graph.analysis.EnqueuerAnalysis):3300:3300 -> a
+    8642:8643:void includeMinimumKeepInfo(com.android.tools.r8.shaking.RootSetUtils$RootSetBase):3317:3318 -> a
+    8644:8648:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3326:3330 -> a
+    8649:8649:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3353:3353 -> a
     8649:8649:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
     8650:8650:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
     8650:8650:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3354 -> a
-    8650:8650:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
-    8651:8651:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3355:3355 -> a
-    8651:8651:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
-    8652:8653:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):858:859 -> a
-    8652:8653:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3356 -> a
-    8652:8653:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
-    8654:8654:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
-    8654:8654:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):860 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8654:8654:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3356 -> a
-    8654:8654:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
-    8655:8655:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):860:860 -> a
+    8650:8650:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
+    8651:8651:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
+    8651:8651:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3354 -> a
+    8651:8651:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
+    8652:8652:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3355:3355 -> a
+    8652:8652:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
+    8653:8654:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):858:859 -> a
+    8653:8654:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3356 -> a
+    8653:8654:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
+    8655:8655:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
+    8655:8655:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):860 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     8655:8655:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3356 -> a
     8655:8655:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
-    8656:8656:void lambda$applyMinimumKeepInfo$88(com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3330:3330 -> a
-    8657:8660:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3339:3342 -> a
-    8661:8661:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getOrCreateUnconditionalMinimumKeepInfo():74:74 -> a
-    8661:8661:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3343 -> a
+    8656:8656:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):860:860 -> a
+    8656:8656:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3356 -> a
+    8656:8656:void applyMinimumKeepInfo(com.android.tools.r8.graph.DexProgramClass):3331 -> a
+    8657:8657:void lambda$applyMinimumKeepInfo$88(com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3330:3330 -> a
+    8658:8661:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3339:3342 -> a
     8662:8662:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getOrCreateUnconditionalMinimumKeepInfo():74:74 -> a
     8662:8662:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3343 -> a
+    8663:8663:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getOrCreateUnconditionalMinimumKeepInfo():74:74 -> a
+    8663:8663:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3343 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8663:8663:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3344:3344 -> a
-    8664:8664:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119:119 -> a
-    8664:8664:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3344 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8665:8665:com.android.tools.r8.shaking.KeepInfo$Joiner com.android.tools.r8.shaking.KeepInfo$Joiner.mergeUnsafe(com.android.tools.r8.shaking.KeepInfo$Joiner):593:593 -> a
-    8665:8665:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8664:8664:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3344:3344 -> a
+    8665:8665:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119:119 -> a
     8665:8665:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3344 -> a
-    8666:8666:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3353:3353 -> a
-    8666:8666:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
-    8667:8667:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
-    8667:8667:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3354 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8666:8666:com.android.tools.r8.shaking.KeepInfo$Joiner com.android.tools.r8.shaking.KeepInfo$Joiner.mergeUnsafe(com.android.tools.r8.shaking.KeepInfo$Joiner):593:593 -> a
+    8666:8666:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8666:8666:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3344 -> a
+    8667:8667:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3353:3353 -> a
     8667:8667:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
     8668:8668:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
     8668:8668:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3354 -> a
-    8668:8668:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
-    8669:8669:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3355:3355 -> a
-    8669:8669:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
-    8670:8671:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):858:859 -> a
-    8670:8671:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3356 -> a
-    8670:8671:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
-    8672:8672:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
-    8672:8672:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):860 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8672:8672:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3356 -> a
-    8672:8672:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
-    8673:8673:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):860:860 -> a
+    8668:8668:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
+    8669:8669:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
+    8669:8669:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3354 -> a
+    8669:8669:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
+    8670:8670:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3355:3355 -> a
+    8670:8670:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
+    8671:8672:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):858:859 -> a
+    8671:8672:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3356 -> a
+    8671:8672:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
+    8673:8673:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
+    8673:8673:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):860 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     8673:8673:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3356 -> a
     8673:8673:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
-    8674:8678:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3377:3381 -> a
-    8679:8679:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3400:3400 -> a
-    8679:8679:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
-    8680:8680:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
-    8680:8680:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3401 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8674:8674:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):860:860 -> a
+    8674:8674:void enqueueClassIfShrinkingIsDisallowed(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3356 -> a
+    8674:8674:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3346 -> a
+    8675:8679:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3377:3381 -> a
+    8680:8680:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3400:3400 -> a
     8680:8680:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
     8681:8681:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
     8681:8681:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3401 -> a
-    8681:8681:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
-    8682:8682:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3402:3402 -> a
-    8682:8682:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
-    8683:8685:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):890:892 -> a
-    8683:8685:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
-    8683:8685:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
-    8686:8686:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
-    8686:8686:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8686:8686:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
-    8686:8686:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
-    8687:8687:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895:895 -> a
+    8681:8681:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
+    8682:8682:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
+    8682:8682:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3401 -> a
+    8682:8682:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
+    8683:8683:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3402:3402 -> a
+    8683:8683:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
+    8684:8686:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):890:892 -> a
+    8684:8686:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
+    8684:8686:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
+    8687:8687:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
+    8687:8687:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     8687:8687:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
     8687:8687:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
-    8688:8688:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):894:894 -> a
+    8688:8688:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895:895 -> a
     8688:8688:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
     8688:8688:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
-    8689:8689:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):892:892 -> a
+    8689:8689:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):894:894 -> a
     8689:8689:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
     8689:8689:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
-    8690:8690:void lambda$applyMinimumKeepInfo$90(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3381:3381 -> a
-    8691:8694:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3388:3391 -> a
-    8695:8695:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getOrCreateUnconditionalMinimumKeepInfo():74:74 -> a
-    8695:8695:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3392 -> a
+    8690:8690:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):892:892 -> a
+    8690:8690:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
+    8690:8690:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramField):3382 -> a
+    8691:8691:void lambda$applyMinimumKeepInfo$90(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3381:3381 -> a
+    8692:8695:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3388:3391 -> a
     8696:8696:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getOrCreateUnconditionalMinimumKeepInfo():74:74 -> a
     8696:8696:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3392 -> a
+    8697:8697:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getOrCreateUnconditionalMinimumKeepInfo():74:74 -> a
+    8697:8697:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3392 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8697:8697:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3393:3393 -> a
-    8698:8698:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119:119 -> a
-    8698:8698:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3393 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8699:8699:com.android.tools.r8.shaking.KeepInfo$Joiner com.android.tools.r8.shaking.KeepInfo$Joiner.mergeUnsafe(com.android.tools.r8.shaking.KeepInfo$Joiner):593:593 -> a
-    8699:8699:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8698:8698:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3393:3393 -> a
+    8699:8699:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119:119 -> a
     8699:8699:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3393 -> a
-    8700:8700:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3400:3400 -> a
-    8700:8700:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
-    8701:8701:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
-    8701:8701:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3401 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8700:8700:com.android.tools.r8.shaking.KeepInfo$Joiner com.android.tools.r8.shaking.KeepInfo$Joiner.mergeUnsafe(com.android.tools.r8.shaking.KeepInfo$Joiner):593:593 -> a
+    8700:8700:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8700:8700:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3393 -> a
+    8701:8701:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3400:3400 -> a
     8701:8701:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
     8702:8702:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
     8702:8702:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3401 -> a
-    8702:8702:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
-    8703:8703:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3402:3402 -> a
-    8703:8703:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
-    8704:8706:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):890:892 -> a
-    8704:8706:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
-    8704:8706:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
-    8707:8707:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
-    8707:8707:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8707:8707:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
-    8707:8707:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
-    8708:8708:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895:895 -> a
+    8702:8702:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
+    8703:8703:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> a
+    8703:8703:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3401 -> a
+    8703:8703:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
+    8704:8704:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3402:3402 -> a
+    8704:8704:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
+    8705:8707:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):890:892 -> a
+    8705:8707:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
+    8705:8707:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
+    8708:8708:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> a
+    8708:8708:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     8708:8708:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
     8708:8708:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
-    8709:8709:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):894:894 -> a
+    8709:8709:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):895:895 -> a
     8709:8709:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
     8709:8709:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
-    8710:8710:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):892:892 -> a
+    8710:8710:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):894:894 -> a
     8710:8710:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
     8710:8710:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
-    8711:8716:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramMethod):3422:3427 -> a
-    8717:8717:void lambda$applyMinimumKeepInfo$92(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3426:3426 -> a
-    8718:8721:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3440:3443 -> a
-    8722:8722:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getOrCreateUnconditionalMinimumKeepInfo():74:74 -> a
-    8722:8722:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3444 -> a
+    8711:8711:void enqueueFieldDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):892:892 -> a
+    8711:8711:void enqueueFieldIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3403 -> a
+    8711:8711:void applyMinimumKeepInfoWhenLive(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3395 -> a
+    8712:8717:void applyMinimumKeepInfo(com.android.tools.r8.graph.ProgramMethod):3422:3427 -> a
+    8718:8718:void lambda$applyMinimumKeepInfo$92(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3426:3426 -> a
+    8719:8722:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3440:3443 -> a
     8723:8723:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getOrCreateUnconditionalMinimumKeepInfo():74:74 -> a
     8723:8723:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3444 -> a
+    8724:8724:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getOrCreateUnconditionalMinimumKeepInfo():74:74 -> a
+    8724:8724:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3444 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8724:8724:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3445:3445 -> a
-    8725:8725:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119:119 -> a
-    8725:8725:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3445 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8726:8726:com.android.tools.r8.shaking.KeepInfo$Joiner com.android.tools.r8.shaking.KeepInfo$Joiner.mergeUnsafe(com.android.tools.r8.shaking.KeepInfo$Joiner):593:593 -> a
-    8726:8726:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8725:8725:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3445:3445 -> a
+    8726:8726:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119:119 -> a
     8726:8726:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3445 -> a
-    8727:8733:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3441:3447 -> a
-    8734:8737:void applyMinimumKeepInfoDependentOn(com.android.tools.r8.shaking.EnqueuerEvent):3483:3486 -> a
-    8738:8751:void desugar(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions):3652:3665 -> a
-    8752:8752:com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$R8CfInstructionDesugaringEventConsumer com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer.createForR8(com.android.tools.r8.graph.AppView,java.util.function.BiConsumer,java.util.function.BiConsumer,java.util.function.BiConsumer,com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions,java.util.function.BiConsumer):74:74 -> a
-    8752:8752:void desugar(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions):3666 -> a
-    8753:8773:void desugar(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions):3681:3701 -> a
-    8774:8774:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985:2985 -> a
-    8774:8774:void desugar(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions):3703 -> a
-    8775:8775:boolean isMethodLive(com.android.tools.r8.graph.DexEncodedMethod):2981:2981 -> a
-    8775:8775:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8727:8727:com.android.tools.r8.shaking.KeepInfo$Joiner com.android.tools.r8.shaking.KeepInfo$Joiner.mergeUnsafe(com.android.tools.r8.shaking.KeepInfo$Joiner):593:593 -> a
+    8727:8727:void com.android.tools.r8.shaking.MinimumKeepInfoCollection.mergeMinimumKeepInfoFor(com.android.tools.r8.graph.DexReference,com.android.tools.r8.shaking.KeepInfo$Joiner):119 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    8727:8727:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3445 -> a
+    8728:8734:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):3441:3447 -> a
+    8735:8738:void applyMinimumKeepInfoDependentOn(com.android.tools.r8.shaking.EnqueuerEvent):3483:3486 -> a
+    8739:8752:void desugar(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions):3652:3665 -> a
+    8753:8753:com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$R8CfInstructionDesugaringEventConsumer com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer.createForR8(com.android.tools.r8.graph.AppView,java.util.function.BiConsumer,java.util.function.BiConsumer,java.util.function.BiConsumer,com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions,java.util.function.BiConsumer):74:74 -> a
+    8753:8753:void desugar(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions):3666 -> a
+    8754:8774:void desugar(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions):3681:3701 -> a
+    8775:8775:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985:2985 -> a
     8775:8775:void desugar(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions):3703 -> a
-    8776:8784:void desugar(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions):3704:3712 -> a
-    8785:8785:void lambda$desugar$99(com.android.tools.r8.ir.desugar.ProgramAdditions,com.android.tools.r8.graph.ProgramMethod):3684:3684 -> a
-    8786:8786:void lambda$desugar$100(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$R8CfInstructionDesugaringEventConsumer,com.android.tools.r8.graph.ProgramMethod):3691:3691 -> a
-    8787:8789:void recordLambdaSynthesizingContext(com.android.tools.r8.ir.desugar.LambdaClass,com.android.tools.r8.graph.ProgramMethod):3716:3718 -> a
-    8790:8792:void recordConstantDynamicSynthesizingContext(com.android.tools.r8.ir.desugar.constantdynamic.ConstantDynamicClass,com.android.tools.r8.graph.ProgramMethod):3723:3725 -> a
-    8793:8870:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3765:3842 -> a
-    8871:8873:java.util.Set toDescriptorSet(java.util.Set):3986:3988 -> a
-    8871:8873:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3842 -> a
-    8874:8879:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3842:3847 -> a
-    8880:8882:java.util.Set toDescriptorSet(java.util.Set):3986:3988 -> a
-    8880:8882:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3847 -> a
-    8883:8897:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3847:3861 -> a
-    8898:8903:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanMap joinIdentifierNameStrings(java.util.Set,java.util.Set):3995:4000 -> a
-    8898:8903:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3868 -> a
-    8904:8913:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3869:3878 -> a
-    8914:8914:void lambda$createEnqueuerResult$101(java.util.Set,com.android.tools.r8.graph.DexProgramClass):3768:3768 -> a
-    8915:8915:boolean lambda$createEnqueuerResult$102(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.FieldAccessInfoImpl):3774:3774 -> a
-    8916:8916:void lambda$createEnqueuerResult$103(com.android.tools.r8.graph.ClasspathOrLibraryClass):3798:3798 -> a
-    8917:8921:void addLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,boolean,java.util.function.BiConsumer):701:705 -> a
-    8917:8921:void lambda$createEnqueuerResult$103(com.android.tools.r8.graph.ClasspathOrLibraryClass):3798 -> a
-    8922:8922:void amendKeepInfoWithCompanionMethods():3888:3888 -> a
-    8923:8924:void forEachCompanionMethod(java.util.function.BiConsumer):3882:3883 -> a
-    8923:8924:void amendKeepInfoWithCompanionMethods():3888 -> a
-    8925:8927:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3890:3892 -> a
-    8928:8928:com.android.tools.r8.shaking.KeepMethodInfo com.android.tools.r8.shaking.KeepInfoCollection.getMethodInfo(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexDefinitionSupplier):109:109 -> a
-    8928:8928:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3892 -> a
-    8929:8929:com.android.tools.r8.shaking.KeepMethodInfo com.android.tools.r8.shaking.KeepInfoCollection.keepInfoForNonProgramMethod():55:55 -> a
-    8929:8929:com.android.tools.r8.shaking.KeepMethodInfo com.android.tools.r8.shaking.KeepInfoCollection.getMethodInfo(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexDefinitionSupplier):111 -> a
+    8776:8776:boolean isMethodLive(com.android.tools.r8.graph.DexEncodedMethod):2981:2981 -> a
+    8776:8776:boolean isMethodLive(com.android.tools.r8.graph.ProgramMethod):2985 -> a
+    8776:8776:void desugar(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions):3703 -> a
+    8777:8785:void desugar(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions):3704:3712 -> a
+    8786:8786:void lambda$desugar$99(com.android.tools.r8.ir.desugar.ProgramAdditions,com.android.tools.r8.graph.ProgramMethod):3684:3684 -> a
+    8787:8787:void lambda$desugar$100(com.android.tools.r8.shaking.Enqueuer$SyntheticAdditions,com.android.tools.r8.ir.desugar.CfInstructionDesugaringEventConsumer$R8CfInstructionDesugaringEventConsumer,com.android.tools.r8.graph.ProgramMethod):3691:3691 -> a
+    8788:8790:void recordLambdaSynthesizingContext(com.android.tools.r8.ir.desugar.LambdaClass,com.android.tools.r8.graph.ProgramMethod):3716:3718 -> a
+    8791:8793:void recordConstantDynamicSynthesizingContext(com.android.tools.r8.ir.desugar.constantdynamic.ConstantDynamicClass,com.android.tools.r8.graph.ProgramMethod):3723:3725 -> a
+    8794:8871:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3765:3842 -> a
+    8872:8874:java.util.Set toDescriptorSet(java.util.Set):3986:3988 -> a
+    8872:8874:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3842 -> a
+    8875:8880:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3842:3847 -> a
+    8881:8883:java.util.Set toDescriptorSet(java.util.Set):3986:3988 -> a
+    8881:8883:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3847 -> a
+    8884:8898:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3847:3861 -> a
+    8899:8904:com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2BooleanMap joinIdentifierNameStrings(java.util.Set,java.util.Set):3995:4000 -> a
+    8899:8904:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3868 -> a
+    8905:8914:com.android.tools.r8.shaking.EnqueuerResult createEnqueuerResult(com.android.tools.r8.graph.AppInfoWithClassHierarchy):3869:3878 -> a
+    8915:8915:void lambda$createEnqueuerResult$101(java.util.Set,com.android.tools.r8.graph.DexProgramClass):3768:3768 -> a
+    8916:8916:boolean lambda$createEnqueuerResult$102(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.FieldAccessInfoImpl):3774:3774 -> a
+    8917:8917:void lambda$createEnqueuerResult$103(com.android.tools.r8.graph.ClasspathOrLibraryClass):3798:3798 -> a
+    8918:8922:void addLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,boolean,java.util.function.BiConsumer):701:705 -> a
+    8918:8922:void lambda$createEnqueuerResult$103(com.android.tools.r8.graph.ClasspathOrLibraryClass):3798 -> a
+    8923:8923:void amendKeepInfoWithCompanionMethods():3888:3888 -> a
+    8924:8925:void forEachCompanionMethod(java.util.function.BiConsumer):3882:3883 -> a
+    8924:8925:void amendKeepInfoWithCompanionMethods():3888 -> a
+    8926:8928:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3890:3892 -> a
+    8929:8929:com.android.tools.r8.shaking.KeepMethodInfo com.android.tools.r8.shaking.KeepInfoCollection.getMethodInfo(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexDefinitionSupplier):109:109 -> a
     8929:8929:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3892 -> a
-    8930:8931:com.android.tools.r8.shaking.KeepMethodInfo com.android.tools.r8.shaking.KeepInfoCollection.getMethodInfo(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexDefinitionSupplier):113:114 -> a
-    8930:8931:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3892 -> a
-    8932:8935:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3892:3895 -> a
-    8936:8936:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getUnconditionalMinimumKeepInfoOrDefault(com.android.tools.r8.shaking.MinimumKeepInfoCollection):88:88 -> a
-    8936:8936:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3895 -> a
+    8930:8930:com.android.tools.r8.shaking.KeepMethodInfo com.android.tools.r8.shaking.KeepInfoCollection.keepInfoForNonProgramMethod():55:55 -> a
+    8930:8930:com.android.tools.r8.shaking.KeepMethodInfo com.android.tools.r8.shaking.KeepInfoCollection.getMethodInfo(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexDefinitionSupplier):111 -> a
+    8930:8930:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3892 -> a
+    8931:8932:com.android.tools.r8.shaking.KeepMethodInfo com.android.tools.r8.shaking.KeepInfoCollection.getMethodInfo(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexDefinitionSupplier):113:114 -> a
+    8931:8932:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3892 -> a
+    8933:8936:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3892:3895 -> a
     8937:8937:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getUnconditionalMinimumKeepInfoOrDefault(com.android.tools.r8.shaking.MinimumKeepInfoCollection):88:88 -> a
     8937:8937:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3895 -> a
+    8938:8938:com.android.tools.r8.shaking.MinimumKeepInfoCollection com.android.tools.r8.shaking.DependentMinimumKeepInfoCollection.getUnconditionalMinimumKeepInfoOrDefault(com.android.tools.r8.shaking.MinimumKeepInfoCollection):88:88 -> a
+    8938:8938:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3895 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    8938:8941:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3896:3899 -> a
-    8942:8942:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3898:3898 -> a
-    8943:8953:java.util.Set amendWithCompanionMethods(java.util.Set):3904:3914 -> a
-    8954:8955:void lambda$amendWithCompanionMethods$106(java.util.Set,java.util.Set,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3910:3911 -> a
-    8956:8964:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3932:3940 -> a
-    8965:8965:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":16858,"2":16859,"3":16860,"4":16861,"5":16862}}
-    16858:16858:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3940:3940 -> a
+    8939:8942:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3896:3899 -> a
+    8943:8943:void lambda$amendKeepInfoWithCompanionMethods$105(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3898:3898 -> a
+    8944:8954:java.util.Set amendWithCompanionMethods(java.util.Set):3904:3914 -> a
+    8955:8956:void lambda$amendWithCompanionMethods$106(java.util.Set,java.util.Set,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexMethod):3910:3911 -> a
+    8957:8965:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3932:3940 -> a
+    8966:8966:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":16859,"2":16860,"3":16861,"4":16862,"5":16863}}
     16859:16859:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3940:3940 -> a
     16860:16860:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3940:3940 -> a
     16861:16861:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3940:3940 -> a
     16862:16862:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3940:3940 -> a
-    12905:12908:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3940:3943 -> a
-    12909:12909:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":16865,"2":16866,"3":16867,"4":16868,"5":16869}}
-    16865:16865:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3943:3943 -> a
+    16863:16863:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3940:3940 -> a
+    12906:12909:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3940:3943 -> a
+    12910:12910:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":16866,"2":16867,"3":16868,"4":16869,"5":16870}}
     16866:16866:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3943:3943 -> a
     16867:16867:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3943:3943 -> a
     16868:16868:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3943:3943 -> a
     16869:16869:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3943:3943 -> a
-    16852:16857:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3943:3948 -> a
-    16870:16870:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4006:4006 -> a
-    16871:16873:long getNumberOfLiveItems():4153:4155 -> a
-    16871:16873:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4009 -> a
-    16874:16874:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4010:4010 -> a
-    16875:16875:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
-    16875:16875:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4010 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    16870:16870:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3943:3943 -> a
+    16853:16858:boolean verifyReferencedType(com.android.tools.r8.graph.DexType,com.android.tools.r8.utils.WorkList,com.android.tools.r8.graph.DexApplication):3943:3948 -> a
+    16871:16871:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4006:4006 -> a
+    16872:16874:long getNumberOfLiveItems():4153:4155 -> a
+    16872:16874:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4009 -> a
+    16875:16875:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4010:4010 -> a
     16876:16876:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
     16876:16876:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4010 -> a
-    16877:16877:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4011:4011 -> a
-    16878:16878:com.android.tools.r8.shaking.EnqueuerWorklist$EnqueuerAction com.android.tools.r8.shaking.EnqueuerWorklist.poll():338:338 -> a
-    16878:16878:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4011 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    16877:16877:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
+    16877:16877:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4010 -> a
+    16878:16878:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4011:4011 -> a
     16879:16879:com.android.tools.r8.shaking.EnqueuerWorklist$EnqueuerAction com.android.tools.r8.shaking.EnqueuerWorklist.poll():338:338 -> a
     16879:16879:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4011 -> a
-    16880:16880:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4012:4012 -> a
-    16881:16883:long getNumberOfLiveItems():4153:4155 -> a
-    16881:16883:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4016 -> a
-    16884:16892:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4020:4028 -> a
-    16893:16893:com.android.tools.r8.shaking.RootSetUtils$ConsequentRootSetBuilder com.android.tools.r8.shaking.RootSetUtils$ConsequentRootSet.builder(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.SubtypingInfo,com.android.tools.r8.shaking.Enqueuer):2101:2101 -> a
-    16893:16893:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4029 -> a
-    16894:16903:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4030:4039 -> a
-    16904:16906:long getNumberOfLiveItems():4153:4155 -> a
-    16904:16906:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4039 -> a
-    16907:16908:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4039:4040 -> a
-    16909:16909:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
-    16909:16909:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4040 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    16880:16880:com.android.tools.r8.shaking.EnqueuerWorklist$EnqueuerAction com.android.tools.r8.shaking.EnqueuerWorklist.poll():338:338 -> a
+    16880:16880:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4011 -> a
+    16881:16881:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4012:4012 -> a
+    16882:16884:long getNumberOfLiveItems():4153:4155 -> a
+    16882:16884:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4016 -> a
+    16885:16893:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4020:4028 -> a
+    16894:16894:com.android.tools.r8.shaking.RootSetUtils$ConsequentRootSetBuilder com.android.tools.r8.shaking.RootSetUtils$ConsequentRootSet.builder(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.SubtypingInfo,com.android.tools.r8.shaking.Enqueuer):2101:2101 -> a
+    16894:16894:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4029 -> a
+    16895:16904:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4030:4039 -> a
+    16905:16907:long getNumberOfLiveItems():4153:4155 -> a
+    16905:16907:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4039 -> a
+    16908:16909:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4039:4040 -> a
     16910:16910:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
     16910:16910:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4040 -> a
-    16911:16915:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4047:4051 -> a
-    16916:16916:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
-    16916:16916:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4051 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    16911:16911:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
+    16911:16911:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4040 -> a
+    16912:16916:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4047:4051 -> a
     16917:16917:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
     16917:16917:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4051 -> a
-    16918:16919:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4057:4058 -> a
-    16920:16920:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
-    16920:16920:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4058 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    16918:16918:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
+    16918:16918:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4051 -> a
+    16919:16920:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4057:4058 -> a
     16921:16921:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
     16921:16921:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4058 -> a
-    16922:16938:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4063:4079 -> a
-    16939:16939:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
-    16939:16939:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4079 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    16922:16922:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
+    16922:16922:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4058 -> a
+    16923:16939:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4063:4079 -> a
     16940:16940:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
     16940:16940:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4079 -> a
-    16941:16956:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4087:4102 -> a
-    16957:16957:java.util.Set lambda$trace$107(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):4025:4025 -> a
-    16958:16958:void lambda$trace$108(com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):4057:4057 -> a
-    16959:16959:void lambda$postProcessingDesugaring$109(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexType):4117:4117 -> a
-    16960:16960:com.android.tools.r8.origin.Origin com.android.tools.r8.graph.DexClass.getOrigin():778:778 -> a
-    16960:16960:void lambda$postProcessingDesugaring$109(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexType):4121 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    16961:16964:void lambda$postProcessingDesugaring$109(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexType):4121:4124 -> a
-    16965:16965:void com.android.tools.r8.shaking.MissingClasses$Builder.addNewMissingClassWithDesugarDiagnostic(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,com.android.tools.r8.errors.DesugarDiagnostic):93:93 -> a
-    16965:16965:void lambda$postProcessingDesugaring$109(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexType):4117 -> a
+    16941:16941:boolean com.android.tools.r8.shaking.EnqueuerWorklist.isEmpty():334:334 -> a
+    16941:16941:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4079 -> a
+    16942:16957:void trace(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):4087:4102 -> a
+    16958:16958:java.util.Set lambda$trace$107(com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):4025:4025 -> a
+    16959:16959:void lambda$trace$108(com.android.tools.r8.utils.Timing,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):4057:4057 -> a
+    16960:16960:void lambda$postProcessingDesugaring$109(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexType):4117:4117 -> a
+    16961:16961:com.android.tools.r8.origin.Origin com.android.tools.r8.graph.DexClass.getOrigin():778:778 -> a
+    16961:16961:void lambda$postProcessingDesugaring$109(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexType):4121 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    16966:16972:void addConsequentRootSet(com.android.tools.r8.shaking.RootSetUtils$ConsequentRootSet):4163:4169 -> a
-    16973:16975:void lambda$addConsequentRootSet$111(com.android.tools.r8.graph.DexType,java.util.Set):4171:4173 -> a
-    16976:16980:void compatEnqueueHolderIfDependentNonStaticMember(com.android.tools.r8.graph.DexProgramClass,java.util.Set):932:936 -> a
-    16976:16980:void lambda$addConsequentRootSet$111(com.android.tools.r8.graph.DexType,java.util.Set):4174 -> a
-    16981:16988:void identifySyntheticInterfaceMethodBridges(com.android.tools.r8.shaking.DelayedRootSetActionItem$InterfaceMethodSyntheticBridgeAction):4195:4202 -> a
-    16989:16992:void identifySyntheticInterfaceMethodBridges(com.android.tools.r8.shaking.DelayedRootSetActionItem$InterfaceMethodSyntheticBridgeAction):4201:4204 -> a
-    16993:16993:void identifySyntheticInterfaceMethodBridges(com.android.tools.r8.shaking.DelayedRootSetActionItem$InterfaceMethodSyntheticBridgeAction):4203:4203 -> a
-    16994:17001:void retainAnnotationForFinalTreeShaking(java.util.List):4223:4230 -> a
-    17002:17002:void retainAnnotationForFinalTreeShaking(java.util.List):4227:4227 -> a
-    17003:17006:void markFieldAsKept(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepReason):4262:4265 -> a
-    17007:17013:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4337:4343 -> a
-    17014:17014:com.android.tools.r8.shaking.Enqueuer$Mode getMode():515:515 -> a
-    17014:17014:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4397 -> a
-    17014:17014:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4346 -> a
-    17015:17015:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4397:4397 -> a
+    16962:16965:void lambda$postProcessingDesugaring$109(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexType):4121:4124 -> a
+    16966:16966:void com.android.tools.r8.shaking.MissingClasses$Builder.addNewMissingClassWithDesugarDiagnostic(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext,com.android.tools.r8.errors.DesugarDiagnostic):93:93 -> a
+    16966:16966:void lambda$postProcessingDesugaring$109(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexType):4117 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    16967:16973:void addConsequentRootSet(com.android.tools.r8.shaking.RootSetUtils$ConsequentRootSet):4163:4169 -> a
+    16974:16976:void lambda$addConsequentRootSet$111(com.android.tools.r8.graph.DexType,java.util.Set):4171:4173 -> a
+    16977:16981:void compatEnqueueHolderIfDependentNonStaticMember(com.android.tools.r8.graph.DexProgramClass,java.util.Set):932:936 -> a
+    16977:16981:void lambda$addConsequentRootSet$111(com.android.tools.r8.graph.DexType,java.util.Set):4174 -> a
+    16982:16989:void identifySyntheticInterfaceMethodBridges(com.android.tools.r8.shaking.DelayedRootSetActionItem$InterfaceMethodSyntheticBridgeAction):4195:4202 -> a
+    16990:16993:void identifySyntheticInterfaceMethodBridges(com.android.tools.r8.shaking.DelayedRootSetActionItem$InterfaceMethodSyntheticBridgeAction):4201:4204 -> a
+    16994:16994:void identifySyntheticInterfaceMethodBridges(com.android.tools.r8.shaking.DelayedRootSetActionItem$InterfaceMethodSyntheticBridgeAction):4203:4203 -> a
+    16995:17002:void retainAnnotationForFinalTreeShaking(java.util.List):4223:4230 -> a
+    17003:17003:void retainAnnotationForFinalTreeShaking(java.util.List):4227:4227 -> a
+    17004:17007:void markFieldAsKept(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepReason):4262:4265 -> a
+    17008:17014:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4337:4343 -> a
+    17015:17015:com.android.tools.r8.shaking.Enqueuer$Mode getMode():515:515 -> a
+    17015:17015:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4397 -> a
     17015:17015:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4346 -> a
-    17016:17016:boolean addToPendingDesugaring(com.android.tools.r8.graph.ProgramMethod):3627:3627 -> a
-    17016:17016:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4398 -> a
+    17016:17016:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4397:4397 -> a
     17016:17016:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4346 -> a
-    17017:17019:boolean mustMoveToInterfaceCompanionMethod(com.android.tools.r8.graph.ProgramMethod):3621:3623 -> a
-    17017:17019:boolean addToPendingDesugaring(com.android.tools.r8.graph.ProgramMethod):3628 -> a
-    17017:17019:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4398 -> a
-    17017:17019:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4346 -> a
-    17020:17035:boolean addToPendingDesugaring(com.android.tools.r8.graph.ProgramMethod):3630:3645 -> a
-    17020:17035:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4398 -> a
-    17020:17035:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4346 -> a
-    17036:17036:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4403:4403 -> a
-    17036:17036:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4346 -> a
-    17037:17041:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4348:4352 -> a
-    17042:17042:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
-    17042:17042:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4352 -> a
-    17043:17043:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedViaSuperFrom(com.android.tools.r8.graph.ProgramMethod):42:42 -> a
-    17043:17043:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4354 -> a
-    17044:17044:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4354:4354 -> a
-    17045:17045:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedViaSuperFrom(com.android.tools.r8.graph.ProgramMethod):42:42 -> a
-    17045:17045:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4355 -> a
-    17046:17051:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4355:4360 -> a
-    17052:17052:void lambda$markMethodAsLive$112(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):4360:4360 -> a
-    17053:17053:void lambda$markMethodAsTargeted$113(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):4380:4380 -> a
-    17054:17054:void lambda$traceMethodDefinitionExcludingCode$114(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.DexAnnotation):4390:4390 -> a
-    17055:17055:void lambda$traceCode$115(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.DefaultEnqueuerUseRegistry,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):4411:4411 -> a
-    17056:17056:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4437:4437 -> a
-    17057:17072:boolean addCompatInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):4461:4476 -> a
-    17057:17072:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4439 -> a
-    17073:17073:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4443:4443 -> a
-    17074:17074:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    17074:17074:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4444 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    17017:17017:boolean addToPendingDesugaring(com.android.tools.r8.graph.ProgramMethod):3627:3627 -> a
+    17017:17017:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4398 -> a
+    17017:17017:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4346 -> a
+    17018:17020:boolean mustMoveToInterfaceCompanionMethod(com.android.tools.r8.graph.ProgramMethod):3621:3623 -> a
+    17018:17020:boolean addToPendingDesugaring(com.android.tools.r8.graph.ProgramMethod):3628 -> a
+    17018:17020:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4398 -> a
+    17018:17020:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4346 -> a
+    17021:17036:boolean addToPendingDesugaring(com.android.tools.r8.graph.ProgramMethod):3630:3645 -> a
+    17021:17036:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4398 -> a
+    17021:17036:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4346 -> a
+    17037:17037:void traceNonDesugaredCode(com.android.tools.r8.graph.ProgramMethod):4403:4403 -> a
+    17037:17037:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4346 -> a
+    17038:17042:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4348:4352 -> a
+    17043:17043:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
+    17043:17043:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4352 -> a
+    17044:17044:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedViaSuperFrom(com.android.tools.r8.graph.ProgramMethod):42:42 -> a
+    17044:17044:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4354 -> a
+    17045:17045:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4354:4354 -> a
+    17046:17046:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedViaSuperFrom(com.android.tools.r8.graph.ProgramMethod):42:42 -> a
+    17046:17046:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4355 -> a
+    17047:17052:void markMethodAsLive(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition):4355:4360 -> a
+    17053:17053:void lambda$markMethodAsLive$112(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):4360:4360 -> a
+    17054:17054:void lambda$markMethodAsTargeted$113(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):4380:4380 -> a
+    17055:17055:void lambda$traceMethodDefinitionExcludingCode$114(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.DexAnnotation):4390:4390 -> a
+    17056:17056:void lambda$traceCode$115(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.DefaultEnqueuerUseRegistry,com.android.tools.r8.graph.analysis.EnqueuerAnalysis):4411:4411 -> a
+    17057:17057:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4437:4437 -> a
+    17058:17073:boolean addCompatInstantiatedClass(com.android.tools.r8.graph.DexProgramClass):4461:4476 -> a
+    17058:17073:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4439 -> a
+    17074:17074:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4443:4443 -> a
     17075:17075:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
     17075:17075:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4444 -> a
-    17076:17080:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4445:4449 -> a
-    17081:17081:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
-    17081:17081:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
-    17081:17081:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4450 -> a
-    17082:17086:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4451:4455 -> a
-    17087:17087:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4452:4452 -> a
-    17088:17094:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4494:4500 -> a
-    17095:17102:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4604:4611 -> a
-    17095:17102:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17103:17105:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4610:4612 -> a
-    17103:17105:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17106:17106:com.android.tools.r8.graph.DexProgramClass getProgramClassOrNullFromReflectiveAccess(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):792:792 -> a
-    17106:17106:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4618 -> a
-    17106:17106:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17107:17107:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4622:4622 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    17076:17076:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    17076:17076:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4444 -> a
+    17077:17081:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4445:4449 -> a
+    17082:17082:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
+    17082:17082:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
+    17082:17082:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4450 -> a
+    17083:17087:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4451:4455 -> a
+    17088:17088:void markClassAsInstantiatedWithCompatRule(com.android.tools.r8.graph.DexProgramClass,java.util.function.Supplier):4452:4452 -> a
+    17089:17095:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4494:4500 -> a
+    17096:17103:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4604:4611 -> a
+    17096:17103:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
+    17104:17106:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4610:4612 -> a
+    17104:17106:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
+    17107:17107:com.android.tools.r8.graph.DexProgramClass getProgramClassOrNullFromReflectiveAccess(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):792:792 -> a
+    17107:17107:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4618 -> a
     17107:17107:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17108:17108:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
-    17108:17108:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4624 -> a
+    17108:17108:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4622:4622 -> a
     17108:17108:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17109:17109:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4427:4427 -> a
-    17109:17109:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4625 -> a
+    17109:17109:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
+    17109:17109:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4624 -> a
     17109:17109:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17110:17110:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
-    17110:17110:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
-    17110:17110:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4428 -> a
+    17110:17110:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4427:4427 -> a
     17110:17110:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4625 -> a
     17110:17110:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17111:17113:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4429:4431 -> a
-    17111:17113:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4625 -> a
-    17111:17113:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17114:17114:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4430:4430 -> a
-    17114:17114:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4625 -> a
-    17114:17114:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17115:17118:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4626:4629 -> a
-    17115:17118:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17119:17119:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
-    17119:17119:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
-    17119:17119:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4628 -> a
-    17119:17119:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17120:17120:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    17111:17111:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
+    17111:17111:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
+    17111:17111:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4428 -> a
+    17111:17111:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4625 -> a
+    17111:17111:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
+    17112:17114:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4429:4431 -> a
+    17112:17114:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4625 -> a
+    17112:17114:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
+    17115:17115:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4430:4430 -> a
+    17115:17115:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4625 -> a
+    17115:17115:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
+    17116:17119:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4626:4629 -> a
+    17116:17119:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
+    17120:17120:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
+    17120:17120:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
     17120:17120:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4628 -> a
     17120:17120:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
-    17121:17121:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4504:4504 -> a
-    17122:17143:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4636:4657 -> a
-    17122:17143:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17144:17146:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4656:4658 -> a
-    17144:17146:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17147:17147:com.android.tools.r8.graph.DexProgramClass getProgramClassOrNullFromReflectiveAccess(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):792:792 -> a
-    17147:17147:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4664 -> a
-    17147:17147:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17148:17149:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4668:4669 -> a
-    17148:17149:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17150:17150:boolean com.android.tools.r8.ir.code.Instruction.isNewArrayEmpty():0:0 -> a
-    17150:17150:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4669 -> a
-    17150:17150:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17151:17199:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4674:4722 -> a
-    17151:17199:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17200:17200:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
-    17200:17200:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4727 -> a
-    17200:17200:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17201:17201:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4427:4427 -> a
-    17201:17201:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4728 -> a
+    17121:17121:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    17121:17121:void handleJavaLangClassNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4628 -> a
+    17121:17121:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4501 -> a
+    17122:17122:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4504:4504 -> a
+    17123:17144:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4636:4657 -> a
+    17123:17144:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
+    17145:17147:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4656:4658 -> a
+    17145:17147:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
+    17148:17148:com.android.tools.r8.graph.DexProgramClass getProgramClassOrNullFromReflectiveAccess(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):792:792 -> a
+    17148:17148:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4664 -> a
+    17148:17148:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
+    17149:17150:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4668:4669 -> a
+    17149:17150:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
+    17151:17151:boolean com.android.tools.r8.ir.code.Instruction.isNewArrayEmpty():0:0 -> a
+    17151:17151:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4669 -> a
+    17151:17151:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
+    17152:17200:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4674:4722 -> a
+    17152:17200:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
+    17201:17201:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
+    17201:17201:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4727 -> a
     17201:17201:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17202:17202:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
-    17202:17202:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
-    17202:17202:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4428 -> a
+    17202:17202:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4427:4427 -> a
     17202:17202:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4728 -> a
     17202:17202:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17203:17205:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4429:4431 -> a
-    17203:17205:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4728 -> a
-    17203:17205:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17206:17206:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4430:4430 -> a
-    17206:17206:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4728 -> a
-    17206:17206:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17207:17210:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4729:4732 -> a
-    17207:17210:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17211:17211:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
-    17211:17211:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
-    17211:17211:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4731 -> a
-    17211:17211:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17212:17212:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    17203:17203:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
+    17203:17203:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
+    17203:17203:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4428 -> a
+    17203:17203:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4728 -> a
+    17203:17203:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
+    17204:17206:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4429:4431 -> a
+    17204:17206:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4728 -> a
+    17204:17206:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
+    17207:17207:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4430:4430 -> a
+    17207:17207:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4728 -> a
+    17207:17207:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
+    17208:17211:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4729:4732 -> a
+    17208:17211:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
+    17212:17212:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
+    17212:17212:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
     17212:17212:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4731 -> a
     17212:17212:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
-    17213:17213:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4508:4508 -> a
-    17214:17217:void handleJavaLangEnumValueOf(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4809:4812 -> a
-    17214:17217:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4509 -> a
-    17218:17218:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.ProgramMethod):54:54 -> a
-    17218:17218:void handleJavaLangEnumValueOf(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4813 -> a
-    17218:17218:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4509 -> a
-    17219:17219:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod):50:50 -> a
-    17219:17219:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.ProgramMethod):54 -> a
+    17213:17213:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    17213:17213:void handleJavaLangReflectConstructorNewInstance(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4731 -> a
+    17213:17213:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4505 -> a
+    17214:17214:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4508:4508 -> a
+    17215:17218:void handleJavaLangEnumValueOf(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4809:4812 -> a
+    17215:17218:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4509 -> a
+    17219:17219:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.ProgramMethod):54:54 -> a
     17219:17219:void handleJavaLangEnumValueOf(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4813 -> a
     17219:17219:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4509 -> a
-    17220:17220:void handleJavaLangEnumValueOf(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4813:4813 -> a
+    17220:17220:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.DexEncodedMethod):50:50 -> a
+    17220:17220:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.invokedFrom(com.android.tools.r8.graph.ProgramMethod):54 -> a
+    17220:17220:void handleJavaLangEnumValueOf(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4813 -> a
     17220:17220:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4509 -> a
-    17221:17225:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4512:4516 -> a
-    17226:17226:boolean com.android.tools.r8.graph.DexItemFactory$ServiceLoaderMethods.isLoadMethod(com.android.tools.r8.graph.DexMethod):2170:2170 -> a
-    17226:17226:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4516 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    17221:17221:void handleJavaLangEnumValueOf(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4813:4813 -> a
+    17221:17221:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4509 -> a
+    17222:17226:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4512:4516 -> a
     17227:17227:boolean com.android.tools.r8.graph.DexItemFactory$ServiceLoaderMethods.isLoadMethod(com.android.tools.r8.graph.DexMethod):2170:2170 -> a
     17227:17227:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4516 -> a
-    17228:17234:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4819:4825 -> a
-    17228:17234:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
-    17235:17235:boolean com.android.tools.r8.ir.code.Instruction.isConstClass():0:0 -> a
-    17235:17235:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4825 -> a
-    17235:17235:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
-    17236:17240:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4826:4830 -> a
-    17236:17240:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
-    17241:17241:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":17330,"2":17331,"3":17332}}
-    17330:17330:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4830:4830 -> a
-    17330:17330:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    17228:17228:boolean com.android.tools.r8.graph.DexItemFactory$ServiceLoaderMethods.isLoadMethod(com.android.tools.r8.graph.DexMethod):2170:2170 -> a
+    17228:17228:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4516 -> a
+    17229:17235:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4819:4825 -> a
+    17229:17235:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
+    17236:17236:boolean com.android.tools.r8.ir.code.Instruction.isConstClass():0:0 -> a
+    17236:17236:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4825 -> a
+    17236:17236:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
+    17237:17241:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4826:4830 -> a
+    17237:17241:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
+    17242:17242:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":17331,"2":17332,"3":17333}}
     17331:17331:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4830:4830 -> a
     17331:17331:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
     17332:17332:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4830:4830 -> a
     17332:17332:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
-    17242:17242:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":17335,"2":17336,"3":17337}}
-    17335:17335:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4833:4833 -> a
-    17335:17335:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
+    17333:17333:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4830:4830 -> a
+    17333:17333:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
+    17243:17243:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":17336,"2":17337,"3":17338}}
     17336:17336:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4833:4833 -> a
     17336:17336:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
     17337:17337:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4833:4833 -> a
     17337:17337:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
-    17243:17245:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4835:4837 -> a
-    17243:17245:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
-    17246:17246:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4830:4830 -> a
-    17246:17246:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
-    17247:17247:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
-    17247:17247:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4842 -> a
+    17338:17338:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4833:4833 -> a
+    17338:17338:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
+    17244:17246:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4835:4837 -> a
+    17244:17246:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
+    17247:17247:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4830:4830 -> a
     17247:17247:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
-    17248:17248:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4842:4842 -> a
+    17248:17248:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
+    17248:17248:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4842 -> a
     17248:17248:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
-    17249:17249:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
-    17249:17249:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4844 -> a
+    17249:17249:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4842:4842 -> a
     17249:17249:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
-    17250:17251:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4845:4846 -> a
-    17250:17251:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
-    17252:17261:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4520:4529 -> a
-    17262:17262:boolean com.android.tools.r8.graph.DexReference.isDexType():0:0 -> a
-    17262:17262:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4529 -> a
-    17263:17267:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4530:4534 -> a
-    17268:17268:com.android.tools.r8.graph.DexProgramClass getProgramClassOrNullFromReflectiveAccess(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):792:792 -> a
-    17268:17268:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4534 -> a
-    17269:17269:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
-    17269:17269:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4538 -> a
-    17270:17270:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4538:4538 -> a
-    17271:17271:boolean com.android.tools.r8.graph.DexClass.canBeInstantiatedByNewInstance():661:661 -> a
-    17271:17271:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4539 -> a
-    17272:17272:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
-    17272:17272:boolean com.android.tools.r8.graph.DexClass.canBeInstantiatedByNewInstance():661 -> a
+    17250:17250:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
+    17250:17250:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4844 -> a
+    17250:17250:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
+    17251:17252:void handleServiceLoaderInvocation(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.InvokeMethod):4845:4846 -> a
+    17251:17252:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4517 -> a
+    17253:17262:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4520:4529 -> a
+    17263:17263:boolean com.android.tools.r8.graph.DexReference.isDexType():0:0 -> a
+    17263:17263:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4529 -> a
+    17264:17268:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4530:4534 -> a
+    17269:17269:com.android.tools.r8.graph.DexProgramClass getProgramClassOrNullFromReflectiveAccess(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):792:792 -> a
+    17269:17269:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4534 -> a
+    17270:17270:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
+    17270:17270:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4538 -> a
+    17271:17271:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4538:4538 -> a
+    17272:17272:boolean com.android.tools.r8.graph.DexClass.canBeInstantiatedByNewInstance():661:661 -> a
     17272:17272:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4539 -> a
-    17273:17273:boolean com.android.tools.r8.graph.DexClass.canBeInstantiatedByNewInstance():661:661 -> a
+    17273:17273:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> a
+    17273:17273:boolean com.android.tools.r8.graph.DexClass.canBeInstantiatedByNewInstance():661 -> a
     17273:17273:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4539 -> a
-    17274:17287:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4539:4552 -> a
-    17288:17288:com.android.tools.r8.graph.DexProgramClass getProgramClassOrNullFromReflectiveAccess(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):792:792 -> a
-    17288:17288:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4552 -> a
-    17289:17302:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4556:4569 -> a
-    17303:17303:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
-    17303:17303:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4570 -> a
-    17304:17309:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4569:4574 -> a
-    17310:17310:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
-    17310:17310:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4576 -> a
-    17311:17316:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4576:4581 -> a
-    17317:17317:com.android.tools.r8.graph.DexProgramClass getProgramClassOrNullFromReflectiveAccess(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):792:792 -> a
-    17317:17317:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4582 -> a
-    17318:17318:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4586:4586 -> a
-    17319:17319:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
-    17319:17319:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4590 -> a
-    17320:17327:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4591:4598 -> a
-    17328:17328:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
-    17328:17328:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
-    17328:17328:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4597 -> a
-    17329:17329:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    17274:17274:boolean com.android.tools.r8.graph.DexClass.canBeInstantiatedByNewInstance():661:661 -> a
+    17274:17274:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4539 -> a
+    17275:17288:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4539:4552 -> a
+    17289:17289:com.android.tools.r8.graph.DexProgramClass getProgramClassOrNullFromReflectiveAccess(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):792:792 -> a
+    17289:17289:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4552 -> a
+    17290:17303:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4556:4569 -> a
+    17304:17304:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
+    17304:17304:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4570 -> a
+    17305:17310:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4569:4574 -> a
+    17311:17311:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
+    17311:17311:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4576 -> a
+    17312:17317:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4576:4581 -> a
+    17318:17318:com.android.tools.r8.graph.DexProgramClass getProgramClassOrNullFromReflectiveAccess(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):792:792 -> a
+    17318:17318:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4582 -> a
+    17319:17319:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4586:4586 -> a
+    17320:17320:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.reflectiveUseIn(com.android.tools.r8.graph.ProgramMethod):83:83 -> a
+    17320:17320:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4590 -> a
+    17321:17328:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4591:4598 -> a
+    17329:17329:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
+    17329:17329:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
     17329:17329:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4597 -> a
-    17338:17338:void lambda$handleReflectiveBehavior$118(com.android.tools.r8.shaking.KeepFieldInfo$Joiner):4575:4575 -> a
-    17339:17339:void lambda$handleJavaLangReflectProxyNewProxyInstance$119(com.android.tools.r8.shaking.KeepClassInfo$Joiner):4779:4779 -> a
-    17340:17342:void lambda$handleJavaLangReflectProxyNewProxyInstance$121(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason,com.android.tools.r8.graph.ProgramMethod):4787:4789 -> a
-    17343:17343:void lambda$handleJavaLangReflectProxyNewProxyInstance$120(com.android.tools.r8.shaking.KeepMethodInfo$Joiner):4788:4788 -> a
-    17344:17354:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4853:4863 -> a
-    17355:17355:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4427:4427 -> a
-    17355:17355:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4868 -> a
-    17356:17356:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
-    17356:17356:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
-    17356:17356:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4428 -> a
+    17330:17330:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    17330:17330:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.ir.code.Instruction):4597 -> a
+    17339:17339:void lambda$handleReflectiveBehavior$118(com.android.tools.r8.shaking.KeepFieldInfo$Joiner):4575:4575 -> a
+    17340:17340:void lambda$handleJavaLangReflectProxyNewProxyInstance$119(com.android.tools.r8.shaking.KeepClassInfo$Joiner):4779:4779 -> a
+    17341:17343:void lambda$handleJavaLangReflectProxyNewProxyInstance$121(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason,com.android.tools.r8.graph.ProgramMethod):4787:4789 -> a
+    17344:17344:void lambda$handleJavaLangReflectProxyNewProxyInstance$120(com.android.tools.r8.shaking.KeepMethodInfo$Joiner):4788:4788 -> a
+    17345:17355:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4853:4863 -> a
+    17356:17356:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4427:4427 -> a
     17356:17356:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4868 -> a
-    17357:17359:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4429:4431 -> a
-    17357:17359:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4868 -> a
-    17360:17360:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4430:4430 -> a
-    17360:17360:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4868 -> a
-    17361:17364:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4870:4873 -> a
-    17365:17365:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
-    17365:17365:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
-    17365:17365:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4872 -> a
-    17366:17366:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    17357:17357:com.android.tools.r8.graph.DexEncodedMethod com.android.tools.r8.graph.DexClass.getDefaultInitializer():809:809 -> a
+    17357:17357:boolean com.android.tools.r8.graph.DexClass.hasDefaultInitializer():795 -> a
+    17357:17357:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4428 -> a
+    17357:17357:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4868 -> a
+    17358:17360:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4429:4431 -> a
+    17358:17360:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4868 -> a
+    17361:17361:void markClassAsInstantiatedWithReason(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):4430:4430 -> a
+    17361:17361:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4868 -> a
+    17362:17365:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4870:4873 -> a
+    17366:17366:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
+    17366:17366:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
     17366:17366:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4872 -> a
-    17367:17370:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4876:4879 -> a
-    17371:17371:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4878:4878 -> a
-    17372:17372:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.graph.DexEncodedMethod.asProgramMethodOrNull(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexProgramClass):413:413 -> a
-    17372:17372:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4878 -> a
-    17373:17373:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4883:4883 -> a
-    17374:17374:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
-    17374:17374:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
-    17374:17374:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4882 -> a
-    17375:17375:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    17367:17367:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    17367:17367:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4872 -> a
+    17368:17371:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4876:4879 -> a
+    17372:17372:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4878:4878 -> a
+    17373:17373:com.android.tools.r8.graph.ProgramMethod com.android.tools.r8.graph.DexEncodedMethod.asProgramMethodOrNull(com.android.tools.r8.graph.DexEncodedMethod,com.android.tools.r8.graph.DexProgramClass):413:413 -> a
+    17373:17373:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4878 -> a
+    17374:17374:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4883:4883 -> a
+    17375:17375:com.android.tools.r8.shaking.EnqueuerEvent$UnconditionalKeepInfoEvent com.android.tools.r8.shaking.EnqueuerEvent.unconditional():16:16 -> a
+    17375:17375:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433 -> a
     17375:17375:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4882 -> a
-    17376:17385:com.android.tools.r8.utils.collections.DexMethodSignatureSet getServiceMethods(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):4890:4899 -> a
+    17376:17376:void applyMinimumKeepInfoWhenLiveOrTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3433:3433 -> a
+    17376:17376:void handleServiceInstantiation(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4882 -> a
+    17377:17386:com.android.tools.r8.utils.collections.DexMethodSignatureSet getServiceMethods(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramMethod):4890:4899 -> a
     com.android.tools.r8.graph.DexApplication lambda$synthesize$97(com.android.tools.r8.graph.DexApplication) -> b
     1:1:com.android.tools.r8.shaking.KeepReason com.android.tools.r8.shaking.KeepReason.targetedBySuperFrom(com.android.tools.r8.graph.ProgramMethod):79:79 -> b
     1:1:void markSuperMethodAsReachable(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramMethod):3189 -> b
@@ -111296,127 +111235,119 @@
     1798:1798:void markInterfaceTypeAsLiveViaInheritanceClause(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexProgramClass):2024:2024 -> b
     1799:1799:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramDefinition):1811:1811 -> b
     1799:1799:void markInterfaceTypeAsLiveViaInheritanceClause(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexProgramClass):1994 -> b
-    1800:1803:com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult resolveMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2121:2124 -> b
-    1804:1810:com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult resolveMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2123:2129 -> b
-    1811:1813:void recordNonProgramClass(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):2389:2391 -> b
-    1814:1818:void addLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,boolean,java.util.function.BiConsumer):701:705 -> b
-    1814:1818:void recordNonProgramClass(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):2390 -> b
-    1819:1819:void markInterfaceAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2511:2511 -> b
-    1820:1820:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> b
-    1820:1820:void markInterfaceAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2511 -> b
+    1800:1800:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2043:2043 -> b
+    1801:1801:com.android.tools.r8.graph.DexAnnotation$AnnotatedKind com.android.tools.r8.graph.DexAnnotation$AnnotatedKind.from(com.android.tools.r8.graph.ProgramDefinition):40:40 -> b
+    1801:1801:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2044 -> b
+    1802:1802:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049:2049 -> b
+    1802:1802:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> b
+    1803:1804:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation[],com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2054:2055 -> b
+    1803:1804:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049 -> b
+    1803:1804:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> b
+    1805:1808:com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult resolveMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2121:2124 -> b
+    1809:1815:com.android.tools.r8.graph.MethodResolutionResult$SingleResolutionResult resolveMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2123:2129 -> b
+    1816:1818:void recordNonProgramClass(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):2389:2391 -> b
+    1819:1823:void addLiveNonProgramType(com.android.tools.r8.graph.ClasspathOrLibraryClass,boolean,java.util.function.BiConsumer):701:705 -> b
+    1819:1823:void recordNonProgramClass(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.ProgramDerivedContext):2390 -> b
+    1824:1824:void markInterfaceAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2511:2511 -> b
+    1825:1825:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> b
+    1825:1825:void markInterfaceAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2511 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    1821:1821:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> b
-    1821:1821:void markInterfaceAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2511 -> b
-    1822:1827:void markInterfaceAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2511:2516 -> b
-    1828:1829:void transitionDependentItemsForInstantiatedInterface(com.android.tools.r8.graph.DexProgramClass):2764:2765 -> b
-    1828:1829:void markInterfaceAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2517 -> b
-    1830:1832:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2857:2859 -> b
-    1833:1833:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2858:2858 -> b
-    1834:1835:boolean com.android.tools.r8.graph.ObjectAllocationInfoCollectionImpl.isInstantiatedDirectlyOrHasInstantiatedSubtype(com.android.tools.r8.graph.DexProgramClass):98:99 -> b
-    1834:1835:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2858 -> b
-    1836:1842:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2860:2866 -> b
-    1843:1843:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878:2878 -> b
-    1843:1843:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2872 -> b
-    1844:1844:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramDefinition):1811:1811 -> b
-    1844:1844:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878 -> b
-    1844:1844:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2872 -> b
-    1845:1845:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2879:2879 -> b
-    1845:1845:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2872 -> b
-    1846:1846:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2043:2043 -> b
-    1846:1846:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> b
-    1846:1846:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2872 -> b
-    1847:1847:com.android.tools.r8.graph.DexAnnotation$AnnotatedKind com.android.tools.r8.graph.DexAnnotation$AnnotatedKind.from(com.android.tools.r8.graph.ProgramDefinition):40:40 -> b
-    1847:1847:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2044 -> b
-    1847:1847:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> b
-    1847:1847:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2872 -> b
-    1848:1848:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049:2049 -> b
-    1848:1848:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> b
-    1848:1848:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> b
+    1826:1826:boolean com.android.tools.r8.graph.DexClass.isAnnotation():669:669 -> b
+    1826:1826:void markInterfaceAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2511 -> b
+    1827:1832:void markInterfaceAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2511:2516 -> b
+    1833:1834:void transitionDependentItemsForInstantiatedInterface(com.android.tools.r8.graph.DexProgramClass):2764:2765 -> b
+    1833:1834:void markInterfaceAsInstantiated(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.GraphReporter$KeepReasonWitness):2517 -> b
+    1835:1837:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2857:2859 -> b
+    1838:1838:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2858:2858 -> b
+    1839:1840:boolean com.android.tools.r8.graph.ObjectAllocationInfoCollectionImpl.isInstantiatedDirectlyOrHasInstantiatedSubtype(com.android.tools.r8.graph.DexProgramClass):98:99 -> b
+    1839:1840:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2858 -> b
+    1841:1847:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2860:2866 -> b
+    1848:1848:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878:2878 -> b
     1848:1848:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2872 -> b
-    1849:1850:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation[],com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2054:2055 -> b
-    1849:1850:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049 -> b
-    1849:1850:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> b
-    1849:1850:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2880 -> b
-    1849:1850:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2872 -> b
-    1851:1851:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2874:2874 -> b
-    1852:1852:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2868:2868 -> b
-    1853:1854:void traceFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult,com.android.tools.r8.graph.ProgramMethod):2887:2888 -> b
-    1853:1854:void lambda$traceInstanceFieldWrite$28(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):1587 -> b
-    1855:1855:void lambda$traceInstanceFieldWrite$28(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):1588:1588 -> b
-    1856:1856:boolean isFieldReferenced(com.android.tools.r8.graph.DexEncodedField):2914:2914 -> b
-    1857:1857:boolean isFieldLive(com.android.tools.r8.graph.ProgramField):2923:2923 -> b
-    1858:1858:boolean isMethodTargeted(com.android.tools.r8.graph.DexEncodedMethod):2989:2989 -> b
-    1859:1859:boolean lambda$markVirtualMethodAsReachable$74(com.android.tools.r8.graph.DexDefinition):3111:3111 -> b
-    1860:1860:boolean com.android.tools.r8.shaking.KeepInfoCollection.isPinned(com.android.tools.r8.graph.DexReference,com.android.tools.r8.graph.DexDefinitionSupplier,com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):160:160 -> b
-    1860:1860:boolean lambda$markVirtualMethodAsReachable$74(com.android.tools.r8.graph.DexDefinition):3111 -> b
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    1849:1849:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramDefinition):1811:1811 -> b
+    1849:1849:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2878 -> b
+    1849:1849:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2872 -> b
+    1850:1851:void traceFieldDefinition(com.android.tools.r8.graph.ProgramField):2879:2880 -> b
+    1850:1851:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2872 -> b
+    1852:1852:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2874:2874 -> b
+    1853:1853:void markFieldAsReachable(com.android.tools.r8.graph.ProgramField,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.shaking.KeepReason):2868:2868 -> b
+    1854:1855:void traceFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult,com.android.tools.r8.graph.ProgramMethod):2887:2888 -> b
+    1854:1855:void lambda$traceInstanceFieldWrite$28(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):1587 -> b
+    1856:1856:void lambda$traceInstanceFieldWrite$28(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult):1588:1588 -> b
+    1857:1857:boolean isFieldReferenced(com.android.tools.r8.graph.DexEncodedField):2914:2914 -> b
+    1858:1858:boolean isFieldLive(com.android.tools.r8.graph.ProgramField):2923:2923 -> b
+    1859:1859:boolean isMethodTargeted(com.android.tools.r8.graph.DexEncodedMethod):2989:2989 -> b
+    1860:1860:boolean lambda$markVirtualMethodAsReachable$74(com.android.tools.r8.graph.DexDefinition):3111:3111 -> b
     1861:1861:boolean com.android.tools.r8.shaking.KeepInfoCollection.isPinned(com.android.tools.r8.graph.DexReference,com.android.tools.r8.graph.DexDefinitionSupplier,com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):160:160 -> b
     1861:1861:boolean lambda$markVirtualMethodAsReachable$74(com.android.tools.r8.graph.DexDefinition):3111 -> b
-    1862:1866:com.android.tools.r8.graph.DexMethod generatedEnumValuesMethod(com.android.tools.r8.graph.DexClass):3163:3167 -> b
-    1862:1866:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175 -> b
-    1867:1867:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):0:0 -> b
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":1884,"2":1885,"3":1886}}
-    1884:1884:com.android.tools.r8.graph.DexMethod generatedEnumValuesMethod(com.android.tools.r8.graph.DexClass):3167:3167 -> b
-    1884:1884:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175 -> b
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    1862:1862:boolean com.android.tools.r8.shaking.KeepInfoCollection.isPinned(com.android.tools.r8.graph.DexReference,com.android.tools.r8.graph.DexDefinitionSupplier,com.android.tools.r8.shaking.GlobalKeepInfoConfiguration):160:160 -> b
+    1862:1862:boolean lambda$markVirtualMethodAsReachable$74(com.android.tools.r8.graph.DexDefinition):3111 -> b
+    1863:1867:com.android.tools.r8.graph.DexMethod generatedEnumValuesMethod(com.android.tools.r8.graph.DexClass):3163:3167 -> b
+    1863:1867:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175 -> b
+    1868:1868:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):0:0 -> b
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":1885,"2":1886,"3":1887}}
     1885:1885:com.android.tools.r8.graph.DexMethod generatedEnumValuesMethod(com.android.tools.r8.graph.DexClass):3167:3167 -> b
     1885:1885:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175 -> b
     1886:1886:com.android.tools.r8.graph.DexMethod generatedEnumValuesMethod(com.android.tools.r8.graph.DexClass):3167:3167 -> b
     1886:1886:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175 -> b
-    1868:1868:com.android.tools.r8.graph.DexMethod generatedEnumValuesMethod(com.android.tools.r8.graph.DexClass):3167:3167 -> b
-    1868:1868:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175 -> b
-    1869:1874:com.android.tools.r8.graph.DexMethod generatedEnumValuesMethod(com.android.tools.r8.graph.DexClass):3166:3171 -> b
-    1869:1874:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175 -> b
-    1875:1880:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175:3180 -> b
-    1881:1881:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> b
-    1881:1881:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3183 -> b
-    1882:1882:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> b
-    1882:1882:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> b
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    1887:1887:com.android.tools.r8.graph.DexMethod generatedEnumValuesMethod(com.android.tools.r8.graph.DexClass):3167:3167 -> b
+    1887:1887:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175 -> b
+    1869:1869:com.android.tools.r8.graph.DexMethod generatedEnumValuesMethod(com.android.tools.r8.graph.DexClass):3167:3167 -> b
+    1869:1869:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175 -> b
+    1870:1875:com.android.tools.r8.graph.DexMethod generatedEnumValuesMethod(com.android.tools.r8.graph.DexClass):3166:3171 -> b
+    1870:1875:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175 -> b
+    1876:1881:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3175:3180 -> b
+    1882:1882:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354:2354 -> b
     1882:1882:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3183 -> b
-    1883:1883:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2355:2355 -> b
-    1883:1883:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3183 -> b
-    1887:1887:void lambda$markEnumValuesAsReachable$81(com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3182:3182 -> b
-    1888:1898:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3238:3248 -> b
-    1899:1899:boolean com.android.tools.r8.shaking.Enqueuer$Mode.isInitialMainDexTracing():216:216 -> b
-    1899:1899:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3248 -> b
-    1900:1903:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3249:3252 -> b
-    1904:1904:boolean com.android.tools.r8.shaking.Enqueuer$Mode.isGenerateMainDexList():224:224 -> b
-    1904:1904:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3252 -> b
-    1905:1909:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3251:3255 -> b
-    1910:1910:com.android.tools.r8.shaking.MainDexInfo com.android.tools.r8.shaking.MainDexInfo$Builder.build(com.android.tools.r8.shaking.MainDexInfo):406:406 -> b
-    1910:1910:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3256 -> b
-    1911:1911:void lambda$applyMinimumKeepInfoWhenLive$89(com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3340:3340 -> b
-    1912:1912:void lambda$applyMinimumKeepInfoWhenLive$91(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3389:3389 -> b
-    1913:1913:void lambda$applyMinimumKeepInfoWhenLiveOrTargeted$93(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3441:3441 -> b
-    1914:1914:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3454:3454 -> b
-    1915:1915:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> b
-    1915:1915:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3455 -> b
+    1883:1883:boolean com.android.tools.r8.utils.InternalOptions.isMinificationEnabled():620:620 -> b
+    1883:1883:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2354 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    1883:1883:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3183 -> b
+    1884:1884:void shouldNotBeMinified(com.android.tools.r8.graph.ProgramDefinition):2355:2355 -> b
+    1884:1884:void markEnumValuesAsReachable(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepReason):3183 -> b
+    1888:1888:void lambda$markEnumValuesAsReachable$81(com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3182:3182 -> b
+    1889:1899:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3238:3248 -> b
+    1900:1900:boolean com.android.tools.r8.shaking.Enqueuer$Mode.isInitialMainDexTracing():216:216 -> b
+    1900:1900:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3248 -> b
+    1901:1904:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3249:3252 -> b
+    1905:1905:boolean com.android.tools.r8.shaking.Enqueuer$Mode.isGenerateMainDexList():224:224 -> b
+    1905:1905:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3252 -> b
+    1906:1910:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3251:3255 -> b
+    1911:1911:com.android.tools.r8.shaking.MainDexInfo com.android.tools.r8.shaking.MainDexInfo$Builder.build(com.android.tools.r8.shaking.MainDexInfo):406:406 -> b
+    1911:1911:com.android.tools.r8.shaking.MainDexInfo traceMainDex(java.util.concurrent.ExecutorService,com.android.tools.r8.utils.Timing):3256 -> b
+    1912:1912:void lambda$applyMinimumKeepInfoWhenLive$89(com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3340:3340 -> b
+    1913:1913:void lambda$applyMinimumKeepInfoWhenLive$91(com.android.tools.r8.shaking.KeepFieldInfo$Joiner,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3389:3389 -> b
+    1914:1914:void lambda$applyMinimumKeepInfoWhenLiveOrTargeted$93(com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3441:3441 -> b
+    1915:1915:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3454:3454 -> b
     1916:1916:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> b
     1916:1916:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3455 -> b
-    1917:1917:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3456:3456 -> b
-    1918:1920:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):902:904 -> b
-    1918:1920:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3457 -> b
-    1921:1921:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> b
-    1921:1921:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):907 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    1921:1921:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3457 -> b
-    1922:1922:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):907:907 -> b
+    1917:1917:boolean com.android.tools.r8.shaking.KeepInfo$Joiner.isShrinkingAllowed():518:518 -> b
+    1917:1917:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3455 -> b
+    1918:1918:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3456:3456 -> b
+    1919:1921:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):902:904 -> b
+    1919:1921:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3457 -> b
+    1922:1922:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> b
+    1922:1922:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):907 -> b
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     1922:1922:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3457 -> b
-    1923:1923:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):906:906 -> b
+    1923:1923:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):907:907 -> b
     1923:1923:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3457 -> b
-    1924:1924:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):904:904 -> b
+    1924:1924:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):906:906 -> b
     1924:1924:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3457 -> b
-    1925:1925:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3459:3459 -> b
-    1926:1926:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> b
-    1926:1926:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3460 -> b
-    1927:1928:void enqueueHolderWithDependentInstanceConstructor(com.android.tools.r8.graph.ProgramMethod,java.util.Set):2036:2037 -> b
-    1927:1928:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3460 -> b
-    1929:1929:void lambda$applyMinimumKeepInfoDependentOn$94(com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3489:3489 -> b
-    1930:1930:void lambda$applyMinimumKeepInfoDependentOn$95(com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3491:3491 -> b
-    1931:1933:void recordTwrCloseResourceMethodSynthesizingContext(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod):3730:3732 -> b
-    1934:1938:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod):4485:4489 -> b
-    1939:1939:void lambda$handleReflectiveBehavior$117(com.android.tools.r8.shaking.KeepClassInfo$Joiner):4548:4548 -> b
+    1925:1925:void enqueueMethodDueToNoShrinkingRule(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepMethodInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):904:904 -> b
+    1925:1925:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3457 -> b
+    1926:1926:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3459:3459 -> b
+    1927:1927:java.util.Set com.android.tools.r8.shaking.KeepInfo$Joiner.getRules():506:506 -> b
+    1927:1927:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3460 -> b
+    1928:1929:void enqueueHolderWithDependentInstanceConstructor(com.android.tools.r8.graph.ProgramMethod,java.util.Set):2036:2037 -> b
+    1928:1929:void enqueueMethodIfShrinkingIsDisallowed(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.shaking.KeepMethodInfo$Joiner):3460 -> b
+    1930:1930:void lambda$applyMinimumKeepInfoDependentOn$94(com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner):3489:3489 -> b
+    1931:1931:void lambda$applyMinimumKeepInfoDependentOn$95(com.android.tools.r8.shaking.EnqueuerEvent,com.android.tools.r8.graph.ProgramField,com.android.tools.r8.shaking.KeepFieldInfo$Joiner):3491:3491 -> b
+    1932:1934:void recordTwrCloseResourceMethodSynthesizingContext(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.graph.ProgramMethod):3730:3732 -> b
+    1935:1939:void handleReflectiveBehavior(com.android.tools.r8.graph.ProgramMethod):4485:4489 -> b
+    1940:1940:void lambda$handleReflectiveBehavior$117(com.android.tools.r8.shaking.KeepClassInfo$Joiner):4548:4548 -> b
     1:1:com.android.tools.r8.graph.FieldAccessInfoCollectionImpl access$1800(com.android.tools.r8.shaking.Enqueuer):193:193 -> c
     2:2:com.android.tools.r8.shaking.Enqueuer registerInstanceOfAnalysis(com.android.tools.r8.graph.analysis.EnqueuerInstanceOfAnalysis):550:550 -> c
     3:4:void setInitialPrunedTypes(java.util.Set):574:575 -> c
@@ -111500,10 +111431,10 @@
     4312:4312:void reportMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2430:2430 -> c
     4313:4313:void reportMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2430:2430 -> c
     4283:4296:void reportMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2430:2443 -> c
-    4297:4297:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> c
+    4297:4297:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> c
     4297:4297:void reportMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2443 -> c
-    4298:4298:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> c
-    4298:4298:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> c
+    4298:4298:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> c
+    4298:4298:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> c
     4298:4298:void reportMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2443 -> c
     4299:4301:void reportMissingClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDerivedContext):2444:2446 -> c
     4314:4315:void traceFieldReference(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.FieldResolutionResult$FailedOrUnknownFieldResolutionResult,com.android.tools.r8.graph.ProgramMethod):2887:2888 -> c
@@ -111701,10 +111632,10 @@
     18:18:void markMethodAsTargeted(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.KeepReason):4380:4380 -> e
     19:19:void recordTypeReference(com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.ProgramDefinition):608:608 -> e
     20:29:void enqueueAllIfNotShrinking():832:841 -> e
-    30:30:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> e
+    30:30:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> e
     30:30:void enqueueAllIfNotShrinking():841 -> e
-    31:31:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> e
-    31:31:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> e
+    31:31:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> e
+    31:31:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> e
     31:31:void enqueueAllIfNotShrinking():841 -> e
     32:33:void enqueueAllIfNotShrinking():841:842 -> e
     34:35:void enqueueClassDueToNoShrinkingRule(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.KeepClassInfo$Joiner,com.android.tools.r8.shaking.EnqueuerEvent):858:859 -> e
@@ -111789,25 +111720,10 @@
     5:20:void markInterfaceInitializedDirectly(com.android.tools.r8.graph.DexProgramClass):2218:2233 -> h
     21:21:void markReferencedTypesAsLive(com.android.tools.r8.graph.ProgramMethod):4415:4415 -> h
     21:21:void traceMethodDefinitionExcludingCode(com.android.tools.r8.graph.ProgramMethod):4384 -> h
-    22:22:void markTypeAsLive(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.ProgramDefinition):1811:1811 -> h
-    22:22:void markReferencedTypesAsLive(com.android.tools.r8.graph.ProgramMethod):4415 -> h
-    22:22:void traceMethodDefinitionExcludingCode(com.android.tools.r8.graph.ProgramMethod):4384 -> h
-    23:26:void markParameterAndReturnTypesAsLive(com.android.tools.r8.graph.ProgramMethod):4420:4423 -> h
-    23:26:void markReferencedTypesAsLive(com.android.tools.r8.graph.ProgramMethod):4416 -> h
-    23:26:void traceMethodDefinitionExcludingCode(com.android.tools.r8.graph.ProgramMethod):4384 -> h
-    27:27:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2043:2043 -> h
-    27:27:void traceMethodDefinitionExcludingCode(com.android.tools.r8.graph.ProgramMethod):4385 -> h
-    28:28:com.android.tools.r8.graph.DexAnnotation$AnnotatedKind com.android.tools.r8.graph.DexAnnotation$AnnotatedKind.from(com.android.tools.r8.graph.ProgramDefinition):40:40 -> h
-    28:28:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2044 -> h
-    28:28:void traceMethodDefinitionExcludingCode(com.android.tools.r8.graph.ProgramMethod):4385 -> h
-    29:29:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049:2049 -> h
-    29:29:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> h
-    29:29:void traceMethodDefinitionExcludingCode(com.android.tools.r8.graph.ProgramMethod):4385 -> h
-    30:31:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotation[],com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2054:2055 -> h
-    30:31:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexAnnotation$AnnotatedKind):2049 -> h
-    30:31:void processAnnotations(com.android.tools.r8.graph.ProgramDefinition):2041 -> h
-    30:31:void traceMethodDefinitionExcludingCode(com.android.tools.r8.graph.ProgramMethod):4385 -> h
-    32:38:void traceMethodDefinitionExcludingCode(com.android.tools.r8.graph.ProgramMethod):4387:4393 -> h
+    22:25:void markParameterAndReturnTypesAsLive(com.android.tools.r8.graph.ProgramMethod):4420:4423 -> h
+    22:25:void markReferencedTypesAsLive(com.android.tools.r8.graph.ProgramMethod):4416 -> h
+    22:25:void traceMethodDefinitionExcludingCode(com.android.tools.r8.graph.ProgramMethod):4384 -> h
+    26:34:void traceMethodDefinitionExcludingCode(com.android.tools.r8.graph.ProgramMethod):4385:4393 -> h
     1:1:java.util.Set access$800(com.android.tools.r8.shaking.Enqueuer):193:193 -> i
     2:2:com.android.tools.r8.shaking.EnqueuerUseRegistryFactory getUseRegistryFactory():531:531 -> i
     3:4:void traceRecordFieldValues(com.android.tools.r8.graph.DexField[],com.android.tools.r8.graph.ProgramMethod):1173:1174 -> i
@@ -113399,7 +113315,7 @@
     1:11:com.android.tools.r8.shaking.KeepUnusedReturnValueRule build():29:39 -> a
     1:11:com.android.tools.r8.shaking.ProguardClassSpecification build():15 -> a
     com.android.tools.r8.shaking.ProguardClassSpecification$Builder self() -> e
-com.android.tools.r8.shaking.L8TreePruner -> com.android.tools.r8.internal.DA:
+com.android.tools.r8.shaking.L8TreePruner -> com.android.tools.r8.internal.EA:
     java.util.List pruned -> b
     java.util.Set emulatedInterfaces -> a
     1:1:void <init>(com.android.tools.r8.utils.InternalOptions):29:29 -> <init>
@@ -113408,7 +113324,7 @@
     1:11:com.android.tools.r8.graph.DexApplication prune(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.ir.desugar.TypeRewriter):37:47 -> a
     12:26:com.android.tools.r8.graph.DexApplication prune(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.ir.desugar.TypeRewriter):44:58 -> a
     27:27:boolean lambda$prune$0(com.android.tools.r8.graph.DexType):52:52 -> a
-com.android.tools.r8.shaking.LibraryMethodOverrideAnalysis -> com.android.tools.r8.internal.HB:
+com.android.tools.r8.shaking.LibraryMethodOverrideAnalysis -> com.android.tools.r8.internal.IB:
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.it.unimi.dsi.fastutil.objects.Object2IntMap escapeDebuggingCounters -> c
     java.util.Set nonEscapingClassesWithLibraryMethodOverrides -> b
@@ -113446,7 +113362,7 @@
     28:28:void logResults():173 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     29:30:void logResults():173:174 -> b
-com.android.tools.r8.shaking.LibraryMethodOverrideAnalysis$LibraryEscapeAnalysisConfiguration -> com.android.tools.r8.internal.GB:
+com.android.tools.r8.shaking.LibraryMethodOverrideAnalysis$LibraryEscapeAnalysisConfiguration -> com.android.tools.r8.internal.HB:
     com.android.tools.r8.shaking.LibraryMethodOverrideAnalysis$LibraryEscapeAnalysisConfiguration INSTANCE -> a
     1:1:void <clinit>():185:185 -> <clinit>
     1:1:void <init>():188:188 -> <init>
@@ -113454,9 +113370,9 @@
     2:4:boolean isLegitimateEscapeRoute(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.escape.EscapeAnalysis,com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.graph.ProgramMethod):200:202 -> a
     5:27:boolean com.android.tools.r8.shaking.LibraryMethodOverrideAnalysis$LibraryEscapeAnalysisConfiguration.isLegitimateConstructorInvocation(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.escape.EscapeAnalysis,com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.graph.ProgramMethod):212:234 -> a
     5:27:boolean isLegitimateEscapeRoute(com.android.tools.r8.graph.AppView,com.android.tools.r8.ir.analysis.escape.EscapeAnalysis,com.android.tools.r8.ir.code.Instruction,com.android.tools.r8.graph.ProgramMethod):201 -> a
-com.android.tools.r8.shaking.LibraryModeledPredicate -> com.android.tools.r8.internal.KB:
+com.android.tools.r8.shaking.LibraryModeledPredicate -> com.android.tools.r8.internal.LB:
     boolean isModeled(com.android.tools.r8.graph.DexType) -> c
-com.android.tools.r8.shaking.MainDexDirectReferenceTracer -> com.android.tools.r8.internal.wD:
+com.android.tools.r8.shaking.MainDexDirectReferenceTracer -> com.android.tools.r8.internal.xD:
     com.android.tools.r8.graph.AppView appView -> b
     java.util.function.Consumer consumer -> c
     com.android.tools.r8.shaking.MainDexDirectReferenceTracer$AnnotationDirectReferenceCollector annotationDirectReferenceCollector -> a
@@ -113500,7 +113416,7 @@
     32:45:com.android.tools.r8.graph.DexProgramClass getFirstReferenceOutsideFromCode(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ProgramMethod,java.util.function.Predicate):79:92 -> a
     46:50:void lambda$getFirstReferenceOutsideFromCode$2(com.android.tools.r8.graph.AppView,java.util.function.Predicate,com.android.tools.r8.utils.Box,com.android.tools.r8.graph.DexType):83:87 -> a
     1:1:java.util.function.Consumer access$300(com.android.tools.r8.shaking.MainDexDirectReferenceTracer):30:30 -> b
-com.android.tools.r8.shaking.MainDexDirectReferenceTracer$AnnotationDirectReferenceCollector -> com.android.tools.r8.internal.uD:
+com.android.tools.r8.shaking.MainDexDirectReferenceTracer$AnnotationDirectReferenceCollector -> com.android.tools.r8.internal.vD:
     com.android.tools.r8.shaking.MainDexDirectReferenceTracer this$0 -> a
     1:1:void <init>(com.android.tools.r8.shaking.MainDexDirectReferenceTracer):189:189 -> <init>
     2:2:void <init>(com.android.tools.r8.shaking.MainDexDirectReferenceTracer,com.android.tools.r8.shaking.MainDexDirectReferenceTracer$1):189:189 -> <init>
@@ -113512,7 +113428,7 @@
     8:8:boolean addCallSite(com.android.tools.r8.graph.DexCallSite):233:233 -> a
     9:9:boolean addMethodHandle(com.android.tools.r8.graph.DexMethodHandle):238:238 -> a
     1:2:boolean addField(com.android.tools.r8.graph.DexField):199:200 -> b
-com.android.tools.r8.shaking.MainDexDirectReferenceTracer$DirectReferencesCollector -> com.android.tools.r8.internal.vD:
+com.android.tools.r8.shaking.MainDexDirectReferenceTracer$DirectReferencesCollector -> com.android.tools.r8.internal.wD:
     com.android.tools.r8.shaking.MainDexDirectReferenceTracer this$0 -> e
     1:1:void <init>(com.android.tools.r8.shaking.MainDexDirectReferenceTracer,com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.MainDexDirectReferenceTracer$1):107:107 -> <init>
     2:3:void <init>(com.android.tools.r8.shaking.MainDexDirectReferenceTracer,com.android.tools.r8.graph.ProgramMethod):109:110 -> <init>
@@ -113677,14 +113593,14 @@
     1:1:boolean contains(com.android.tools.r8.graph.DexType):384 -> e
     2:2:boolean isDependency(com.android.tools.r8.graph.DexType):376:376 -> e
     2:2:boolean contains(com.android.tools.r8.graph.DexType):384 -> e
-com.android.tools.r8.shaking.MainDexInfo$MainDexGroup -> com.android.tools.r8.internal.xD:
+com.android.tools.r8.shaking.MainDexInfo$MainDexGroup -> com.android.tools.r8.internal.yD:
     com.android.tools.r8.shaking.MainDexInfo$MainDexGroup MAIN_DEX_DEPENDENCY -> d
     com.android.tools.r8.shaking.MainDexInfo$MainDexGroup NOT_IN_MAIN_DEX -> e
     com.android.tools.r8.shaking.MainDexInfo$MainDexGroup MAIN_DEX_LIST -> b
     com.android.tools.r8.shaking.MainDexInfo$MainDexGroup MAIN_DEX_ROOT -> c
     1:4:void <clinit>():38:41 -> <clinit>
     1:1:void <init>(java.lang.String,int):37:37 -> <init>
-com.android.tools.r8.shaking.MainDexListBuilder -> com.android.tools.r8.internal.yD:
+com.android.tools.r8.shaking.MainDexListBuilder -> com.android.tools.r8.internal.zD:
     java.util.Map annotationTypeContainEnum -> c
     com.android.tools.r8.graph.AppView appView -> b
     com.android.tools.r8.shaking.MainDexInfo$Builder mainDexInfoBuilder -> d
@@ -113784,12 +113700,12 @@
     1:1:void <init>(com.android.tools.r8.shaking.MemberValuePropagationRule$1):17:17 -> <init>
     2:2:void <init>():21:21 -> <init>
     com.android.tools.r8.shaking.ProguardClassSpecification$Builder self() -> e
-com.android.tools.r8.shaking.MemberValuePropagationRule$Type$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.nE:
+com.android.tools.r8.shaking.MemberValuePropagationRule$Type$EnumUnboxingLocalUtility -> com.android.tools.r8.internal.oE:
 # {"id":"sourceFile","fileName":"R8$$SyntheticClass"}
 # {"id":"com.android.tools.r8.synthesized"}
     java.lang.String stringValueOf(int) -> a
       # {"id":"com.android.tools.r8.synthesized"}
-com.android.tools.r8.shaking.MinimumKeepInfoCollection -> com.android.tools.r8.internal.kF:
+com.android.tools.r8.shaking.MinimumKeepInfoCollection -> com.android.tools.r8.internal.lF:
     java.util.Map minimumKeepInfo -> a
     com.android.tools.r8.shaking.MinimumKeepInfoCollection EMPTY -> b
     boolean $assertionsDisabled -> c
@@ -113846,7 +113762,7 @@
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     1:1:com.android.tools.r8.shaking.KeepInfo$Joiner lambda$getOrCreateMinimumKeepInfoFor$5(com.android.tools.r8.graph.DexReference):100:100 -> b
     2:2:boolean isEmpty():110:110 -> b
-com.android.tools.r8.shaking.MissingClasses -> com.android.tools.r8.internal.oF:
+com.android.tools.r8.shaking.MissingClasses -> com.android.tools.r8.internal.pF:
     java.util.Set missingClasses -> a
     1:1:void <init>(java.util.Set,com.android.tools.r8.shaking.MissingClasses$1):37:37 -> <init>
     2:3:void <init>(java.util.Set):41:42 -> <init>
@@ -113854,7 +113770,7 @@
     2:2:void forEach(java.util.function.Consumer):54:54 -> a
     3:3:boolean contains(com.android.tools.r8.graph.DexType):58:58 -> a
     1:1:com.android.tools.r8.shaking.MissingClasses empty():50:50 -> b
-com.android.tools.r8.shaking.MissingClasses$Builder -> com.android.tools.r8.internal.nF:
+com.android.tools.r8.shaking.MissingClasses$Builder -> com.android.tools.r8.internal.oF:
     java.util.Map newMissingClasses -> b
     java.util.Set newIgnoredMissingClasses -> c
     java.util.Set alreadyMissingClasses -> a
@@ -113879,12 +113795,12 @@
     45:58:java.util.Set com.android.tools.r8.shaking.MissingClasses$Builder.rewriteMissingClassContextsForSingleMissingClass(com.android.tools.r8.graph.AppView,java.util.Set,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):180:193 -> a
     45:58:void com.android.tools.r8.shaking.MissingClasses$Builder.rewriteMissingClassContexts(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):171 -> a
     45:58:java.util.Map getMissingClassesToBeReported(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):233 -> a
-    59:59:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
+    59:59:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
     59:59:java.util.Set com.android.tools.r8.shaking.MissingClasses$Builder.rewriteMissingClassContextsForSingleMissingClass(com.android.tools.r8.graph.AppView,java.util.Set,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):193 -> a
     59:59:void com.android.tools.r8.shaking.MissingClasses$Builder.rewriteMissingClassContexts(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):171 -> a
     59:59:java.util.Map getMissingClassesToBeReported(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):233 -> a
-    60:60:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    60:60:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
+    60:60:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    60:60:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
     60:60:java.util.Set com.android.tools.r8.shaking.MissingClasses$Builder.rewriteMissingClassContextsForSingleMissingClass(com.android.tools.r8.graph.AppView,java.util.Set,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):193 -> a
     60:60:void com.android.tools.r8.shaking.MissingClasses$Builder.rewriteMissingClassContexts(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):171 -> a
     60:60:java.util.Map getMissingClassesToBeReported(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):233 -> a
@@ -113929,10 +113845,10 @@
     129:129:boolean lambda$getIsCompilerSynthesizedAllowedMissingClassesPredicate$8(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexType):313 -> a
     1:1:void ignoreNewMissingClass(com.android.tools.r8.graph.DexType):110:110 -> b
     2:5:com.android.tools.r8.shaking.MissingClasses reportMissingClasses(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):135:138 -> b
-    6:6:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> b
+    6:6:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> b
     6:6:com.android.tools.r8.shaking.MissingClasses reportMissingClasses(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):139 -> b
     7:7:com.android.tools.r8.shaking.MissingClasses reportMissingClasses(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):139:139 -> b
-    8:8:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> b
+    8:8:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> b
     8:8:com.android.tools.r8.shaking.MissingClasses reportMissingClasses(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):141 -> b
     9:9:com.android.tools.r8.shaking.MissingClasses reportMissingClasses(com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):141:141 -> b
     10:12:com.android.tools.r8.shaking.MissingClasses com.android.tools.r8.shaking.MissingClasses$Builder.build():331:333 -> b
@@ -114020,7 +113936,7 @@
     1:1:void <init>(com.android.tools.r8.shaking.NoVerticalClassMergingRule$1):14:14 -> <init>
     2:2:void <init>():18:18 -> <init>
     com.android.tools.r8.shaking.ProguardClassSpecification$Builder self() -> e
-com.android.tools.r8.shaking.ProguardAccessFlags -> com.android.tools.r8.internal.tN:
+com.android.tools.r8.shaking.ProguardAccessFlags -> com.android.tools.r8.internal.uN:
     java.util.List NAMES -> c
     int PPP_MASK -> b
     int flags -> a
@@ -114264,7 +114180,7 @@
     3:3:java.util.List buildInheritanceAnnotations():120:120 -> c
     1:7:com.android.tools.r8.position.Position getPosition():73:79 -> d
     com.android.tools.r8.shaking.ProguardClassSpecification$Builder self() -> e
-com.android.tools.r8.shaking.ProguardClassType -> com.android.tools.r8.internal.AN:
+com.android.tools.r8.shaking.ProguardClassType -> com.android.tools.r8.internal.BN:
     com.android.tools.r8.shaking.ProguardClassType ANNOTATION_INTERFACE -> b
     com.android.tools.r8.shaking.ProguardClassType INTERFACE -> e
     com.android.tools.r8.shaking.ProguardClassType UNSPECIFIED -> f
@@ -114283,25 +114199,25 @@
     12:12:java.lang.String toString():46:46 -> toString
     13:13:java.lang.String toString():45:45 -> toString
     14:14:java.lang.String toString():44:44 -> toString
-com.android.tools.r8.shaking.ProguardClassType$1 -> com.android.tools.r8.internal.uN:
+com.android.tools.r8.shaking.ProguardClassType$1 -> com.android.tools.r8.internal.vN:
     1:1:void <init>(java.lang.String,int):10:10 -> <init>
     1:1:boolean matches(com.android.tools.r8.graph.DexClass):13:13 -> a
-com.android.tools.r8.shaking.ProguardClassType$2 -> com.android.tools.r8.internal.vN:
+com.android.tools.r8.shaking.ProguardClassType$2 -> com.android.tools.r8.internal.wN:
     1:1:void <init>(java.lang.String,int):16:16 -> <init>
     boolean matches(com.android.tools.r8.graph.DexClass) -> a
-com.android.tools.r8.shaking.ProguardClassType$3 -> com.android.tools.r8.internal.wN:
+com.android.tools.r8.shaking.ProguardClassType$3 -> com.android.tools.r8.internal.xN:
     1:1:void <init>(java.lang.String,int):22:22 -> <init>
     1:1:boolean matches(com.android.tools.r8.graph.DexClass):25:25 -> a
-com.android.tools.r8.shaking.ProguardClassType$4 -> com.android.tools.r8.internal.xN:
+com.android.tools.r8.shaking.ProguardClassType$4 -> com.android.tools.r8.internal.yN:
     1:1:void <init>(java.lang.String,int):28:28 -> <init>
     1:1:boolean matches(com.android.tools.r8.graph.DexClass):31:31 -> a
-com.android.tools.r8.shaking.ProguardClassType$5 -> com.android.tools.r8.internal.yN:
+com.android.tools.r8.shaking.ProguardClassType$5 -> com.android.tools.r8.internal.zN:
     1:1:void <init>(java.lang.String,int):34:34 -> <init>
     boolean matches(com.android.tools.r8.graph.DexClass) -> a
-com.android.tools.r8.shaking.ProguardClassType$6 -> com.android.tools.r8.internal.zN:
+com.android.tools.r8.shaking.ProguardClassType$6 -> com.android.tools.r8.internal.AN:
     int[] $SwitchMap$com$android$tools$r8$shaking$ProguardClassType -> a
     1:1:void <clinit>():43:43 -> <clinit>
-com.android.tools.r8.shaking.ProguardCompatibilityActions -> com.android.tools.r8.internal.CN:
+com.android.tools.r8.shaking.ProguardCompatibilityActions -> com.android.tools.r8.internal.DN:
     java.util.Set compatInstantiatedTypes -> a
     1:1:void <init>(java.util.Set,com.android.tools.r8.shaking.ProguardCompatibilityActions$1):14:14 -> <init>
     2:3:void <init>(java.util.Set):18:19 -> <init>
@@ -114321,7 +114237,7 @@
     53:53:com.android.tools.r8.shaking.ProguardCompatibilityActions withoutPrunedItems(com.android.tools.r8.graph.PrunedItems):31 -> a
     54:59:com.android.tools.r8.shaking.ProguardCompatibilityActions withoutPrunedItems(com.android.tools.r8.graph.PrunedItems):32:37 -> a
     60:60:boolean isCompatInstantiated(com.android.tools.r8.graph.DexProgramClass):27:27 -> a
-com.android.tools.r8.shaking.ProguardCompatibilityActions$Builder -> com.android.tools.r8.internal.BN:
+com.android.tools.r8.shaking.ProguardCompatibilityActions$Builder -> com.android.tools.r8.internal.CN:
     java.util.Set compatInstantiatedTypes -> a
     1:3:void <init>():48:50 -> <init>
     1:1:void addCompatInstantiatedType(com.android.tools.r8.graph.DexProgramClass):53:53 -> a
@@ -116477,9 +116393,9 @@
     1:1:com.android.tools.r8.graph.DexItemFactory dexItemFactory():148:148 -> a
     1:1:com.android.tools.r8.graph.ClassResolutionResult contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):135:135 -> d
     1:4:com.android.tools.r8.graph.DexClass definitionFor(com.android.tools.r8.graph.DexType):140:143 -> e
-com.android.tools.r8.shaking.ProguardConfigurationSource -> com.android.tools.r8.internal.EN:
+com.android.tools.r8.shaking.ProguardConfigurationSource -> com.android.tools.r8.internal.FN:
     java.nio.file.Path getBaseDirectory() -> a
-com.android.tools.r8.shaking.ProguardConfigurationSourceBytes -> com.android.tools.r8.internal.FN:
+com.android.tools.r8.shaking.ProguardConfigurationSourceBytes -> com.android.tools.r8.internal.GN:
     byte[] bytes -> a
     com.android.tools.r8.origin.Origin origin -> b
     1:3:void <init>(byte[],com.android.tools.r8.origin.Origin):18:20 -> <init>
@@ -116487,14 +116403,14 @@
     1:1:java.lang.String get():29:29 -> get
     1:1:java.lang.String getName():40:40 -> getName
     1:1:com.android.tools.r8.origin.Origin getOrigin():45:45 -> getOrigin
-com.android.tools.r8.shaking.ProguardConfigurationSourceFile -> com.android.tools.r8.internal.GN:
+com.android.tools.r8.shaking.ProguardConfigurationSourceFile -> com.android.tools.r8.internal.HN:
     java.nio.file.Path path -> a
     1:2:void <init>(java.nio.file.Path):18:19 -> <init>
     1:5:java.nio.file.Path getBaseDirectory():29:33 -> a
     1:1:java.lang.String get():24:24 -> get
     1:1:java.lang.String getName():40:40 -> getName
     1:1:com.android.tools.r8.origin.Origin getOrigin():45:45 -> getOrigin
-com.android.tools.r8.shaking.ProguardConfigurationSourceStrings -> com.android.tools.r8.internal.HN:
+com.android.tools.r8.shaking.ProguardConfigurationSourceStrings -> com.android.tools.r8.internal.IN:
     java.util.List config -> b
     com.android.tools.r8.origin.Origin origin -> c
     java.nio.file.Path basePath -> a
@@ -116623,7 +116539,7 @@
     1:1:void <init>():65:65 -> <init>
     2:2:void <init>():62:62 -> <init>
     com.android.tools.r8.shaking.ProguardClassSpecification$Builder self() -> e
-com.android.tools.r8.shaking.ProguardKeepAttributes -> com.android.tools.r8.internal.IN:
+com.android.tools.r8.shaking.ProguardKeepAttributes -> com.android.tools.r8.internal.JN:
     boolean runtimeInvisibleAnnotations -> m
     boolean runtimeVisibleParameterAnnotations -> n
     boolean runtimeInvisibleParameterAnnotations -> o
@@ -116739,7 +116655,7 @@
     1:1:com.android.tools.r8.shaking.ProguardKeepRuleModifiers$Builder setAllowsOptimization(boolean):34:34 -> e
     1:1:com.android.tools.r8.shaking.ProguardKeepRuleModifiers$Builder setAllowsShrinking(boolean):29:29 -> f
     1:1:void setIncludeDescriptorClasses(boolean):44:44 -> g
-com.android.tools.r8.shaking.ProguardKeepRuleType -> com.android.tools.r8.internal.KN:
+com.android.tools.r8.shaking.ProguardKeepRuleType -> com.android.tools.r8.internal.LN:
     com.android.tools.r8.shaking.ProguardKeepRuleType[] $VALUES -> f
     com.android.tools.r8.shaking.ProguardKeepRuleType KEEP -> b
     com.android.tools.r8.shaking.ProguardKeepRuleType KEEP_CLASS_MEMBERS -> c
@@ -116754,7 +116670,7 @@
     13:13:java.lang.String toString():22:22 -> toString
     14:14:java.lang.String toString():20:20 -> toString
     15:15:java.lang.String toString():18:18 -> toString
-com.android.tools.r8.shaking.ProguardKeepRuleType$1 -> com.android.tools.r8.internal.JN:
+com.android.tools.r8.shaking.ProguardKeepRuleType$1 -> com.android.tools.r8.internal.KN:
     int[] $SwitchMap$com$android$tools$r8$shaking$ProguardKeepRuleType -> a
     1:1:void <clinit>():16:16 -> <clinit>
 com.android.tools.r8.shaking.ProguardMemberRule -> com.android.tools.r8.shaking.U1:
@@ -116856,7 +116772,7 @@
     134:134:java.lang.String toString():115:115 -> toString
     135:135:java.lang.String toString():116:116 -> toString
     118:132:java.lang.String toString():117:131 -> toString
-com.android.tools.r8.shaking.ProguardMemberType -> com.android.tools.r8.internal.QN:
+com.android.tools.r8.shaking.ProguardMemberType -> com.android.tools.r8.internal.RN:
     com.android.tools.r8.shaking.ProguardMemberType CONSTRUCTOR -> h
     com.android.tools.r8.shaking.ProguardMemberType INIT -> g
     com.android.tools.r8.shaking.ProguardMemberType CLINIT -> f
@@ -116925,7 +116841,7 @@
     1:1:boolean equals(java.lang.Object):209:209 -> equals
     1:1:int hashCode():214:214 -> hashCode
     1:1:java.lang.String toString():204:204 -> toString
-com.android.tools.r8.shaking.ProguardPackageMatcher -> com.android.tools.r8.internal.RN:
+com.android.tools.r8.shaking.ProguardPackageMatcher -> com.android.tools.r8.internal.SN:
     java.lang.String pattern -> a
     1:2:void <init>(java.lang.String):10:11 -> <init>
     1:1:boolean matches(java.lang.String):15:15 -> a
@@ -117014,7 +116930,7 @@
     1:1:void <init>(java.util.List,com.android.tools.r8.shaking.ProguardPathList$1):103:103 -> <init>
     2:3:void <init>(java.util.List):106:107 -> <init>
     1:4:boolean matches(java.lang.String):112:115 -> a
-com.android.tools.r8.shaking.ProguardRuleParserException -> com.android.tools.r8.internal.SN:
+com.android.tools.r8.shaking.ProguardRuleParserException -> com.android.tools.r8.internal.TN:
     com.android.tools.r8.position.Position position -> e
     com.android.tools.r8.origin.Origin origin -> d
     java.lang.String snippet -> c
@@ -117248,7 +117164,7 @@
     1:1:com.android.tools.r8.shaking.ReprocessMethodRule$Builder setType(com.android.tools.r8.shaking.ReprocessMethodRule$Type):28:28 -> a
     com.android.tools.r8.shaking.ProguardClassSpecification$Builder self() -> e
     1:11:com.android.tools.r8.shaking.ReprocessMethodRule build():39:49 -> f
-com.android.tools.r8.shaking.RootSetUtils -> com.android.tools.r8.internal.aU:
+com.android.tools.r8.shaking.RootSetUtils -> com.android.tools.r8.internal.bU:
 com.android.tools.r8.shaking.RootSetUtils$1 -> com.android.tools.r8.shaking.v2:
     int[] $SwitchMap$com$android$tools$r8$shaking$InlineRule$Type -> b
     int[] $SwitchMap$com$android$tools$r8$shaking$ClassInlineRule$Type -> c
@@ -117688,11 +117604,11 @@
     2718:2723:void process(com.android.tools.r8.graph.DexClass,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardIfRule):252 -> a
     2724:2726:void evaluateCheckDiscardRule(com.android.tools.r8.graph.DexClass,com.android.tools.r8.shaking.ProguardCheckDiscardRule):1364:1366 -> a
     2724:2726:void process(com.android.tools.r8.graph.DexClass,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardIfRule):252 -> a
-    2727:2727:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    2727:2727:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     2727:2727:void evaluateCheckDiscardRule(com.android.tools.r8.graph.DexClass,com.android.tools.r8.shaking.ProguardCheckDiscardRule):1366 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     2727:2727:void process(com.android.tools.r8.graph.DexClass,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardIfRule):252 -> a
-    2728:2728:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    2728:2728:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     2728:2728:void evaluateCheckDiscardRule(com.android.tools.r8.graph.DexClass,com.android.tools.r8.shaking.ProguardCheckDiscardRule):1366 -> a
     2728:2728:void process(com.android.tools.r8.graph.DexClass,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardIfRule):252 -> a
     2729:2729:void evaluateCheckDiscardRule(com.android.tools.r8.graph.DexClass,com.android.tools.r8.shaking.ProguardCheckDiscardRule):1366:1366 -> a
@@ -117827,11 +117743,11 @@
     4371:4371:void addItemToSets(com.android.tools.r8.graph.Definition,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1303 -> a
     4372:4384:void evaluateIdentifierNameStringRule(com.android.tools.r8.graph.Definition,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardIfRule):1579:1591 -> a
     4372:4384:void addItemToSets(com.android.tools.r8.graph.Definition,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1303 -> a
-    4385:4385:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    4385:4385:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     4385:4385:void evaluateIdentifierNameStringRule(com.android.tools.r8.graph.Definition,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardIfRule):1591 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     4385:4385:void addItemToSets(com.android.tools.r8.graph.Definition,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1303 -> a
-    4386:4386:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
+    4386:4386:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
     4386:4386:void evaluateIdentifierNameStringRule(com.android.tools.r8.graph.Definition,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardIfRule):1591 -> a
     4386:4386:void addItemToSets(com.android.tools.r8.graph.Definition,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.shaking.ProguardIfRule):1303 -> a
     4387:4387:void evaluateIdentifierNameStringRule(com.android.tools.r8.graph.Definition,com.android.tools.r8.shaking.ProguardConfigurationRule,com.android.tools.r8.shaking.ProguardIfRule):1592:1592 -> a
@@ -118067,7 +117983,7 @@
     53:53:void com.android.tools.r8.logging.Log.verbose(java.lang.Class,java.lang.String,java.lang.Object[]):22:22 -> a
     53:53:void lambda$tryAndKeepMethodOnClass$1(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.shaking.RootSetUtils$RootSetBuilder):634 -> a
     54:55:void lambda$tryAndKeepMethodOnClass$1(com.android.tools.r8.graph.ProgramMethod,com.android.tools.r8.shaking.ProguardMemberRule,com.android.tools.r8.shaking.RootSetUtils$RootSetBuilder):642:643 -> a
-com.android.tools.r8.shaking.RuntimeTypeCheckInfo -> com.android.tools.r8.internal.gU:
+com.android.tools.r8.shaking.RuntimeTypeCheckInfo -> com.android.tools.r8.internal.hU:
     java.util.Set exceptionGuardTypes -> c
     java.util.Set instanceOfTypes -> a
     java.util.Set checkCastTypes -> b
@@ -118079,7 +117995,7 @@
     3:3:boolean com.android.tools.r8.shaking.RuntimeTypeCheckInfo.isExceptionGuardType(com.android.tools.r8.graph.DexProgramClass):102:102 -> a
     3:3:boolean isRuntimeCheckType(com.android.tools.r8.graph.DexProgramClass):106 -> a
     4:7:com.android.tools.r8.shaking.RuntimeTypeCheckInfo rewriteWithLens(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):110:113 -> a
-com.android.tools.r8.shaking.RuntimeTypeCheckInfo$Builder -> com.android.tools.r8.internal.fU:
+com.android.tools.r8.shaking.RuntimeTypeCheckInfo$Builder -> com.android.tools.r8.internal.gU:
     com.android.tools.r8.graph.DexItemFactory factory -> b
     java.util.Set instanceOfTypes -> c
     java.util.Set checkCastTypes -> d
@@ -118117,7 +118033,7 @@
     21:21:com.android.tools.r8.shaking.ScopedDexMethodSet getParent():75:75 -> a
     22:22:void setParent(com.android.tools.r8.shaking.ScopedDexMethodSet):79:79 -> a
     1:1:com.android.tools.r8.shaking.ScopedDexMethodSet newNestedScope():36:36 -> b
-com.android.tools.r8.shaking.SingleTargetLookupCache -> com.android.tools.r8.internal.rV:
+com.android.tools.r8.shaking.SingleTargetLookupCache -> com.android.tools.r8.internal.sV:
     java.util.Map cache -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():16:16 -> <clinit>
@@ -119342,7 +119258,7 @@
     1:1:java.util.List lambda$addNonLegacyClass$0(com.android.tools.r8.graph.DexType):59:59 -> b
     2:9:com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder collectSyntheticInputs():87:94 -> b
     1:1:java.util.List lambda$addNonLegacyMethod$1(com.android.tools.r8.graph.DexType):73:73 -> c
-com.android.tools.r8.synthesis.Rewritable -> com.android.tools.r8.internal.ST:
+com.android.tools.r8.synthesis.Rewritable -> com.android.tools.r8.internal.TT:
     com.android.tools.r8.synthesis.Rewritable rewrite(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens) -> a
     com.android.tools.r8.graph.DexType getHolder() -> b
 com.android.tools.r8.synthesis.SynthesizingContext -> com.android.tools.r8.synthesis.d:
@@ -119549,7 +119465,7 @@
     24:24:com.android.tools.r8.synthesis.SyntheticReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):18 -> a
     17:17:com.android.tools.r8.synthesis.SyntheticClasspathClassReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):42:42 -> a
     17:17:com.android.tools.r8.synthesis.SyntheticReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):18 -> a
-com.android.tools.r8.synthesis.SyntheticClasspathDefinition -> com.android.tools.r8.internal.dY:
+com.android.tools.r8.synthesis.SyntheticClasspathDefinition -> com.android.tools.r8.internal.eY:
 com.android.tools.r8.synthesis.SyntheticDefinition -> com.android.tools.r8.synthesis.k:
     com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind kind -> a
     boolean $assertionsDisabled -> c
@@ -119577,10 +119493,10 @@
     16:22:int compareTo(com.android.tools.r8.synthesis.SyntheticDefinition,boolean,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.features.ClassToFeatureSplitMap):105:111 -> a
     23:23:com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind getKind():54:54 -> a
     23:23:int compareTo(com.android.tools.r8.synthesis.SyntheticDefinition,boolean,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.features.ClassToFeatureSplitMap):112 -> a
-    24:24:boolean com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind.isShareable():107:107 -> a
+    24:24:boolean com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind.isShareable():111:111 -> a
     24:24:int compareTo(com.android.tools.r8.synthesis.SyntheticDefinition,boolean,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.features.ClassToFeatureSplitMap):112 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    28:28:boolean com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind.isShareable():111:111 -> a
+    28:28:boolean com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind.isShareable():115:115 -> a
     28:28:int compareTo(com.android.tools.r8.synthesis.SyntheticDefinition,boolean,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.features.ClassToFeatureSplitMap):112 -> a
     29:29:int compareTo(com.android.tools.r8.synthesis.SyntheticDefinition,boolean,com.android.tools.r8.graph.GraphLens,com.android.tools.r8.features.ClassToFeatureSplitMap):113:113 -> a
     30:31:com.android.tools.r8.synthesis.SynthesizingContext getContext():58:58 -> a
@@ -119603,17 +119519,17 @@
     1:1:com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind getKind():54:54 -> g
     1:1:java.lang.String getPrefixForExternalSyntheticType():62 -> g
     2:2:java.lang.String getPrefixForExternalSyntheticType():62:62 -> g
-    3:6:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):165:168 -> g
+    3:6:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):169:172 -> g
     3:6:java.lang.String getPrefixForExternalSyntheticType():62 -> g
-    7:12:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):167:172 -> g
+    7:12:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):171:176 -> g
     7:12:java.lang.String getPrefixForExternalSyntheticType():62 -> g
-    13:13:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):170:170 -> g
+    13:13:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):174:174 -> g
     13:13:java.lang.String getPrefixForExternalSyntheticType():62 -> g
     boolean isClasspathDefinition() -> h
     boolean isProgramDefinition() -> i
     boolean isValid() -> j
     com.android.tools.r8.synthesis.SyntheticReference toReference() -> k
-com.android.tools.r8.synthesis.SyntheticDefinitionsProvider -> com.android.tools.r8.internal.eY:
+com.android.tools.r8.synthesis.SyntheticDefinitionsProvider -> com.android.tools.r8.internal.fY:
     com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function) -> a
 com.android.tools.r8.synthesis.SyntheticFinalization -> com.android.tools.r8.synthesis.p:
     com.android.tools.r8.utils.InternalOptions options -> a
@@ -119662,15 +119578,15 @@
     156:156:boolean com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind.allowSyntheticContext():103:103 -> a
     156:156:void lambda$verifyNoNestedSynthetics$5(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.synthesis.SyntheticReference):317 -> a
     157:157:void lambda$verifyNoNestedSynthetics$5(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.synthesis.SyntheticReference):321:321 -> a
-    158:161:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):165:168 -> a
+    158:161:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):169:172 -> a
     158:161:void lambda$verifyNoNestedSynthetics$5(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.synthesis.SyntheticReference):321 -> a
-    162:167:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):167:172 -> a
+    162:167:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):171:176 -> a
     162:167:void lambda$verifyNoNestedSynthetics$5(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.synthesis.SyntheticReference):321 -> a
     168:170:void lambda$verifyNoNestedSynthetics$5(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.synthesis.SyntheticReference):322:324 -> a
     171:171:boolean isNotSyntheticType(com.android.tools.r8.graph.DexType):310:310 -> a
     171:171:void lambda$verifyNoNestedSynthetics$5(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.synthesis.SyntheticReference):325 -> a
     172:172:void lambda$verifyNoNestedSynthetics$5(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.synthesis.SyntheticReference):325:325 -> a
-    173:173:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):170:170 -> a
+    173:173:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):174:174 -> a
     173:173:void lambda$verifyNoNestedSynthetics$5(com.android.tools.r8.graph.DexItemFactory,com.android.tools.r8.synthesis.SyntheticReference):321 -> a
     174:184:boolean verifyOneSyntheticPerSyntheticClass():331:341 -> a
     185:186:void lambda$verifyOneSyntheticPerSyntheticClass$6(java.util.Set,com.android.tools.r8.graph.DexType,java.util.List):336:337 -> a
@@ -119790,7 +119706,7 @@
     6:6:void finalizeWithLiveness(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):205 -> c
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     7:7:void finalizeWithLiveness(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):205:205 -> c
-    8:8:void com.android.tools.r8.graph.AppView.rewriteWithLensAndApplication(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication):748:748 -> c
+    8:8:void com.android.tools.r8.graph.AppView.rewriteWithLensAndApplication(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens,com.android.tools.r8.graph.DirectMappedDexApplication):768:768 -> c
     8:8:void finalizeWithLiveness(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):205 -> c
     9:9:void finalizeWithLiveness(com.android.tools.r8.graph.AppView,java.util.concurrent.ExecutorService):207:207 -> c
     10:10:com.android.tools.r8.graph.DexApplication com.android.tools.r8.synthesis.CommittedItems.getApplication():50:50 -> c
@@ -119856,7 +119772,7 @@
     1806:1806:java.lang.String toString():898:898 -> toString
     1807:1807:java.lang.String toString():898:898 -> toString
     1796:1796:java.lang.String toString():898:898 -> toString
-com.android.tools.r8.synthesis.SyntheticFinalization$Result -> com.android.tools.r8.internal.fY:
+com.android.tools.r8.synthesis.SyntheticFinalization$Result -> com.android.tools.r8.internal.gY:
     com.android.tools.r8.synthesis.CommittedItems commit -> a
     com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens lens -> b
     com.android.tools.r8.shaking.MainDexInfo mainDexInfo -> d
@@ -119870,415 +119786,464 @@
     int nextSyntheticId -> a
     com.android.tools.r8.synthesis.CommittedSyntheticsCollection committed -> b
     boolean $assertionsDisabled -> d
-    1:1:void <clinit>():55:55 -> <clinit>
-    1:1:void <init>(com.android.tools.r8.synthesis.CommittedItems):115:115 -> <init>
-    2:2:void <init>(int,com.android.tools.r8.synthesis.CommittedSyntheticsCollection):118:118 -> <init>
-    3:23:void <init>(int,com.android.tools.r8.synthesis.CommittedSyntheticsCollection):100:120 -> <init>
-    1:418:com.android.tools.r8.graph.DexProgramClass addSyntheticClassWithLibraryContext(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.util.function.Consumer):0:417 -> a
-    419:419:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:35 -> a
-    419:419:com.android.tools.r8.graph.DexProgramClass addSyntheticClassWithLibraryContext(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.util.function.Consumer):418 -> a
+    1:1:void <clinit>():54:54 -> <clinit>
+    1:1:void <init>(com.android.tools.r8.synthesis.CommittedItems):114:114 -> <init>
+    2:2:void <init>(int,com.android.tools.r8.synthesis.CommittedSyntheticsCollection):117:117 -> <init>
+    3:23:void <init>(int,com.android.tools.r8.synthesis.CommittedSyntheticsCollection):99:119 -> <init>
+    1:652:com.android.tools.r8.graph.DexClasspathClass ensureFixedClasspathClassFromType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):0:651 -> a
+    653:653:com.android.tools.r8.graph.ClasspathMethod ensureFixedClasspathMethodFromType(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):0:0 -> a
+    654:655:com.android.tools.r8.graph.DexClasspathClass ensureFixedClasspathClassFromType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):650:651 -> a
+    654:655:com.android.tools.r8.graph.ClasspathMethod ensureFixedClasspathMethodFromType(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):678 -> a
+    656:656:com.android.tools.r8.graph.ClasspathMethod ensureFixedClasspathMethodFromType(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):680:680 -> a
+    657:657:com.android.tools.r8.synthesis.SyntheticItems empty():103:103 -> a
+    658:662:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):124:128 -> a
+    663:663:com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder com.android.tools.r8.synthesis.CommittedSyntheticsCollection.builder():166:166 -> a
+    663:663:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):128 -> a
+    664:671:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):130:137 -> a
+    672:674:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):136:138 -> a
+    675:675:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
+    675:675:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):140 -> a
+    676:676:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):140:140 -> a
+    677:677:com.android.tools.r8.origin.Origin com.android.tools.r8.graph.DexClass.getOrigin():778:778 -> a
+    677:677:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):144 -> a
+    678:678:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):144:144 -> a
+    679:693:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):141:155 -> a
+    694:694:com.android.tools.r8.synthesis.SyntheticProgramClassReference com.android.tools.r8.synthesis.SyntheticProgramClassDefinition.toReference():46:46 -> a
+    694:694:com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder.addNonLegacyClass(com.android.tools.r8.synthesis.SyntheticProgramClassDefinition):51 -> a
+    694:694:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):154 -> a
+    695:695:com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder.addNonLegacyClass(com.android.tools.r8.synthesis.SyntheticProgramClassDefinition):51:51 -> a
+    695:695:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):154 -> a
+    696:710:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):158:172 -> a
+    711:713:void lambda$collectSyntheticInputs$0(com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder,com.android.tools.r8.synthesis.SyntheticMarker,com.android.tools.r8.graph.ProgramMethod):151:151 -> a
+    714:714:com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder.addNonLegacyMethod(com.android.tools.r8.synthesis.SyntheticMethodDefinition):65:65 -> a
+    714:714:void lambda$collectSyntheticInputs$0(com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder,com.android.tools.r8.synthesis.SyntheticMarker,com.android.tools.r8.graph.ProgramMethod):151 -> a
+    715:720:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):183:188 -> a
+    721:721:boolean com.android.tools.r8.graph.DexClass.isClasspathClass():0:0 -> a
+    721:721:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):188 -> a
+    722:726:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):188:192 -> a
+    727:727:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":925,"2":926,"3":927,"4":928,"5":929}}
+    925:925:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):192:192 -> a
+    926:926:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):192:192 -> a
+    927:927:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):192:192 -> a
+    928:928:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):192:192 -> a
+    929:929:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):192:192 -> a
+    919:924:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):192:197 -> a
+    930:930:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):237:237 -> a
+    931:931:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
+    931:931:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):237 -> a
+    932:932:boolean isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    932:932:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
+    932:932:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):237 -> a
+    933:934:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):237:238 -> a
+    935:935:boolean isNonLegacySynthetic(com.android.tools.r8.graph.DexProgramClass):229:229 -> a
+    935:935:boolean isSyntheticLambda(com.android.tools.r8.graph.DexProgramClass):242 -> a
+    935:935:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):238 -> a
+    936:937:boolean isSyntheticLambda(com.android.tools.r8.graph.DexProgramClass):245:246 -> a
+    936:937:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):238 -> a
+    938:940:int com.android.tools.r8.com.google.common.collect.Iterables.size(java.lang.Iterable):124:126 -> a
+    938:940:boolean isSyntheticLambda(com.android.tools.r8.graph.DexProgramClass):247 -> a
+    938:940:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):238 -> a
+    941:945:int com.android.tools.r8.com.google.common.collect.Iterators.size(java.util.Iterator):163:167 -> a
+    941:945:int com.android.tools.r8.com.google.common.collect.Iterables.size(java.lang.Iterable):126 -> a
+    941:945:boolean isSyntheticLambda(com.android.tools.r8.graph.DexProgramClass):247 -> a
+    941:945:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):238 -> a
+    946:953:boolean isSyntheticLambda(com.android.tools.r8.graph.DexProgramClass):247:254 -> a
+    946:953:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):238 -> a
+    954:954:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):259:259 -> a
+    955:955:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
+    955:955:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):259 -> a
+    956:956:boolean isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    956:956:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
+    956:956:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):259 -> a
+    957:957:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):259:259 -> a
+    958:958:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):276:276 -> a
+    958:958:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):260 -> a
+    959:959:boolean com.android.tools.r8.synthesis.CommittedSyntheticsCollection.containsSyntheticInput(com.android.tools.r8.graph.DexType):206:206 -> a
+    959:959:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):276 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    420:421:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:36 -> a
-    420:421:com.android.tools.r8.graph.DexProgramClass addSyntheticClassWithLibraryContext(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.util.function.Consumer):418 -> a
-    422:423:boolean com.android.tools.r8.synthesis.SyntheticMarker.isDefinitelyNotSyntheticProgramClass(com.android.tools.r8.graph.DexProgramClass):143:144 -> a
-    422:423:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36 -> a
-    422:423:com.android.tools.r8.graph.DexProgramClass addSyntheticClassWithLibraryContext(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.util.function.Consumer):418 -> a
-    424:424:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36:36 -> a
-    424:424:com.android.tools.r8.graph.DexProgramClass addSyntheticClassWithLibraryContext(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.util.function.Consumer):418 -> a
-    425:425:com.android.tools.r8.graph.DexProgramClass addSyntheticClassWithLibraryContext(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.util.function.Consumer):419:419 -> a
-    426:426:void addPendingDefinition(com.android.tools.r8.synthesis.SyntheticDefinition):804:804 -> a
-    426:426:com.android.tools.r8.graph.DexProgramClass addSyntheticClassWithLibraryContext(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexLibraryClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.util.function.Consumer):419 -> a
-    427:427:com.android.tools.r8.synthesis.SyntheticItems empty():104:104 -> a
-    428:432:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):125:129 -> a
-    433:433:com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder com.android.tools.r8.synthesis.CommittedSyntheticsCollection.builder():166:166 -> a
-    433:433:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):129 -> a
-    434:441:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):131:138 -> a
-    442:444:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):137:139 -> a
-    445:445:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
-    445:445:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):141 -> a
-    446:446:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):141:141 -> a
-    447:447:com.android.tools.r8.origin.Origin com.android.tools.r8.graph.DexClass.getOrigin():778:778 -> a
-    447:447:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):145 -> a
-    448:448:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):145:145 -> a
-    449:463:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):142:156 -> a
-    464:464:com.android.tools.r8.synthesis.SyntheticProgramClassReference com.android.tools.r8.synthesis.SyntheticProgramClassDefinition.toReference():46:46 -> a
-    464:464:com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder.addNonLegacyClass(com.android.tools.r8.synthesis.SyntheticProgramClassDefinition):51 -> a
-    464:464:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):155 -> a
-    465:465:com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder.addNonLegacyClass(com.android.tools.r8.synthesis.SyntheticProgramClassDefinition):51:51 -> a
-    465:465:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):155 -> a
-    466:480:void collectSyntheticInputs(com.android.tools.r8.graph.AppView):159:173 -> a
-    481:483:void lambda$collectSyntheticInputs$0(com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder,com.android.tools.r8.synthesis.SyntheticMarker,com.android.tools.r8.graph.ProgramMethod):152:152 -> a
-    484:484:com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder.addNonLegacyMethod(com.android.tools.r8.synthesis.SyntheticMethodDefinition):65:65 -> a
-    484:484:void lambda$collectSyntheticInputs$0(com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder,com.android.tools.r8.synthesis.SyntheticMarker,com.android.tools.r8.graph.ProgramMethod):152 -> a
-    485:490:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):184:189 -> a
-    491:491:boolean com.android.tools.r8.graph.DexClass.isClasspathClass():0:0 -> a
-    491:491:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):189 -> a
-    492:496:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):189:193 -> a
-    497:497:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":696,"2":697,"3":698,"4":699,"5":700}}
-    696:696:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):193:193 -> a
-    697:697:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):193:193 -> a
-    698:698:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):193:193 -> a
-    699:699:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):193:193 -> a
-    700:700:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):193:193 -> a
-    690:695:com.android.tools.r8.graph.ClassResolutionResult definitionFor(com.android.tools.r8.graph.DexType,java.util.function.Function):193:198 -> a
-    701:701:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):238:238 -> a
-    702:702:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
-    702:702:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):238 -> a
-    703:703:boolean isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    703:703:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
-    703:703:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):238 -> a
-    704:705:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):238:239 -> a
-    706:706:boolean isNonLegacySynthetic(com.android.tools.r8.graph.DexProgramClass):230:230 -> a
-    706:706:boolean isSyntheticLambda(com.android.tools.r8.graph.DexProgramClass):243 -> a
-    706:706:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):239 -> a
-    707:708:boolean isSyntheticLambda(com.android.tools.r8.graph.DexProgramClass):246:247 -> a
-    707:708:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):239 -> a
-    709:711:int com.android.tools.r8.com.google.common.collect.Iterables.size(java.lang.Iterable):124:126 -> a
-    709:711:boolean isSyntheticLambda(com.android.tools.r8.graph.DexProgramClass):248 -> a
-    709:711:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):239 -> a
-    712:716:int com.android.tools.r8.com.google.common.collect.Iterators.size(java.util.Iterator):163:167 -> a
-    712:716:int com.android.tools.r8.com.google.common.collect.Iterables.size(java.lang.Iterable):126 -> a
-    712:716:boolean isSyntheticLambda(com.android.tools.r8.graph.DexProgramClass):248 -> a
-    712:716:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):239 -> a
-    717:724:boolean isSyntheticLambda(com.android.tools.r8.graph.DexProgramClass):248:255 -> a
-    717:724:boolean isEligibleForClassMerging(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.horizontalclassmerging.HorizontalClassMerger$Mode):239 -> a
-    725:725:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):260:260 -> a
-    726:726:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
-    726:726:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):260 -> a
-    727:727:boolean isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    727:727:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
-    727:727:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):260 -> a
-    728:728:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):260:260 -> a
-    729:729:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):277:277 -> a
-    729:729:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):261 -> a
-    730:730:boolean com.android.tools.r8.synthesis.CommittedSyntheticsCollection.containsSyntheticInput(com.android.tools.r8.graph.DexType):206:206 -> a
-    730:730:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):277 -> a
+    959:959:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):260 -> a
+    960:960:boolean com.android.tools.r8.synthesis.CommittedSyntheticsCollection.containsSyntheticInput(com.android.tools.r8.graph.DexType):206:206 -> a
+    960:960:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):276 -> a
+    960:960:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):260 -> a
+    961:961:boolean isSyntheticOfKind(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):272:272 -> a
+    962:973:com.android.tools.r8.FeatureSplit getContextualFeatureSplit(com.android.tools.r8.graph.DexType,com.android.tools.r8.features.ClassToFeatureSplitMap):281:292 -> a
+    974:977:boolean verifyAllHaveSameFeature(java.util.List,java.util.function.Function):298:301 -> a
+    974:977:com.android.tools.r8.FeatureSplit getContextualFeatureSplit(com.android.tools.r8.graph.DexType,com.android.tools.r8.features.ClassToFeatureSplitMap):292 -> a
+    978:978:com.android.tools.r8.FeatureSplit getContextualFeatureSplit(com.android.tools.r8.graph.DexType,com.android.tools.r8.features.ClassToFeatureSplitMap):293:293 -> a
+    979:984:void forEachSynthesizingContext(com.android.tools.r8.graph.DexType,java.util.function.Consumer):307:312 -> a
+    979:984:void lambda$getSynthesizingContexts$1(com.android.tools.r8.graph.DexType,java.util.function.Consumer):317 -> a
+    985:986:java.util.Collection getSynthesizingContextTypes(com.android.tools.r8.graph.DexType):321:322 -> a
+    987:992:void forEachSynthesizingContext(com.android.tools.r8.graph.DexType,java.util.function.Consumer):307:312 -> a
+    987:992:java.util.Collection getSynthesizingContextTypes(com.android.tools.r8.graph.DexType):322 -> a
+    993:993:java.util.Collection getSynthesizingContextTypes(com.android.tools.r8.graph.DexType):324:324 -> a
+    994:994:void lambda$getSynthesizingContextTypes$2(com.android.tools.r8.com.google.common.collect.ImmutableList$Builder,com.android.tools.r8.synthesis.SynthesizingContext):323:323 -> a
+    995:995:java.util.Set getSynthesizingContextReferences(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):330:330 -> a
+    996:996:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
+    996:996:java.util.Set getSynthesizingContextReferences(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):330 -> a
+    997:997:boolean isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    997:997:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
+    997:997:java.util.Set getSynthesizingContextReferences(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):330 -> a
+    998:999:java.util.Set getSynthesizingContextReferences(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):330:331 -> a
+    1000:1000:boolean isSyntheticMethodThatShouldNotBeDoubleProcessed(com.android.tools.r8.graph.ProgramMethod):343:343 -> a
+    1001:1002:boolean isSyntheticMethodThatShouldNotBeDoubleProcessed(com.android.tools.r8.graph.ProgramMethod):342:343 -> a
+    1003:1003:java.lang.Object com.android.tools.r8.com.google.common.collect.ImmutableMap.getOrDefault(java.lang.Object,java.lang.Object):713:713 -> a
+    1003:1003:boolean isSyntheticMethodThatShouldNotBeDoubleProcessed(com.android.tools.r8.graph.ProgramMethod):343 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    730:730:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):261 -> a
-    731:731:boolean com.android.tools.r8.synthesis.CommittedSyntheticsCollection.containsSyntheticInput(com.android.tools.r8.graph.DexType):206:206 -> a
-    731:731:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):277 -> a
-    731:731:boolean isSubjectToKeepRules(com.android.tools.r8.graph.DexProgramClass):261 -> a
-    732:732:boolean isSyntheticOfKind(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):273:273 -> a
-    733:744:com.android.tools.r8.FeatureSplit getContextualFeatureSplit(com.android.tools.r8.graph.DexType,com.android.tools.r8.features.ClassToFeatureSplitMap):282:293 -> a
-    745:748:boolean verifyAllHaveSameFeature(java.util.List,java.util.function.Function):299:302 -> a
-    745:748:com.android.tools.r8.FeatureSplit getContextualFeatureSplit(com.android.tools.r8.graph.DexType,com.android.tools.r8.features.ClassToFeatureSplitMap):293 -> a
-    749:749:com.android.tools.r8.FeatureSplit getContextualFeatureSplit(com.android.tools.r8.graph.DexType,com.android.tools.r8.features.ClassToFeatureSplitMap):294:294 -> a
-    750:755:void forEachSynthesizingContext(com.android.tools.r8.graph.DexType,java.util.function.Consumer):308:313 -> a
-    750:755:void lambda$getSynthesizingContexts$1(com.android.tools.r8.graph.DexType,java.util.function.Consumer):318 -> a
-    756:757:java.util.Collection getSynthesizingContextTypes(com.android.tools.r8.graph.DexType):322:323 -> a
-    758:763:void forEachSynthesizingContext(com.android.tools.r8.graph.DexType,java.util.function.Consumer):308:313 -> a
-    758:763:java.util.Collection getSynthesizingContextTypes(com.android.tools.r8.graph.DexType):323 -> a
-    764:764:java.util.Collection getSynthesizingContextTypes(com.android.tools.r8.graph.DexType):325:325 -> a
-    765:765:void lambda$getSynthesizingContextTypes$2(com.android.tools.r8.com.google.common.collect.ImmutableList$Builder,com.android.tools.r8.synthesis.SynthesizingContext):324:324 -> a
-    766:766:java.util.Set getSynthesizingContextReferences(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):331:331 -> a
-    767:767:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269:269 -> a
-    767:767:java.util.Set getSynthesizingContextReferences(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):331 -> a
-    768:768:boolean isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    768:768:boolean isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
-    768:768:java.util.Set getSynthesizingContextReferences(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):331 -> a
-    769:770:java.util.Set getSynthesizingContextReferences(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle):331:332 -> a
-    771:771:boolean isSyntheticMethodThatShouldNotBeDoubleProcessed(com.android.tools.r8.graph.ProgramMethod):344:344 -> a
-    772:773:boolean isSyntheticMethodThatShouldNotBeDoubleProcessed(com.android.tools.r8.graph.ProgramMethod):343:344 -> a
-    774:774:java.lang.Object com.android.tools.r8.com.google.common.collect.ImmutableMap.getOrDefault(java.lang.Object,java.lang.Object):713:713 -> a
-    774:774:boolean isSyntheticMethodThatShouldNotBeDoubleProcessed(com.android.tools.r8.graph.ProgramMethod):344 -> a
+    1004:1012:boolean isSyntheticMethodThatShouldNotBeDoubleProcessed(com.android.tools.r8.graph.ProgramMethod):343:351 -> a
+    1013:1016:boolean verifySyntheticLambdaProperty(com.android.tools.r8.graph.DexProgramClass,java.util.function.Predicate,java.util.function.Predicate):362:365 -> a
+    1017:1017:java.lang.Iterable com.android.tools.r8.com.google.common.collect.Iterables.concat(java.lang.Iterable,java.lang.Iterable):418:418 -> a
+    1017:1017:boolean verifySyntheticLambdaProperty(com.android.tools.r8.graph.DexProgramClass,java.util.function.Predicate,java.util.function.Predicate):365 -> a
+    1018:1018:boolean verifySyntheticLambdaProperty(com.android.tools.r8.graph.DexProgramClass,java.util.function.Predicate,java.util.function.Predicate):367:367 -> a
+    1019:1019:boolean com.android.tools.r8.com.google.common.collect.Iterables.any(java.lang.Iterable,com.android.tools.r8.com.google.common.base.Predicate):608:608 -> a
+    1019:1019:boolean verifySyntheticLambdaProperty(com.android.tools.r8.graph.DexProgramClass,java.util.function.Predicate,java.util.function.Predicate):367 -> a
+    1020:1022:boolean verifySyntheticLambdaProperty(com.android.tools.r8.graph.DexProgramClass,java.util.function.Predicate,java.util.function.Predicate):368:370 -> a
+    1023:1023:boolean lambda$verifySyntheticLambdaProperty$3(com.android.tools.r8.synthesis.SyntheticReference):367:367 -> a
+    1024:1024:int lambda$getSynthesizingContext$4(com.android.tools.r8.synthesis.SyntheticReference,com.android.tools.r8.synthesis.SyntheticReference):396:396 -> a
+    1025:1026:void lambda$internalEnsureFixedProgramClass$6(java.util.function.Consumer,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):448:449 -> a
+    1027:1027:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):503:503 -> a
+    1028:1028:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):378:378 -> a
+    1028:1028:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):503 -> a
+    1029:1029:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):377:377 -> a
+    1029:1029:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):503 -> a
+    1030:1035:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):504:509 -> a
+    1036:1043:void registerSyntheticTypeRewriting(com.android.tools.r8.synthesis.SynthesizingContext,java.util.function.Function,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType):481:488 -> a
+    1036:1043:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):467 -> a
+    1036:1043:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):508 -> a
+    1044:1046:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):468:470 -> a
+    1044:1046:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):508 -> a
+    1047:1048:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:36 -> a
+    1047:1048:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):471 -> a
+    1047:1048:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):508 -> a
+    1049:1050:boolean com.android.tools.r8.synthesis.SyntheticMarker.isDefinitelyNotSyntheticProgramClass(com.android.tools.r8.graph.DexProgramClass):143:144 -> a
+    1049:1050:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36 -> a
+    1049:1050:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):471 -> a
+    1049:1050:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):508 -> a
+    1051:1051:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36:36 -> a
+    1051:1051:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):471 -> a
+    1051:1051:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):508 -> a
+    1052:1052:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):472:472 -> a
+    1052:1052:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):508 -> a
+    1053:1053:void addPendingDefinition(com.android.tools.r8.synthesis.SyntheticDefinition):794:794 -> a
+    1053:1053:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):472 -> a
+    1053:1053:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):508 -> a
+    1054:1054:com.android.tools.r8.graph.DexType lambda$createClass$7(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SynthesizingContext):507:507 -> a
+    1055:1055:com.android.tools.r8.graph.DexType lambda$createClass$7(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SynthesizingContext):506:506 -> a
+    1056:1056:com.android.tools.r8.graph.DexType lambda$createFixedClass$8(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SynthesizingContext):520:520 -> a
+    1057:1057:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):527:527 -> a
+    1058:1059:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):540:541 -> a
+    1058:1059:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):528 -> a
+    1060:1060:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):378:378 -> a
+    1060:1060:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):541 -> a
+    1060:1060:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):528 -> a
+    1061:1061:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):377:377 -> a
+    1061:1061:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):541 -> a
+    1061:1061:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):528 -> a
+    1062:1062:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):542:542 -> a
+    1062:1062:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):528 -> a
+    1063:1065:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):529:531 -> a
+    1066:1066:boolean isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    1066:1066:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):532 -> a
+    1067:1069:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):532:534 -> a
+    1070:1071:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):540:541 -> a
+    1070:1071:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):518 -> a
+    1072:1072:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):378:378 -> a
+    1072:1072:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):541 -> a
+    1072:1072:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):518 -> a
+    1073:1073:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):377:377 -> a
+    1073:1073:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):541 -> a
+    1073:1073:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):518 -> a
+    1074:1077:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):519:522 -> a
+    1078:1085:void registerSyntheticTypeRewriting(com.android.tools.r8.synthesis.SynthesizingContext,java.util.function.Function,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType):481:488 -> a
+    1078:1085:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):467 -> a
+    1078:1085:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):521 -> a
+    1086:1088:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):468:470 -> a
+    1086:1088:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):521 -> a
+    1089:1090:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:36 -> a
+    1089:1090:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):471 -> a
+    1089:1090:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):521 -> a
+    1091:1092:boolean com.android.tools.r8.synthesis.SyntheticMarker.isDefinitelyNotSyntheticProgramClass(com.android.tools.r8.graph.DexProgramClass):143:144 -> a
+    1091:1092:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36 -> a
+    1091:1092:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):471 -> a
+    1091:1092:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):521 -> a
+    1093:1093:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36:36 -> a
+    1093:1093:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):471 -> a
+    1093:1093:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):521 -> a
+    1094:1094:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):472:472 -> a
+    1094:1094:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):521 -> a
+    1095:1095:void addPendingDefinition(com.android.tools.r8.synthesis.SyntheticDefinition):794:794 -> a
+    1095:1095:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):472 -> a
+    1095:1095:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):521 -> a
+    1096:1096:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):542:542 -> a
+    1096:1096:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):518 -> a
+    1097:1097:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):556:556 -> a
+    1098:1099:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):540:541 -> a
+    1098:1099:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):557 -> a
+    1100:1100:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):378:378 -> a
+    1100:1100:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):541 -> a
+    1100:1100:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):557 -> a
+    1101:1101:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):377:377 -> a
+    1101:1101:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):541 -> a
+    1101:1101:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):557 -> a
+    1102:1102:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):542:542 -> a
+    1102:1102:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):557 -> a
+    1103:1103:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):558:558 -> a
+    1104:1104:com.android.tools.r8.graph.ProgramMethod ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):591:591 -> a
+    1105:1107:com.android.tools.r8.graph.ProgramMethod ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):590:592 -> a
+    1108:1122:com.android.tools.r8.graph.DexEncodedMethod internalEnsureMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):732:746 -> a
+    1108:1122:com.android.tools.r8.graph.ProgramMethod ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):594 -> a
+    1123:1123:com.android.tools.r8.graph.ProgramMethod ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):596:596 -> a
+    1124:1124:com.android.tools.r8.graph.DexEncodedMethod internalEnsureMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):747:747 -> a
+    1124:1124:com.android.tools.r8.graph.ProgramMethod ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):594 -> a
+    1125:1129:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):622:626 -> a
+    1130:1130:boolean com.android.tools.r8.graph.DexClass.isClasspathClass():0:0 -> a
+    1130:1130:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):628 -> a
+    1131:1131:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):631:631 -> a
+    1132:1132:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):629:629 -> a
+    1133:1133:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):601:601 -> a
+    1133:1133:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):629 -> a
+    1134:1134:boolean com.android.tools.r8.graph.DexClass.isClasspathClass():0:0 -> a
+    1134:1134:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):603 -> a
+    1134:1134:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):629 -> a
+    1135:1135:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):603:603 -> a
+    1135:1135:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):629 -> a
+    1136:1136:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):602:602 -> a
+    1136:1136:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):629 -> a
+    1137:1137:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
+    1137:1137:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    775:783:boolean isSyntheticMethodThatShouldNotBeDoubleProcessed(com.android.tools.r8.graph.ProgramMethod):344:352 -> a
-    784:787:boolean verifySyntheticLambdaProperty(com.android.tools.r8.graph.DexProgramClass,java.util.function.Predicate,java.util.function.Predicate):363:366 -> a
-    788:788:java.lang.Iterable com.android.tools.r8.com.google.common.collect.Iterables.concat(java.lang.Iterable,java.lang.Iterable):418:418 -> a
-    788:788:boolean verifySyntheticLambdaProperty(com.android.tools.r8.graph.DexProgramClass,java.util.function.Predicate,java.util.function.Predicate):366 -> a
-    789:789:boolean verifySyntheticLambdaProperty(com.android.tools.r8.graph.DexProgramClass,java.util.function.Predicate,java.util.function.Predicate):368:368 -> a
-    790:790:boolean com.android.tools.r8.com.google.common.collect.Iterables.any(java.lang.Iterable,com.android.tools.r8.com.google.common.base.Predicate):608:608 -> a
-    790:790:boolean verifySyntheticLambdaProperty(com.android.tools.r8.graph.DexProgramClass,java.util.function.Predicate,java.util.function.Predicate):368 -> a
-    791:793:boolean verifySyntheticLambdaProperty(com.android.tools.r8.graph.DexProgramClass,java.util.function.Predicate,java.util.function.Predicate):369:371 -> a
-    794:794:boolean lambda$verifySyntheticLambdaProperty$3(com.android.tools.r8.synthesis.SyntheticReference):368:368 -> a
-    795:795:int lambda$getSynthesizingContext$4(com.android.tools.r8.synthesis.SyntheticReference,com.android.tools.r8.synthesis.SyntheticReference):397:397 -> a
-    796:797:void lambda$internalEnsureFixedProgramClass$6(java.util.function.Consumer,com.android.tools.r8.synthesis.SyntheticProgramClassBuilder):456:457 -> a
-    798:798:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):511:511 -> a
-    799:799:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):379:379 -> a
-    799:799:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):511 -> a
-    800:800:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):378:378 -> a
-    800:800:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):511 -> a
-    801:806:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):512:517 -> a
-    807:814:void registerSyntheticTypeRewriting(com.android.tools.r8.synthesis.SynthesizingContext,java.util.function.Function,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType):489:496 -> a
-    807:814:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):475 -> a
-    807:814:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):516 -> a
-    815:817:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):476:478 -> a
-    815:817:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):516 -> a
-    818:819:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:36 -> a
-    818:819:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):479 -> a
-    818:819:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):516 -> a
-    820:821:boolean com.android.tools.r8.synthesis.SyntheticMarker.isDefinitelyNotSyntheticProgramClass(com.android.tools.r8.graph.DexProgramClass):143:144 -> a
-    820:821:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36 -> a
-    820:821:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):479 -> a
-    820:821:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):516 -> a
-    822:822:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36:36 -> a
-    822:822:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):479 -> a
-    822:822:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):516 -> a
-    823:823:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):480:480 -> a
-    823:823:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):516 -> a
-    824:824:void addPendingDefinition(com.android.tools.r8.synthesis.SyntheticDefinition):804:804 -> a
-    824:824:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):480 -> a
-    824:824:com.android.tools.r8.graph.DexProgramClass createClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):516 -> a
-    825:825:com.android.tools.r8.graph.DexType lambda$createClass$7(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SynthesizingContext):515:515 -> a
-    826:826:com.android.tools.r8.graph.DexType lambda$createClass$7(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SynthesizingContext):514:514 -> a
-    827:827:com.android.tools.r8.graph.DexType lambda$createFixedClass$8(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SynthesizingContext):528:528 -> a
-    828:828:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):535:535 -> a
-    829:830:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):548:549 -> a
-    829:830:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):536 -> a
-    831:831:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):379:379 -> a
-    831:831:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):549 -> a
-    831:831:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):536 -> a
-    832:832:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):378:378 -> a
-    832:832:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):549 -> a
-    832:832:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):536 -> a
-    833:833:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):550:550 -> a
-    833:833:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):536 -> a
-    834:836:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):537:539 -> a
-    837:837:boolean isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    837:837:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):540 -> a
-    838:840:com.android.tools.r8.graph.DexProgramClass getExistingFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):540:542 -> a
-    841:842:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):548:549 -> a
-    841:842:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):526 -> a
-    843:843:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):379:379 -> a
-    843:843:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):549 -> a
-    843:843:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):526 -> a
-    844:844:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):378:378 -> a
-    844:844:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):549 -> a
-    844:844:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):526 -> a
-    845:848:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):527:530 -> a
-    849:856:void registerSyntheticTypeRewriting(com.android.tools.r8.synthesis.SynthesizingContext,java.util.function.Function,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType):489:496 -> a
-    849:856:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):475 -> a
-    849:856:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):529 -> a
-    857:859:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):476:478 -> a
-    857:859:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):529 -> a
-    860:861:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:36 -> a
-    860:861:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):479 -> a
-    860:861:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):529 -> a
-    862:863:boolean com.android.tools.r8.synthesis.SyntheticMarker.isDefinitelyNotSyntheticProgramClass(com.android.tools.r8.graph.DexProgramClass):143:144 -> a
-    862:863:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36 -> a
-    862:863:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):479 -> a
-    862:863:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):529 -> a
-    864:864:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36:36 -> a
-    864:864:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):479 -> a
-    864:864:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):529 -> a
-    865:865:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):480:480 -> a
-    865:865:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):529 -> a
-    866:866:void addPendingDefinition(com.android.tools.r8.synthesis.SyntheticDefinition):804:804 -> a
-    866:866:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):480 -> a
-    866:866:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):529 -> a
-    867:867:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):550:550 -> a
-    867:867:com.android.tools.r8.graph.DexProgramClass createFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer):526 -> a
-    868:868:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):564:564 -> a
-    869:870:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):548:549 -> a
-    869:870:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):565 -> a
-    871:871:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):379:379 -> a
-    871:871:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):549 -> a
-    871:871:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):565 -> a
-    872:872:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):378:378 -> a
-    872:872:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):549 -> a
-    872:872:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):565 -> a
-    873:873:com.android.tools.r8.synthesis.SynthesizingContext internalGetOuterContext(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView):550:550 -> a
-    873:873:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):565 -> a
-    874:874:com.android.tools.r8.graph.DexProgramClass ensureFixedClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):566:566 -> a
-    875:875:com.android.tools.r8.graph.ProgramMethod ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):599:599 -> a
-    876:878:com.android.tools.r8.graph.ProgramMethod ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):598:600 -> a
-    879:893:com.android.tools.r8.graph.DexEncodedMethod internalEnsureMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):740:754 -> a
-    879:893:com.android.tools.r8.graph.ProgramMethod ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):602 -> a
-    894:894:com.android.tools.r8.graph.ProgramMethod ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):604:604 -> a
-    895:895:com.android.tools.r8.graph.DexEncodedMethod internalEnsureMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):755:755 -> a
-    895:895:com.android.tools.r8.graph.ProgramMethod ensureFixedClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):602 -> a
-    896:900:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):630:634 -> a
-    901:901:boolean com.android.tools.r8.graph.DexClass.isClasspathClass():0:0 -> a
-    901:901:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):636 -> a
-    902:902:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):639:639 -> a
-    903:903:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):637:637 -> a
-    904:904:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):609:609 -> a
-    904:904:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):637 -> a
-    905:905:boolean com.android.tools.r8.graph.DexClass.isClasspathClass():0:0 -> a
-    905:905:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):611 -> a
-    905:905:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):637 -> a
-    906:906:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):611:611 -> a
-    906:906:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):637 -> a
-    907:907:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):610:610 -> a
-    907:907:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):637 -> a
-    908:908:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
-    908:908:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):613 -> a
+    1137:1137:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):629 -> a
+    1138:1138:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> a
+    1138:1138:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605 -> a
+    1138:1138:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):629 -> a
+    1139:1140:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605:606 -> a
+    1139:1140:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):629 -> a
+    1141:1148:void registerSyntheticTypeRewriting(com.android.tools.r8.synthesis.SynthesizingContext,java.util.function.Function,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType):481:488 -> a
+    1141:1148:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):633 -> a
+    1149:1153:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):634:638 -> a
+    1154:1154:void addPendingDefinition(com.android.tools.r8.synthesis.SyntheticDefinition):794:794 -> a
+    1154:1154:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):638 -> a
+    1155:1157:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):639:641 -> a
+    1158:1159:com.android.tools.r8.graph.DexClasspathClass ensureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):663:664 -> a
+    1160:1161:com.android.tools.r8.graph.DexClasspathClass ensureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):663:664 -> a
+    1160:1161:com.android.tools.r8.graph.ClasspathMethod ensureFixedClasspathClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):694 -> a
+    1162:1162:com.android.tools.r8.graph.ClasspathMethod ensureFixedClasspathClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):696:696 -> a
+    1163:1175:com.android.tools.r8.graph.ClasspathMethod internalEnsureFixedClasspathMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexClasspathClass):708:720 -> a
+    1176:1190:com.android.tools.r8.graph.DexEncodedMethod internalEnsureMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):732:746 -> a
+    1176:1190:com.android.tools.r8.graph.ClasspathMethod internalEnsureFixedClasspathMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexClasspathClass):710 -> a
+    1191:1191:com.android.tools.r8.graph.ClasspathMethod internalEnsureFixedClasspathMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexClasspathClass):721:721 -> a
+    1192:1192:com.android.tools.r8.graph.DexEncodedMethod internalEnsureMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):747:747 -> a
+    1192:1192:com.android.tools.r8.graph.ClasspathMethod internalEnsureFixedClasspathMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexClasspathClass):710 -> a
+    1193:1193:void lambda$internalEnsureFixedClasspathMethod$10(java.util.function.Consumer,com.android.tools.r8.synthesis.SyntheticMethodBuilder):718:718 -> a
+    1194:1194:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.DexProgramClass.getContextType():720:720 -> a
+    1194:1194:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):384 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    908:908:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):637 -> a
-    909:909:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> a
-    909:909:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):613 -> a
-    909:909:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):637 -> a
-    910:911:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):613:614 -> a
-    910:911:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):637 -> a
-    912:919:void registerSyntheticTypeRewriting(com.android.tools.r8.synthesis.SynthesizingContext,java.util.function.Function,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType):489:496 -> a
-    912:919:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):641 -> a
-    920:924:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):642:646 -> a
-    925:925:void addPendingDefinition(com.android.tools.r8.synthesis.SyntheticDefinition):804:804 -> a
-    925:925:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):646 -> a
-    926:928:com.android.tools.r8.graph.DexClasspathClass internalEnsureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):647:649 -> a
-    929:930:com.android.tools.r8.graph.DexClasspathClass ensureFixedClasspathClassFromType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):658:659 -> a
-    929:930:com.android.tools.r8.graph.ClasspathMethod ensureFixedClasspathMethodFromType(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):686 -> a
-    931:931:com.android.tools.r8.graph.ClasspathMethod ensureFixedClasspathMethodFromType(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):688:688 -> a
-    932:933:com.android.tools.r8.graph.DexClasspathClass ensureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):671:672 -> a
-    934:935:com.android.tools.r8.graph.DexClasspathClass ensureFixedClasspathClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):671:672 -> a
-    934:935:com.android.tools.r8.graph.ClasspathMethod ensureFixedClasspathClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):702 -> a
-    936:936:com.android.tools.r8.graph.ClasspathMethod ensureFixedClasspathClassMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ClasspathOrLibraryClass,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer,java.util.function.Consumer):704:704 -> a
-    937:949:com.android.tools.r8.graph.ClasspathMethod internalEnsureFixedClasspathMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexClasspathClass):716:728 -> a
-    950:964:com.android.tools.r8.graph.DexEncodedMethod internalEnsureMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):740:754 -> a
-    950:964:com.android.tools.r8.graph.ClasspathMethod internalEnsureFixedClasspathMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexClasspathClass):718 -> a
-    965:965:com.android.tools.r8.graph.ClasspathMethod internalEnsureFixedClasspathMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexClasspathClass):729:729 -> a
-    966:966:com.android.tools.r8.graph.DexEncodedMethod internalEnsureMethod(com.android.tools.r8.graph.DexMethod,com.android.tools.r8.graph.DexClass,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):755:755 -> a
-    966:966:com.android.tools.r8.graph.ClasspathMethod internalEnsureFixedClasspathMethod(com.android.tools.r8.graph.DexString,com.android.tools.r8.graph.DexProto,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,java.util.function.Consumer,com.android.tools.r8.graph.DexClasspathClass):718 -> a
-    967:967:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.DexProgramClass.getContextType():720:720 -> a
-    967:967:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):385 -> a
+    1195:1203:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):385:393 -> a
+    1204:1205:java.lang.Object com.android.tools.r8.utils.IterableUtils.min(java.lang.Iterable,java.util.Comparator):101:102 -> a
+    1204:1205:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):393 -> a
+    1206:1213:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):393:400 -> a
+    1214:1214:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.DexProgramClass.getContextType():720:720 -> a
+    1214:1214:com.android.tools.r8.FeatureSplit com.android.tools.r8.features.ClassToFeatureSplitMap.getFeatureSplit(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.synthesis.SyntheticItems):156 -> a
+    1214:1214:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):400 -> a
+    1215:1215:com.android.tools.r8.FeatureSplit com.android.tools.r8.features.ClassToFeatureSplitMap.getFeatureSplit(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.synthesis.SyntheticItems):156:156 -> a
+    1215:1215:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):400 -> a
+    1216:1216:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):401:401 -> a
+    1217:1218:com.android.tools.r8.graph.DexProgramClass ensureFixedClassFromType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):756:757 -> a
+    1219:1219:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):775:775 -> a
+    1220:1220:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):378:378 -> a
+    1220:1220:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):778 -> a
+    1221:1221:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):377:377 -> a
+    1221:1221:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):778 -> a
+    1222:1222:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):781:781 -> a
+    1223:1229:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):780:786 -> a
+    1230:1230:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:35 -> a
+    1230:1230:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):787 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    968:976:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):386:394 -> a
-    977:978:java.lang.Object com.android.tools.r8.utils.IterableUtils.min(java.lang.Iterable,java.util.Comparator):101:102 -> a
-    977:978:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):394 -> a
-    979:986:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):394:401 -> a
-    987:987:com.android.tools.r8.graph.DexType com.android.tools.r8.graph.DexProgramClass.getContextType():720:720 -> a
-    987:987:com.android.tools.r8.FeatureSplit com.android.tools.r8.features.ClassToFeatureSplitMap.getFeatureSplit(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.synthesis.SyntheticItems):156 -> a
-    987:987:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):401 -> a
-    988:988:com.android.tools.r8.FeatureSplit com.android.tools.r8.features.ClassToFeatureSplitMap.getFeatureSplit(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.synthesis.SyntheticItems):156:156 -> a
-    988:988:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):401 -> a
-    989:989:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.features.ClassToFeatureSplitMap):402:402 -> a
-    990:990:void lambda$internalEnsureFixedClasspathMethod$10(java.util.function.Consumer,com.android.tools.r8.synthesis.SyntheticMethodBuilder):726:726 -> a
-    991:992:com.android.tools.r8.graph.DexProgramClass ensureFixedClassFromType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):766:767 -> a
-    993:993:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):785:785 -> a
-    994:994:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):379:379 -> a
-    994:994:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):788 -> a
-    995:995:com.android.tools.r8.synthesis.SynthesizingContext getSynthesizingContext(com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView):378:378 -> a
-    995:995:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):788 -> a
-    996:996:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):791:791 -> a
-    997:1003:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):790:796 -> a
-    1004:1004:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:35 -> a
-    1004:1004:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):797 -> a
-      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    1005:1006:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:36 -> a
-    1005:1006:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):797 -> a
-    1007:1008:boolean com.android.tools.r8.synthesis.SyntheticMarker.isDefinitelyNotSyntheticProgramClass(com.android.tools.r8.graph.DexProgramClass):143:144 -> a
-    1007:1008:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36 -> a
-    1007:1008:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):797 -> a
-    1009:1009:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36:36 -> a
-    1009:1009:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):797 -> a
-    1010:1011:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):798:799 -> a
-    1012:1012:void addPendingDefinition(com.android.tools.r8.synthesis.SyntheticDefinition):804:804 -> a
-    1012:1012:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):799 -> a
-    1013:1013:void lambda$createMethod$11(com.android.tools.r8.synthesis.SyntheticMethodBuilder):796:796 -> a
-    1014:1014:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.DexApplication):810:810 -> a
-    1015:1015:com.android.tools.r8.synthesis.CommittedItems commitPrunedItems(com.android.tools.r8.graph.PrunedItems):814:814 -> a
-    1015:1015:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.DexApplication):810 -> a
-    1016:1016:com.android.tools.r8.synthesis.CommittedItems commitPrunedItems(com.android.tools.r8.graph.PrunedItems):814:814 -> a
-    1017:1019:com.android.tools.r8.synthesis.CommittedItems commitRewrittenWithLens(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):819:821 -> a
-    1020:1020:com.android.tools.r8.synthesis.CommittedItems commitRewrittenWithLens(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):820:820 -> a
-    1021:1023:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):829:831 -> a
-    1024:1024:com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder com.android.tools.r8.synthesis.CommittedSyntheticsCollection.builder():166:166 -> a
-    1024:1024:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):831 -> a
-    1025:1037:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):835:847 -> a
-    1038:1043:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):846:851 -> a
-    1044:1044:boolean com.android.tools.r8.graph.DexApplication$Builder.isDirect():0:0 -> a
-    1044:1044:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):851 -> a
-    1045:1046:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):852:853 -> a
-    1047:1047:com.android.tools.r8.graph.DexClass com.android.tools.r8.synthesis.SyntheticClassDefinition.getHolder():29:29 -> a
-    1047:1047:com.android.tools.r8.graph.DexClasspathClass com.android.tools.r8.synthesis.SyntheticClasspathClassDefinition.getHolder():16 -> a
-    1047:1047:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):853 -> a
+    1231:1232:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:36 -> a
+    1231:1232:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):787 -> a
+    1233:1234:boolean com.android.tools.r8.synthesis.SyntheticMarker.isDefinitelyNotSyntheticProgramClass(com.android.tools.r8.graph.DexProgramClass):143:144 -> a
+    1233:1234:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36 -> a
+    1233:1234:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):787 -> a
+    1235:1235:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36:36 -> a
+    1235:1235:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):787 -> a
+    1236:1237:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):788:789 -> a
+    1238:1238:void addPendingDefinition(com.android.tools.r8.synthesis.SyntheticDefinition):794:794 -> a
+    1238:1238:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.ProgramDefinition,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Supplier):789 -> a
+    1239:1239:void lambda$createMethod$11(com.android.tools.r8.synthesis.SyntheticMethodBuilder):786:786 -> a
+    1240:1240:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.DexApplication):800:800 -> a
+    1241:1241:com.android.tools.r8.synthesis.CommittedItems commitPrunedItems(com.android.tools.r8.graph.PrunedItems):804:804 -> a
+    1241:1241:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.DexApplication):800 -> a
+    1242:1242:com.android.tools.r8.synthesis.CommittedItems commitPrunedItems(com.android.tools.r8.graph.PrunedItems):804:804 -> a
+    1243:1245:com.android.tools.r8.synthesis.CommittedItems commitRewrittenWithLens(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):809:811 -> a
+    1246:1246:com.android.tools.r8.synthesis.CommittedItems commitRewrittenWithLens(com.android.tools.r8.graph.DexApplication,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):810:810 -> a
+    1247:1249:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):819:821 -> a
+    1250:1250:com.android.tools.r8.synthesis.CommittedSyntheticsCollection$Builder com.android.tools.r8.synthesis.CommittedSyntheticsCollection.builder():166:166 -> a
+    1250:1250:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):821 -> a
+    1251:1263:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):825:837 -> a
+    1264:1269:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):836:841 -> a
+    1270:1270:boolean com.android.tools.r8.graph.DexApplication$Builder.isDirect():0:0 -> a
+    1270:1270:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):841 -> a
+    1271:1272:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):842:843 -> a
+    1273:1273:com.android.tools.r8.graph.DexClass com.android.tools.r8.synthesis.SyntheticClassDefinition.getHolder():29:29 -> a
+    1273:1273:com.android.tools.r8.graph.DexClasspathClass com.android.tools.r8.synthesis.SyntheticClasspathClassDefinition.getHolder():16 -> a
+    1273:1273:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):843 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(2)"]}
-    1048:1048:com.android.tools.r8.graph.DexClasspathClass com.android.tools.r8.synthesis.SyntheticClasspathClassDefinition.getHolder():16:16 -> a
-    1048:1048:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):853 -> a
-    1049:1060:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):853:864 -> a
-    1061:1061:void writeAttributeIfIntermediateSyntheticClass(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):870:870 -> a
-    1062:1062:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
-    1062:1062:void writeAttributeIfIntermediateSyntheticClass(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):870 -> a
+    1274:1274:com.android.tools.r8.graph.DexClasspathClass com.android.tools.r8.synthesis.SyntheticClasspathClassDefinition.getHolder():16:16 -> a
+    1274:1274:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):843 -> a
+    1275:1286:com.android.tools.r8.synthesis.CommittedItems commit(com.android.tools.r8.graph.PrunedItems,com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics,com.android.tools.r8.synthesis.CommittedSyntheticsCollection,int):843:854 -> a
+    1287:1287:void writeAttributeIfIntermediateSyntheticClass(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):860:860 -> a
+    1288:1288:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
+    1288:1288:void writeAttributeIfIntermediateSyntheticClass(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):860 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    1063:1063:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
-    1063:1063:void writeAttributeIfIntermediateSyntheticClass(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):870 -> a
-    1064:1071:void writeAttributeIfIntermediateSyntheticClass(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):873:880 -> a
-    1072:1072:void com.android.tools.r8.synthesis.SyntheticMarker.writeMarkerAttribute(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):33:33 -> a
-    1072:1072:void writeAttributeIfIntermediateSyntheticClass(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):881 -> a
-    1:2:com.android.tools.r8.synthesis.CommittedItems createInitialSyntheticItems(com.android.tools.r8.graph.DexApplication):109:110 -> b
-    3:3:java.util.Collection getPendingSyntheticClasses():210:210 -> b
-    4:4:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):277:277 -> b
+    1289:1289:boolean com.android.tools.r8.utils.InternalOptions.isGeneratingClassFiles():482:482 -> a
+    1289:1289:void writeAttributeIfIntermediateSyntheticClass(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):860 -> a
+    1290:1297:void writeAttributeIfIntermediateSyntheticClass(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):863:870 -> a
+    1298:1298:void com.android.tools.r8.synthesis.SyntheticMarker.writeMarkerAttribute(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):33:33 -> a
+    1298:1298:void writeAttributeIfIntermediateSyntheticClass(com.android.tools.r8.org.objectweb.asm.ClassWriter,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):871 -> a
+    1:2:com.android.tools.r8.synthesis.CommittedItems createInitialSyntheticItems(com.android.tools.r8.graph.DexApplication):108:109 -> b
+    3:3:java.util.Collection getPendingSyntheticClasses():209:209 -> b
+    4:4:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):276:276 -> b
     5:5:boolean com.android.tools.r8.synthesis.CommittedSyntheticsCollection.containsSyntheticInput(com.android.tools.r8.graph.DexType):206:206 -> b
-    5:5:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):277 -> b
+    5:5:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):276 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
     6:6:boolean com.android.tools.r8.synthesis.CommittedSyntheticsCollection.containsSyntheticInput(com.android.tools.r8.graph.DexType):206:206 -> b
-    6:6:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):277 -> b
-    7:7:java.util.List getSynthesizingContexts(com.android.tools.r8.graph.DexType):318:318 -> b
-    8:25:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432:449 -> b
-    26:26:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):447:447 -> b
-    27:27:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):609:609 -> b
-    27:27:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):447 -> b
-    28:28:boolean com.android.tools.r8.graph.DexClass.isClasspathClass():0:0 -> b
-    28:28:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):611 -> b
-    28:28:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):447 -> b
-    29:29:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):611:611 -> b
-    29:29:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):447 -> b
-    30:30:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):610:610 -> b
-    30:30:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):447 -> b
-    31:31:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> b
-    31:31:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):613 -> b
+    6:6:boolean isSyntheticInput(com.android.tools.r8.graph.DexProgramClass):276 -> b
+    7:7:java.util.List getSynthesizingContexts(com.android.tools.r8.graph.DexType):317:317 -> b
+    8:10:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):428:430 -> b
+    11:16:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):408:413 -> b
+    11:16:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    17:17:boolean com.android.tools.r8.graph.DexClass.isLibraryClass():0:0 -> b
+    17:17:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):415 -> b
+    17:17:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    18:18:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):415:415 -> b
+    18:18:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    19:19:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):437:437 -> b
+    20:25:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):408:413 -> b
+    20:25:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):439 -> b
+    26:26:boolean com.android.tools.r8.graph.DexClass.isLibraryClass():0:0 -> b
+    26:26:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):415 -> b
+    26:26:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):439 -> b
+    27:27:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):415:415 -> b
+    27:27:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):439 -> b
+    28:30:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):441:443 -> b
+    31:31:boolean isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> b
+    31:31:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):443 -> b
+    32:33:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):443:444 -> b
+    34:41:void registerSyntheticTypeRewriting(com.android.tools.r8.synthesis.SynthesizingContext,java.util.function.Function,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType):481:488 -> b
+    34:41:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):467 -> b
+    34:41:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):445 -> b
+    42:44:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):468:470 -> b
+    42:44:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):445 -> b
+    45:46:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:36 -> b
+    45:46:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):471 -> b
+    45:46:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):445 -> b
+    47:48:boolean com.android.tools.r8.synthesis.SyntheticMarker.isDefinitelyNotSyntheticProgramClass(com.android.tools.r8.graph.DexProgramClass):143:144 -> b
+    47:48:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36 -> b
+    47:48:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):471 -> b
+    47:48:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):445 -> b
+    49:49:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36:36 -> b
+    49:49:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):471 -> b
+    49:49:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):445 -> b
+    50:50:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):472:472 -> b
+    50:50:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):445 -> b
+    51:51:void addPendingDefinition(com.android.tools.r8.synthesis.SyntheticDefinition):794:794 -> b
+    51:51:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):472 -> b
+    51:51:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):445 -> b
+    52:53:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):455:456 -> b
+    54:54:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418:418 -> b
+    54:54:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):439 -> b
+    55:55:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):601:601 -> b
+    55:55:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    55:55:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):439 -> b
+    56:56:boolean com.android.tools.r8.graph.DexClass.isClasspathClass():0:0 -> b
+    56:56:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):603 -> b
+    56:56:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    56:56:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):439 -> b
+    57:57:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):603:603 -> b
+    57:57:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    57:57:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):439 -> b
+    58:58:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):602:602 -> b
+    58:58:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    58:58:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):439 -> b
+    59:59:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> b
+    59:59:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605 -> b
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    31:31:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):447 -> b
-    32:32:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():502:502 -> b
-    32:32:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):613 -> b
-    32:32:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):447 -> b
-    33:34:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):613:614 -> b
-    33:34:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):447 -> b
-    35:35:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):451:451 -> b
-    36:36:boolean isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> b
-    36:36:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):451 -> b
-    37:38:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):451:452 -> b
-    39:46:void registerSyntheticTypeRewriting(com.android.tools.r8.synthesis.SynthesizingContext,java.util.function.Function,com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.DexType):489:496 -> b
-    39:46:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):475 -> b
-    39:46:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):453 -> b
-    47:49:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):476:478 -> b
-    47:49:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):453 -> b
-    50:51:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():35:36 -> b
-    50:51:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):479 -> b
-    50:51:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):453 -> b
-    52:53:boolean com.android.tools.r8.synthesis.SyntheticMarker.isDefinitelyNotSyntheticProgramClass(com.android.tools.r8.graph.DexProgramClass):143:144 -> b
-    52:53:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36 -> b
-    52:53:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):479 -> b
-    52:53:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):453 -> b
-    54:54:com.android.tools.r8.graph.DexProgramClass com.android.tools.r8.synthesis.SyntheticProgramClassBuilder.build():36:36 -> b
-    54:54:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):479 -> b
-    54:54:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):453 -> b
-    55:55:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):480:480 -> b
-    55:55:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):453 -> b
-    56:56:void addPendingDefinition(com.android.tools.r8.synthesis.SyntheticDefinition):804:804 -> b
-    56:56:com.android.tools.r8.graph.DexProgramClass internalCreateProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexType,java.util.function.Function,com.android.tools.r8.graph.AppView):480 -> b
-    56:56:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):453 -> b
-    57:59:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):463:465 -> b
-    60:60:com.android.tools.r8.graph.DexType lambda$internalEnsureFixedClasspathClass$9(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SynthesizingContext):631:631 -> b
-    61:62:com.android.tools.r8.graph.DexClasspathClass ensureFixedClasspathClassFromType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.AppView,java.util.function.Consumer,java.util.function.Consumer):658:659 -> b
-    63:63:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):776:776 -> b
-    64:66:com.android.tools.r8.synthesis.SyntheticFinalization$Result computeFinalSynthetics(com.android.tools.r8.graph.AppView):888:890 -> b
-    1:1:boolean hasPendingSyntheticClasses():206:206 -> c
-    2:2:boolean isCommittedSynthetic(com.android.tools.r8.graph.DexType):214:214 -> c
+    59:59:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    59:59:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):439 -> b
+    60:60:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> b
+    60:60:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605 -> b
+    60:60:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    60:60:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):439 -> b
+    61:62:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605:606 -> b
+    61:62:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    61:62:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):439 -> b
+    63:63:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):457:457 -> b
+    64:64:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418:418 -> b
+    64:64:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    65:65:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):601:601 -> b
+    65:65:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    65:65:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    66:66:boolean com.android.tools.r8.graph.DexClass.isClasspathClass():0:0 -> b
+    66:66:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):603 -> b
+    66:66:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    66:66:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    67:67:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):603:603 -> b
+    67:67:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    67:67:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    68:68:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):602:602 -> b
+    68:68:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    68:68:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    69:69:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> b
+    69:69:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605 -> b
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    69:69:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    69:69:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    70:70:com.android.tools.r8.utils.Reporter com.android.tools.r8.graph.AppView.reporter():522:522 -> b
+    70:70:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605 -> b
+    70:70:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    70:70:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    71:71:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):0:0 -> b
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":74,"2":75,"3":76}}
+    74:74:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605:605 -> b
+    74:74:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    74:74:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    75:75:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605:605 -> b
+    75:75:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    75:75:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    76:76:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605:605 -> b
+    76:76:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    76:76:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    72:73:void errorOnInvalidSyntheticEnsure(com.android.tools.r8.graph.DexClass,java.lang.String,com.android.tools.r8.graph.AppView):605:606 -> b
+    72:73:com.android.tools.r8.graph.DexProgramClass internalLookupProgramClass(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView):418 -> b
+    72:73:com.android.tools.r8.graph.DexProgramClass internalEnsureFixedProgramClass(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.util.function.Consumer,java.util.function.Consumer,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.AppView):432 -> b
+    77:77:com.android.tools.r8.graph.DexType lambda$internalEnsureFixedClasspathClass$9(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SynthesizingContext):623:623 -> b
+    78:78:com.android.tools.r8.graph.ProgramMethod createMethod(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.contexts.CompilationContext$UniqueContext,com.android.tools.r8.graph.AppView,java.util.function.Consumer):766:766 -> b
+    79:81:com.android.tools.r8.synthesis.SyntheticFinalization$Result computeFinalSynthetics(com.android.tools.r8.graph.AppView):878:880 -> b
+    1:1:boolean hasPendingSyntheticClasses():205:205 -> c
+    2:2:boolean isCommittedSynthetic(com.android.tools.r8.graph.DexType):213:213 -> c
     3:3:boolean com.android.tools.r8.synthesis.CommittedSyntheticsCollection.containsType(com.android.tools.r8.graph.DexType):176:176 -> c
-    3:3:boolean isCommittedSynthetic(com.android.tools.r8.graph.DexType):214 -> c
+    3:3:boolean isCommittedSynthetic(com.android.tools.r8.graph.DexType):213 -> c
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    4:4:com.android.tools.r8.graph.DexType lambda$internalEnsureFixedProgramClass$5(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SynthesizingContext):433:433 -> c
-    1:1:boolean isFinalized():202:202 -> d
-    2:2:boolean isNonLegacyCommittedSynthetic(com.android.tools.r8.graph.DexType):218:218 -> d
-    2:2:boolean isNonLegacySynthetic(com.android.tools.r8.graph.DexType):234 -> d
-    3:3:boolean isNonLegacyPendingSynthetic(com.android.tools.r8.graph.DexType):226:226 -> d
-    3:3:boolean isNonLegacySynthetic(com.android.tools.r8.graph.DexType):234 -> d
-    1:1:boolean isPendingSynthetic(com.android.tools.r8.graph.DexType):222:222 -> e
+    4:4:com.android.tools.r8.graph.DexType lambda$internalEnsureFixedProgramClass$5(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.AppView,com.android.tools.r8.synthesis.SynthesizingContext):429:429 -> c
+    1:1:boolean isFinalized():201:201 -> d
+    2:2:boolean isNonLegacyCommittedSynthetic(com.android.tools.r8.graph.DexType):217:217 -> d
+    2:2:boolean isNonLegacySynthetic(com.android.tools.r8.graph.DexType):233 -> d
+    3:3:boolean isNonLegacyPendingSynthetic(com.android.tools.r8.graph.DexType):225:225 -> d
+    3:3:boolean isNonLegacySynthetic(com.android.tools.r8.graph.DexType):233 -> d
+    1:1:boolean isPendingSynthetic(com.android.tools.r8.graph.DexType):221:221 -> e
 com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics -> com.android.tools.r8.synthesis.q:
     java.util.concurrent.ConcurrentHashMap nonLegacyDefinitions -> a
     boolean $assertionsDisabled -> b
-    1:1:void <clinit>():63:63 -> <clinit>
-    1:4:void <init>():63:66 -> <init>
-    5:5:void <init>(com.android.tools.r8.synthesis.SyntheticItems$1):63:63 -> <init>
-    1:1:java.util.concurrent.ConcurrentHashMap access$100(com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics):63:63 -> a
-    2:2:boolean containsType(com.android.tools.r8.graph.DexType):74:74 -> a
-    3:4:boolean containsTypeOfKind(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):78:79 -> a
-    5:5:boolean verifyNotRewritten(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):83:83 -> a
-    6:12:java.util.Collection getAllProgramClasses():88:94 -> a
-    1:1:boolean isEmpty():70:70 -> b
-com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle -> com.android.tools.r8.internal.iY:
+    1:1:void <clinit>():62:62 -> <clinit>
+    1:4:void <init>():62:65 -> <init>
+    5:5:void <init>(com.android.tools.r8.synthesis.SyntheticItems$1):62:62 -> <init>
+    1:1:java.util.concurrent.ConcurrentHashMap access$100(com.android.tools.r8.synthesis.SyntheticItems$PendingSynthetics):62:62 -> a
+    2:2:boolean containsType(com.android.tools.r8.graph.DexType):73:73 -> a
+    3:4:boolean containsTypeOfKind(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):77:78 -> a
+    5:5:boolean verifyNotRewritten(com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):82:82 -> a
+    6:12:java.util.Collection getAllProgramClasses():87:93 -> a
+    1:1:boolean isEmpty():69:69 -> b
+com.android.tools.r8.synthesis.SyntheticItems$SynthesizingContextOracle -> com.android.tools.r8.internal.jY:
     java.util.Set getSynthesizingContexts(com.android.tools.r8.graph.DexProgramClass) -> a
 com.android.tools.r8.synthesis.SyntheticMarker -> com.android.tools.r8.synthesis.t:
     com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind kind -> a
@@ -120294,16 +120259,16 @@
     11:13:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):96:98 -> a
     14:14:com.android.tools.r8.graph.DexType getSyntheticContextType(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexItemFactory):149:149 -> a
     14:14:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):98 -> a
-    15:18:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):165:168 -> a
+    15:18:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):169:172 -> a
     15:18:com.android.tools.r8.graph.DexType getSyntheticContextType(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexItemFactory):149 -> a
     15:18:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):98 -> a
-    19:24:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):167:172 -> a
+    19:24:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):171:176 -> a
     19:24:com.android.tools.r8.graph.DexType getSyntheticContextType(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexItemFactory):149 -> a
     19:24:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):98 -> a
     25:25:com.android.tools.r8.graph.DexType getSyntheticContextType(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexItemFactory):150:150 -> a
     25:25:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):98 -> a
     26:27:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):100:101 -> a
-    28:28:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):170:170 -> a
+    28:28:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):174:174 -> a
     28:28:com.android.tools.r8.graph.DexType getSyntheticContextType(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexItemFactory):149 -> a
     28:28:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):98 -> a
     29:30:com.android.tools.r8.synthesis.SyntheticMarker internalStripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):112:113 -> a
@@ -120330,11 +120295,11 @@
     60:60:com.android.tools.r8.graph.DexType getSyntheticContextType(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexItemFactory):149:149 -> a
     60:60:com.android.tools.r8.synthesis.SyntheticMarker internalStripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):136 -> a
     60:60:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):103 -> a
-    61:64:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):165:168 -> a
+    61:64:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):169:172 -> a
     61:64:com.android.tools.r8.graph.DexType getSyntheticContextType(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexItemFactory):149 -> a
     61:64:com.android.tools.r8.synthesis.SyntheticMarker internalStripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):136 -> a
     61:64:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):103 -> a
-    65:70:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):167:172 -> a
+    65:70:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):171:176 -> a
     65:70:com.android.tools.r8.graph.DexType getSyntheticContextType(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexItemFactory):149 -> a
     65:70:com.android.tools.r8.synthesis.SyntheticMarker internalStripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):136 -> a
     65:70:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):103 -> a
@@ -120347,7 +120312,7 @@
     77:77:boolean com.android.tools.r8.graph.DexAnnotation.hasSynthesizedClassAnnotation(com.android.tools.r8.graph.DexAnnotationSet,com.android.tools.r8.graph.DexItemFactory):405:405 -> a
     77:77:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):105 -> a
     78:78:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):104:104 -> a
-    79:79:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):170:170 -> a
+    79:79:java.lang.String com.android.tools.r8.synthesis.SyntheticNaming.getPrefixForExternalSyntheticType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType):174:174 -> a
     79:79:com.android.tools.r8.graph.DexType getSyntheticContextType(com.android.tools.r8.graph.DexType,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexItemFactory):149 -> a
     79:79:com.android.tools.r8.synthesis.SyntheticMarker internalStripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):136 -> a
     79:79:com.android.tools.r8.synthesis.SyntheticMarker stripMarkerFromClass(com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.graph.AppView):103 -> a
@@ -120364,7 +120329,7 @@
     1:2:void <init>(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):51:52 -> <init>
     1:1:com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind access$100(com.android.tools.r8.synthesis.SyntheticMarker$MarkerAttribute):44:44 -> a
     2:3:com.android.tools.r8.org.objectweb.asm.Attribute read(com.android.tools.r8.org.objectweb.asm.ClassReader,int,int,char[],int,com.android.tools.r8.org.objectweb.asm.Label[]):63:64 -> a
-    4:5:com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind.fromId(int):128:129 -> a
+    4:5:com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind.fromId(int):132:133 -> a
     4:5:com.android.tools.r8.org.objectweb.asm.Attribute read(com.android.tools.r8.org.objectweb.asm.ClassReader,int,int,char[],int,com.android.tools.r8.org.objectweb.asm.Label[]):65 -> a
     6:6:com.android.tools.r8.org.objectweb.asm.Attribute read(com.android.tools.r8.org.objectweb.asm.ClassReader,int,int,char[],int,com.android.tools.r8.org.objectweb.asm.Label[]):66:66 -> a
     7:9:com.android.tools.r8.org.objectweb.asm.ByteVector write(com.android.tools.r8.org.objectweb.asm.ClassWriter,byte[],int,int,int):72:74 -> a
@@ -120426,7 +120391,7 @@
     1:1:com.android.tools.r8.synthesis.SyntheticMethodBuilder setApiLevelForDefinition(com.android.tools.r8.androidapi.ComputedApiLevel):115:115 -> b
     2:2:com.android.tools.r8.synthesis.SyntheticMethodBuilder disableAndroidApiLevelCheck():125:125 -> b
     1:1:com.android.tools.r8.synthesis.SyntheticMethodBuilder setName(java.lang.String):63:63 -> c
-com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator -> com.android.tools.r8.internal.lY:
+com.android.tools.r8.synthesis.SyntheticMethodBuilder$SyntheticCodeGenerator -> com.android.tools.r8.internal.mY:
     com.android.tools.r8.graph.Code generate(com.android.tools.r8.graph.DexMethod) -> a
 com.android.tools.r8.synthesis.SyntheticMethodDefinition -> com.android.tools.r8.synthesis.v:
     com.android.tools.r8.graph.ProgramMethod method -> d
@@ -120476,7 +120441,7 @@
     10:10:com.android.tools.r8.synthesis.SyntheticReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):21 -> a
     11:15:com.android.tools.r8.synthesis.SyntheticMethodReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):60:64 -> a
     11:15:com.android.tools.r8.synthesis.SyntheticReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):21 -> a
-    16:16:boolean com.android.tools.r8.synthesis.SyntheticNaming.verifyNotInternalSynthetic(com.android.tools.r8.graph.DexType):224:224 -> a
+    16:16:boolean com.android.tools.r8.synthesis.SyntheticNaming.verifyNotInternalSynthetic(com.android.tools.r8.graph.DexType):228:228 -> a
     16:16:com.android.tools.r8.synthesis.SyntheticMethodReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):64 -> a
     16:16:com.android.tools.r8.synthesis.SyntheticReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):21 -> a
     17:20:com.android.tools.r8.synthesis.SyntheticMethodReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):67:70 -> a
@@ -120488,57 +120453,57 @@
     boolean $assertionsDisabled -> a
     int $r8$clinit -> b
     1:1:void <clinit>():15:15 -> <clinit>
-    1:2:com.android.tools.r8.graph.DexType createFixedType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexItemFactory):177:178 -> a
-    3:3:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):205:205 -> a
-    3:3:com.android.tools.r8.graph.DexType createFixedType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexItemFactory):178 -> a
-    4:4:java.lang.String createDescriptor(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String):219:219 -> a
-    4:4:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):205 -> a
-    4:4:com.android.tools.r8.graph.DexType createFixedType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexItemFactory):178 -> a
-    5:5:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):205:205 -> a
-    5:5:com.android.tools.r8.graph.DexType createFixedType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexItemFactory):178 -> a
-    6:10:com.android.tools.r8.graph.DexType createInternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,java.lang.String,com.android.tools.r8.graph.DexItemFactory):183:187 -> a
-    11:11:com.android.tools.r8.graph.DexType createInternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,java.lang.String,com.android.tools.r8.graph.DexItemFactory):184:184 -> a
-    12:12:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):205:205 -> a
-    12:12:com.android.tools.r8.graph.DexType createInternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,java.lang.String,com.android.tools.r8.graph.DexItemFactory):184 -> a
-    13:13:java.lang.String createDescriptor(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String):219:219 -> a
-    13:13:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):205 -> a
-    13:13:com.android.tools.r8.graph.DexType createInternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,java.lang.String,com.android.tools.r8.graph.DexItemFactory):184 -> a
-    14:14:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):205:205 -> a
-    14:14:com.android.tools.r8.graph.DexType createInternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,java.lang.String,com.android.tools.r8.graph.DexItemFactory):184 -> a
-    15:17:com.android.tools.r8.graph.DexType createExternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String,com.android.tools.r8.graph.DexItemFactory):194:196 -> a
-    18:18:java.lang.String createDescriptor(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String):219:219 -> a
-    18:18:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String,com.android.tools.r8.graph.DexItemFactory):214 -> a
-    18:18:com.android.tools.r8.graph.DexType createExternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String,com.android.tools.r8.graph.DexItemFactory):195 -> a
-    19:19:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String,com.android.tools.r8.graph.DexItemFactory):214:214 -> a
-    19:19:com.android.tools.r8.graph.DexType createExternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String,com.android.tools.r8.graph.DexItemFactory):195 -> a
-    20:20:boolean verifyNotInternalSynthetic(com.android.tools.r8.references.ClassReference):228:228 -> a
-    21:21:boolean verifyNotInternalSynthetic(java.lang.String):232:232 -> a
-    22:25:java.lang.String getPhaseSeparator(com.android.tools.r8.synthesis.SyntheticNaming$Phase):244:247 -> a
-    26:26:com.android.tools.r8.references.ClassReference makeSyntheticReferenceForTest(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String):253:253 -> a
-    27:27:java.lang.String createDescriptor(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String):219:219 -> a
-    27:27:com.android.tools.r8.references.ClassReference makeSyntheticReferenceForTest(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String):253 -> a
-    28:28:com.android.tools.r8.references.ClassReference makeSyntheticReferenceForTest(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String):252:252 -> a
-    29:36:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):262:269 -> a
-    37:41:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):278:282 -> a
-    37:41:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):269 -> a
+    1:2:com.android.tools.r8.graph.DexType createFixedType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexItemFactory):181:182 -> a
+    3:3:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):209:209 -> a
+    3:3:com.android.tools.r8.graph.DexType createFixedType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexItemFactory):182 -> a
+    4:4:java.lang.String createDescriptor(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String):223:223 -> a
+    4:4:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):209 -> a
+    4:4:com.android.tools.r8.graph.DexType createFixedType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexItemFactory):182 -> a
+    5:5:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):209:209 -> a
+    5:5:com.android.tools.r8.graph.DexType createFixedType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.DexItemFactory):182 -> a
+    6:10:com.android.tools.r8.graph.DexType createInternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,java.lang.String,com.android.tools.r8.graph.DexItemFactory):187:191 -> a
+    11:11:com.android.tools.r8.graph.DexType createInternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,java.lang.String,com.android.tools.r8.graph.DexItemFactory):188:188 -> a
+    12:12:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):209:209 -> a
+    12:12:com.android.tools.r8.graph.DexType createInternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,java.lang.String,com.android.tools.r8.graph.DexItemFactory):188 -> a
+    13:13:java.lang.String createDescriptor(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String):223:223 -> a
+    13:13:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):209 -> a
+    13:13:com.android.tools.r8.graph.DexType createInternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,java.lang.String,com.android.tools.r8.graph.DexItemFactory):188 -> a
+    14:14:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.graph.DexType,java.lang.String,com.android.tools.r8.graph.DexItemFactory):209:209 -> a
+    14:14:com.android.tools.r8.graph.DexType createInternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,com.android.tools.r8.synthesis.SynthesizingContext,java.lang.String,com.android.tools.r8.graph.DexItemFactory):188 -> a
+    15:17:com.android.tools.r8.graph.DexType createExternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String,com.android.tools.r8.graph.DexItemFactory):198:200 -> a
+    18:18:java.lang.String createDescriptor(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String):223:223 -> a
+    18:18:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String,com.android.tools.r8.graph.DexItemFactory):218 -> a
+    18:18:com.android.tools.r8.graph.DexType createExternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String,com.android.tools.r8.graph.DexItemFactory):199 -> a
+    19:19:com.android.tools.r8.graph.DexType createType(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String,com.android.tools.r8.graph.DexItemFactory):218:218 -> a
+    19:19:com.android.tools.r8.graph.DexType createExternalType(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String,com.android.tools.r8.graph.DexItemFactory):199 -> a
+    20:20:boolean verifyNotInternalSynthetic(com.android.tools.r8.references.ClassReference):232:232 -> a
+    21:21:boolean verifyNotInternalSynthetic(java.lang.String):236:236 -> a
+    22:25:java.lang.String getPhaseSeparator(com.android.tools.r8.synthesis.SyntheticNaming$Phase):248:251 -> a
+    26:26:com.android.tools.r8.references.ClassReference makeSyntheticReferenceForTest(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String):257:257 -> a
+    27:27:java.lang.String createDescriptor(java.lang.String,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,java.lang.String):223:223 -> a
+    27:27:com.android.tools.r8.references.ClassReference makeSyntheticReferenceForTest(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String):257 -> a
+    28:28:com.android.tools.r8.references.ClassReference makeSyntheticReferenceForTest(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String):256:256 -> a
+    29:36:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):266:273 -> a
+    37:41:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):282:286 -> a
+    37:41:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):273 -> a
     42:42:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):0:0 -> a
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":53,"2":54,"3":55}}
-    53:53:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):283:283 -> a
-    53:53:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):269 -> a
-    54:54:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):283:283 -> a
-    54:54:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):269 -> a
-    55:55:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):283:283 -> a
-    55:55:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):269 -> a
-    43:44:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):283:284 -> a
-    43:44:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):269 -> a
-    45:52:boolean isInt(java.lang.String):288:295 -> a
-    45:52:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):284 -> a
-    45:52:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):269 -> a
+    53:53:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):287:287 -> a
+    53:53:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):273 -> a
+    54:54:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):287:287 -> a
+    54:54:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):273 -> a
+    55:55:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):287:287 -> a
+    55:55:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):273 -> a
+    43:44:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):287:288 -> a
+    43:44:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):273 -> a
+    45:52:boolean isInt(java.lang.String):292:299 -> a
+    45:52:boolean checkMatchFrom(com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind,java.lang.String,int,java.lang.String,boolean):288 -> a
+    45:52:boolean isSynthetic(com.android.tools.r8.references.ClassReference,com.android.tools.r8.synthesis.SyntheticNaming$Phase,com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind):273 -> a
 com.android.tools.r8.synthesis.SyntheticNaming$Phase -> com.android.tools.r8.synthesis.x$a:
     com.android.tools.r8.synthesis.SyntheticNaming$Phase INTERNAL -> b
     com.android.tools.r8.synthesis.SyntheticNaming$Phase EXTERNAL -> c
-    1:2:void <clinit>():239:240 -> <clinit>
-    1:1:void <init>(java.lang.String,int):238:238 -> <init>
+    1:2:void <clinit>():243:244 -> <clinit>
+    1:1:void <init>(java.lang.String,int):242:242 -> <init>
 com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind -> com.android.tools.r8.synthesis.x$b:
     com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind BACKPORT -> y
     com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind[] $VALUES -> R
@@ -120685,16 +120650,17 @@
     103:103:void <clinit>():63 -> <clinit>
     104:106:void <clinit>():63:65 -> <clinit>
     107:107:void <clinit>():26:26 -> <clinit>
-    108:108:boolean verifyNoOverlappingIds():137:137 -> <clinit>
+    108:108:boolean verifyNoOverlappingIds():141:141 -> <clinit>
     108:108:void <clinit>():68 -> <clinit>
     109:109:void com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2ReferenceOpenHashMap.<init>():119:119 -> <clinit>
-    109:109:boolean verifyNoOverlappingIds():137 -> <clinit>
+    109:109:boolean verifyNoOverlappingIds():141 -> <clinit>
     109:109:void <clinit>():68 -> <clinit>
-    110:112:boolean verifyNoOverlappingIds():138:140 -> <clinit>
+    110:112:boolean verifyNoOverlappingIds():142:144 -> <clinit>
     110:112:void <clinit>():68 -> <clinit>
     1:1:void <init>(java.lang.String,int,java.lang.String,int,boolean,boolean):86:86 -> <init>
     2:7:void <init>(java.lang.String,int,java.lang.String,int,boolean,boolean,boolean):94:99 -> <init>
-    1:1:com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind[] values():26:26 -> a
+    1:1:boolean isGlobal():107:107 -> a
+    1:1:com.android.tools.r8.synthesis.SyntheticNaming$SyntheticKind[] values():26:26 -> b
 com.android.tools.r8.synthesis.SyntheticProgramClassBuilder -> com.android.tools.r8.synthesis.y:
     boolean $assertionsDisabled -> t
     1:1:void <clinit>():12:12 -> <clinit>
@@ -120753,7 +120719,7 @@
     8:8:com.android.tools.r8.synthesis.SyntheticReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):19 -> a
     9:15:com.android.tools.r8.synthesis.SyntheticProgramClassReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):44:50 -> a
     9:15:com.android.tools.r8.synthesis.SyntheticReference internalRewrite(com.android.tools.r8.synthesis.SynthesizingContext,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):19 -> a
-com.android.tools.r8.synthesis.SyntheticProgramDefinition -> com.android.tools.r8.internal.mY:
+com.android.tools.r8.synthesis.SyntheticProgramDefinition -> com.android.tools.r8.internal.nY:
     void apply(java.util.function.Consumer,java.util.function.Consumer) -> a
     com.android.tools.r8.graph.DexProgramClass getHolder() -> b
 com.android.tools.r8.synthesis.SyntheticReference -> com.android.tools.r8.synthesis.B:
@@ -121286,10 +121252,10 @@
     44:44:boolean isTargetType(com.android.tools.r8.graph.DexType):141:141 -> a
     44:44:boolean access$500(com.android.tools.r8.tracereferences.Tracer$UseCollector,com.android.tools.r8.graph.DexType):108 -> a
     45:46:void addClassType(com.android.tools.r8.graph.DexType,com.android.tools.r8.diagnostic.DefinitionContext):163:164 -> a
-    47:47:com.android.tools.r8.graph.ClassResolutionResult com.android.tools.r8.graph.AppView.contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):304:304 -> a
+    47:47:com.android.tools.r8.graph.ClassResolutionResult com.android.tools.r8.graph.AppView.contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):324:324 -> a
     47:47:void addClassType(com.android.tools.r8.graph.DexType,com.android.tools.r8.diagnostic.DefinitionContext):165 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    48:48:com.android.tools.r8.graph.ClassResolutionResult com.android.tools.r8.graph.AppView.contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):304:304 -> a
+    48:48:com.android.tools.r8.graph.ClassResolutionResult com.android.tools.r8.graph.AppView.contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):324:324 -> a
     48:48:void addClassType(com.android.tools.r8.graph.DexType,com.android.tools.r8.diagnostic.DefinitionContext):165 -> a
     49:52:void addClassType(com.android.tools.r8.graph.DexType,com.android.tools.r8.diagnostic.DefinitionContext):166:169 -> a
     53:53:void com.android.tools.r8.tracereferences.internal.TracedClassImpl.<init>(com.android.tools.r8.graph.DexType,com.android.tools.r8.diagnostic.DefinitionContext):17:17 -> a
@@ -121413,10 +121379,10 @@
     73:86:void lambda$handleRewrittenFieldReference$1(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.FieldResolutionResult):446:459 -> a
     87:87:void lambda$handleRewrittenFieldReference$1(com.android.tools.r8.graph.DexField,com.android.tools.r8.graph.FieldResolutionResult):457:457 -> a
     88:96:void registerCallSite(com.android.tools.r8.graph.DexCallSite):481:489 -> a
-    97:97:com.android.tools.r8.graph.ClassResolutionResult com.android.tools.r8.graph.AppView.contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):304:304 -> a
+    97:97:com.android.tools.r8.graph.ClassResolutionResult com.android.tools.r8.graph.AppView.contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):324:324 -> a
     97:97:void registerCallSite(com.android.tools.r8.graph.DexCallSite):489 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    98:98:com.android.tools.r8.graph.ClassResolutionResult com.android.tools.r8.graph.AppView.contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):304:304 -> a
+    98:98:com.android.tools.r8.graph.ClassResolutionResult com.android.tools.r8.graph.AppView.contextIndependentDefinitionForWithResolutionResult(com.android.tools.r8.graph.DexType):324:324 -> a
     98:98:void registerCallSite(com.android.tools.r8.graph.DexCallSite):489 -> a
     99:118:void registerCallSite(com.android.tools.r8.graph.DexCallSite):490:509 -> a
     119:127:void lambda$registerCallSite$2(com.android.tools.r8.ir.desugar.LambdaDescriptor,com.android.tools.r8.graph.DexClass):494:502 -> a
@@ -121513,7 +121479,7 @@
     1:1:boolean isInterface():18:18 -> isInterface
 com.android.tools.r8.tracereferences.internal.FieldAccessFlagsImpl -> com.android.tools.r8.internal.Mj:
     1:1:void <init>(com.android.tools.r8.graph.FieldAccessFlags):13:13 -> <init>
-com.android.tools.r8.tracereferences.internal.MethodAccessFlagsImpl -> com.android.tools.r8.internal.xE:
+com.android.tools.r8.tracereferences.internal.MethodAccessFlagsImpl -> com.android.tools.r8.internal.yE:
     1:1:void <init>(com.android.tools.r8.graph.MethodAccessFlags):13:13 -> <init>
 com.android.tools.r8.tracereferences.internal.TraceReferencesResult -> com.android.tools.r8.internal.aZ:
     java.util.Map fields -> b
@@ -121922,7 +121888,7 @@
     6:20:void lambda$addDump$0(com.android.tools.r8.origin.Origin,java.util.zip.ZipEntry,java.io.InputStream):850 -> a
     21:26:void readProgramDump(com.android.tools.r8.origin.Origin,java.io.InputStream):906:911 -> a
     21:26:void lambda$addDump$0(com.android.tools.r8.origin.Origin,java.util.zip.ZipEntry,java.io.InputStream):850 -> a
-    27:28:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):188:189 -> a
+    27:28:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):214:215 -> a
     27:28:void readProgramDump(com.android.tools.r8.origin.Origin,java.io.InputStream):912 -> a
     27:28:void lambda$addDump$0(com.android.tools.r8.origin.Origin,java.util.zip.ZipEntry,java.io.InputStream):850 -> a
     29:32:void readProgramDump(com.android.tools.r8.origin.Origin,java.io.InputStream):913:916 -> a
@@ -122011,7 +121977,7 @@
     17:17:com.android.tools.r8.utils.AndroidApp$Builder addFilteredLibraryArchives(java.util.Collection):1047:1047 -> d
     18:18:boolean hasMainDexList():1191:1191 -> d
     19:27:com.android.tools.r8.utils.AndroidApp$Builder addProgramFile(java.nio.file.Path):1257:1265 -> d
-    28:29:boolean com.android.tools.r8.utils.FileUtils.isAarFile(java.nio.file.Path):73:74 -> d
+    28:29:boolean com.android.tools.r8.utils.FileUtils.isAarFile(java.nio.file.Path):77:78 -> d
     28:29:com.android.tools.r8.utils.AndroidApp$Builder addProgramFile(java.nio.file.Path):1266 -> d
     30:30:com.android.tools.r8.utils.AarArchiveResourceProvider com.android.tools.r8.utils.AarArchiveResourceProvider.fromArchive(java.nio.file.Path):38:38 -> d
     30:30:com.android.tools.r8.utils.AndroidApp$Builder addProgramFile(java.nio.file.Path):1267 -> d
@@ -122199,7 +122165,7 @@
     45:45:void com.android.tools.r8.utils.ArchiveBuilder.writeFileNow(java.lang.String,com.android.tools.r8.ByteDataView,com.android.tools.r8.DiagnosticsHandler):153:153 -> a
     45:45:void com.android.tools.r8.utils.ArchiveBuilder.writeDelayed(com.android.tools.r8.DiagnosticsHandler):75 -> a
     45:45:void close(com.android.tools.r8.DiagnosticsHandler):55 -> a
-    46:58:void com.android.tools.r8.utils.ZipUtils.writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,com.android.tools.r8.ByteDataView,int):172:184 -> a
+    46:58:void com.android.tools.r8.utils.ZipUtils.writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,com.android.tools.r8.ByteDataView,int):198:210 -> a
     46:58:void com.android.tools.r8.utils.ArchiveBuilder.writeFileNow(java.lang.String,com.android.tools.r8.ByteDataView,com.android.tools.r8.DiagnosticsHandler):153 -> a
     46:58:void com.android.tools.r8.utils.ArchiveBuilder.writeDelayed(com.android.tools.r8.DiagnosticsHandler):75 -> a
     46:58:void close(com.android.tools.r8.DiagnosticsHandler):55 -> a
@@ -122236,7 +122202,7 @@
     253:259:void addIndexedClassFile(int,java.lang.String,com.android.tools.r8.ByteDataView,com.android.tools.r8.DiagnosticsHandler):173 -> a
     260:260:void com.android.tools.r8.utils.ArchiveBuilder.writeFileNow(java.lang.String,com.android.tools.r8.ByteDataView,com.android.tools.r8.DiagnosticsHandler):153:153 -> a
     260:260:void addIndexedClassFile(int,java.lang.String,com.android.tools.r8.ByteDataView,com.android.tools.r8.DiagnosticsHandler):173 -> a
-    261:273:void com.android.tools.r8.utils.ZipUtils.writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,com.android.tools.r8.ByteDataView,int):172:184 -> a
+    261:273:void com.android.tools.r8.utils.ZipUtils.writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,com.android.tools.r8.ByteDataView,int):198:210 -> a
     261:273:void com.android.tools.r8.utils.ArchiveBuilder.writeFileNow(java.lang.String,com.android.tools.r8.ByteDataView,com.android.tools.r8.DiagnosticsHandler):153 -> a
     261:273:void addIndexedClassFile(int,java.lang.String,com.android.tools.r8.ByteDataView,com.android.tools.r8.DiagnosticsHandler):173 -> a
     274:280:void com.android.tools.r8.utils.ArchiveBuilder.handleIOException(java.io.IOException,com.android.tools.r8.DiagnosticsHandler):99:105 -> a
@@ -122260,7 +122226,7 @@
     294:294:void com.android.tools.r8.utils.ArchiveBuilder.writeFileNow(java.lang.String,com.android.tools.r8.ByteDataView,com.android.tools.r8.DiagnosticsHandler):153:153 -> a
     294:294:void com.android.tools.r8.utils.ArchiveBuilder.writeNextIfAvailable(com.android.tools.r8.DiagnosticsHandler):162 -> a
     294:294:void addIndexedClassFile(int,java.lang.String,com.android.tools.r8.ByteDataView,com.android.tools.r8.DiagnosticsHandler):175 -> a
-    295:307:void com.android.tools.r8.utils.ZipUtils.writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,com.android.tools.r8.ByteDataView,int):172:184 -> a
+    295:307:void com.android.tools.r8.utils.ZipUtils.writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,com.android.tools.r8.ByteDataView,int):198:210 -> a
     295:307:void com.android.tools.r8.utils.ArchiveBuilder.writeFileNow(java.lang.String,com.android.tools.r8.ByteDataView,com.android.tools.r8.DiagnosticsHandler):153 -> a
     295:307:void com.android.tools.r8.utils.ArchiveBuilder.writeNextIfAvailable(com.android.tools.r8.DiagnosticsHandler):162 -> a
     295:307:void addIndexedClassFile(int,java.lang.String,com.android.tools.r8.ByteDataView,com.android.tools.r8.DiagnosticsHandler):175 -> a
@@ -122293,7 +122259,7 @@
     1:1:void <clinit>():36:36 -> <clinit>
     1:5:void <init>(com.android.tools.r8.shaking.FilteredClassPath,boolean):47:51 -> <init>
     1:12:java.util.List readArchive():59:70 -> a
-    13:14:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):188:189 -> a
+    13:14:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):214:215 -> a
     13:14:java.util.List readArchive():70 -> a
     15:18:java.util.List readArchive():71:74 -> a
     19:30:java.util.List readArchive():73:84 -> a
@@ -122322,7 +122288,7 @@
     1:7:void accept(com.android.tools.r8.DataResourceProvider$Visitor):118:124 -> accept
     8:8:boolean isProgramResourceName(java.lang.String):142:142 -> accept
     8:8:void accept(com.android.tools.r8.DataResourceProvider$Visitor):124 -> accept
-    9:10:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):188:189 -> accept
+    9:10:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):214:215 -> accept
     9:10:boolean isProgramResourceName(java.lang.String):142 -> accept
     9:10:void accept(com.android.tools.r8.DataResourceProvider$Visitor):124 -> accept
     11:11:boolean isProgramResourceName(java.lang.String):142:142 -> accept
@@ -122345,13 +122311,13 @@
     320:326:void accept(java.util.function.Consumer):146:152 -> accept
     327:327:boolean isProgramResourceName(java.lang.String):142:142 -> accept
     327:327:void accept(java.util.function.Consumer):152 -> accept
-    328:329:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):188:189 -> accept
+    328:329:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):214:215 -> accept
     328:329:boolean isProgramResourceName(java.lang.String):142 -> accept
     328:329:void accept(java.util.function.Consumer):152 -> accept
     330:330:boolean isProgramResourceName(java.lang.String):142:142 -> accept
     330:330:void accept(java.util.function.Consumer):152 -> accept
     331:332:void accept(java.util.function.Consumer):153:154 -> accept
-    333:334:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):188:189 -> accept
+    333:334:boolean com.android.tools.r8.utils.ZipUtils.isDexFile(java.lang.String):214:215 -> accept
     333:334:void accept(java.util.function.Consumer):155 -> accept
     335:337:void accept(java.util.function.Consumer):156:158 -> accept
     338:347:void accept(java.util.function.Consumer):157:166 -> accept
@@ -123408,30 +123374,32 @@
     boolean isAndroid -> a
     boolean $assertionsDisabled -> b
     1:16:void <clinit>():21:36 -> <clinit>
-    1:5:boolean isArchive(java.nio.file.Path):78:82 -> a
-    6:6:java.lang.String readTextFile(java.nio.file.Path,java.nio.charset.Charset):86:86 -> a
-    7:7:void writeTextFile(java.nio.file.Path,java.util.List):94:94 -> a
-    8:8:void writeTextFile(java.nio.file.Path,java.lang.String[]):98:98 -> a
-    9:11:java.nio.file.Path validateOutputFile(java.nio.file.Path,com.android.tools.r8.utils.Reporter):103:105 -> a
-    12:12:void writeToFile(java.nio.file.Path,java.io.OutputStream,byte[]):167:167 -> a
-    13:14:void writeToFile(java.nio.file.Path,java.io.OutputStream,com.android.tools.r8.ByteDataView):172:173 -> a
-    15:19:java.io.OutputStream com.android.tools.r8.utils.FileUtils.openPathWithDefault(com.android.tools.r8.com.google.common.io.Closer,java.nio.file.Path,java.io.OutputStream,java.nio.file.OpenOption[]):131:135 -> a
-    15:19:void writeToFile(java.nio.file.Path,java.io.OutputStream,com.android.tools.r8.ByteDataView):174 -> a
-    20:21:void writeToFile(java.nio.file.Path,java.io.OutputStream,com.android.tools.r8.ByteDataView):181:182 -> a
-    22:32:void writeToFile(java.nio.file.Path,java.io.OutputStream,com.android.tools.r8.ByteDataView):172:182 -> a
-    33:38:java.lang.String withNativeFileSeparators(java.lang.String):186:191 -> a
-    39:52:java.util.zip.ZipFile createZipFile(java.io.File,java.nio.charset.Charset):196:209 -> a
-    1:6:boolean isClassFile(java.nio.file.Path):49:54 -> b
-    1:2:boolean isClassesDexFile(java.nio.file.Path):141:142 -> c
+    1:6:boolean isClassFile(java.lang.String):49:54 -> a
+    7:11:boolean isArchive(java.nio.file.Path):87:91 -> a
+    12:12:java.lang.String readTextFile(java.nio.file.Path,java.nio.charset.Charset):95:95 -> a
+    13:13:void writeTextFile(java.nio.file.Path,java.util.List):103:103 -> a
+    14:14:void writeTextFile(java.nio.file.Path,java.lang.String[]):107:107 -> a
+    15:17:java.nio.file.Path validateOutputFile(java.nio.file.Path,com.android.tools.r8.utils.Reporter):112:114 -> a
+    18:18:void writeToFile(java.nio.file.Path,java.io.OutputStream,byte[]):176:176 -> a
+    19:20:void writeToFile(java.nio.file.Path,java.io.OutputStream,com.android.tools.r8.ByteDataView):181:182 -> a
+    21:25:java.io.OutputStream com.android.tools.r8.utils.FileUtils.openPathWithDefault(com.android.tools.r8.com.google.common.io.Closer,java.nio.file.Path,java.io.OutputStream,java.nio.file.OpenOption[]):140:144 -> a
+    21:25:void writeToFile(java.nio.file.Path,java.io.OutputStream,com.android.tools.r8.ByteDataView):183 -> a
+    26:27:void writeToFile(java.nio.file.Path,java.io.OutputStream,com.android.tools.r8.ByteDataView):190:191 -> a
+    28:38:void writeToFile(java.nio.file.Path,java.io.OutputStream,com.android.tools.r8.ByteDataView):181:191 -> a
+    39:52:java.util.zip.ZipFile createZipFile(java.io.File,java.nio.charset.Charset):205:218 -> a
+    1:1:boolean isClassFile(java.nio.file.Path):58:58 -> b
+    2:7:java.lang.String withNativeFileSeparators(java.lang.String):195:200 -> b
+    1:2:boolean isClassesDexFile(java.nio.file.Path):150:151 -> c
     3:3:boolean isClassesDexFile(java.nio.file.Path):0:0 -> c
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":161,"3":162}}
-    161:161:boolean isClassesDexFile(java.nio.file.Path):145:145 -> c
-    162:162:boolean isClassesDexFile(java.nio.file.Path):145:145 -> c
-    149:160:boolean isClassesDexFile(java.nio.file.Path):146:157 -> c
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":170,"3":171}}
+    170:170:boolean isClassesDexFile(java.nio.file.Path):154:154 -> c
+    171:171:boolean isClassesDexFile(java.nio.file.Path):154:154 -> c
+    158:169:boolean isClassesDexFile(java.nio.file.Path):155:166 -> c
     1:2:boolean isDexFile(java.nio.file.Path):39:40 -> d
-    1:2:boolean isJarFile(java.nio.file.Path):58:59 -> e
-    1:2:boolean isZipFile(java.nio.file.Path):63:64 -> f
-    1:1:java.util.List readAllLines(java.nio.file.Path):90:90 -> g
+    1:2:boolean isJarFile(java.nio.file.Path):62:63 -> e
+    1:2:boolean isJavaFile(java.nio.file.Path):82:83 -> f
+    1:2:boolean isZipFile(java.nio.file.Path):67:68 -> g
+    1:1:java.util.List readAllLines(java.nio.file.Path):99:99 -> h
 com.android.tools.r8.utils.FilteredArchiveClassFileProvider -> com.android.tools.r8.utils.y:
     1:1:void <init>(com.android.tools.r8.shaking.FilteredClassPath):13:13 -> <init>
 com.android.tools.r8.utils.FlagFile -> com.android.tools.r8.internal.Rk:
@@ -123514,7 +123482,7 @@
     1:2:com.android.tools.r8.utils.Int2StructuralItemArrayMap$Builder put(int,com.android.tools.r8.utils.structural.StructuralItem):88:89 -> a
     3:3:com.android.tools.r8.utils.Int2StructuralItemArrayMap build():98:98 -> a
     1:1:boolean isEmpty():94:94 -> b
-com.android.tools.r8.utils.IntBox -> com.android.tools.r8.internal.ot:
+com.android.tools.r8.utils.IntBox -> com.android.tools.r8.internal.pt:
     boolean $assertionsDisabled -> b
     int value -> a
     1:1:void <clinit>():7:7 -> <clinit>
@@ -123528,45 +123496,63 @@
     1:1:void increment():48:48 -> c
     2:3:void increment(int):52:53 -> c
     1:1:void set(int):57:57 -> d
-com.android.tools.r8.utils.IntObjConsumer -> com.android.tools.r8.internal.Ft:
+com.android.tools.r8.utils.IntObjConsumer -> com.android.tools.r8.internal.Gt:
     void accept(int,java.lang.Object) -> a
-com.android.tools.r8.utils.IntObjPredicate -> com.android.tools.r8.internal.Gt:
+com.android.tools.r8.utils.IntObjPredicate -> com.android.tools.r8.internal.Ht:
     boolean test(int,java.lang.Object) -> a
-com.android.tools.r8.utils.IntObjToObjFunction -> com.android.tools.r8.internal.Ht:
+com.android.tools.r8.utils.IntObjToObjFunction -> com.android.tools.r8.internal.It:
     java.lang.Object apply(int,java.lang.Object) -> a
-com.android.tools.r8.utils.InternalArchiveClassFileProvider -> com.android.tools.r8.utils.z:
+com.android.tools.r8.utils.InternalArchiveClassFileProvider -> com.android.tools.r8.utils.A:
     java.util.zip.ZipFile openedZipFile -> e
     java.nio.file.Path path -> b
     com.android.tools.r8.origin.Origin origin -> c
     java.util.Set descriptors -> d
     boolean $assertionsDisabled -> f
-    1:1:void <clinit>():39:39 -> <clinit>
-    1:1:void <init>(java.nio.file.Path):52:52 -> <init>
-    2:2:void <init>(java.nio.file.Path,java.util.function.Predicate):62:62 -> <init>
-    3:32:void <init>(java.nio.file.Path,java.util.function.Predicate):42:71 -> <init>
-    boolean lambda$new$0(java.lang.String) -> b
-    1:12:java.util.zip.ZipFile getOpenZipFile():101:112 -> c
-    1:2:void close():117:118 -> close
-    1:1:java.util.Set getClassDescriptors():78:78 -> getClassDescriptors
-    1:1:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):83:83 -> getProgramResource
-    2:3:java.util.zip.ZipEntry getZipEntryFromDescriptor(java.lang.String):122:123 -> getProgramResource
-    2:3:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):87 -> getProgramResource
-    4:9:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):88:93 -> getProgramResource
-    10:15:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):89:94 -> getProgramResource
-    16:24:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):88:96 -> getProgramResource
-    25:25:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):0:0 -> getProgramResource
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":124,"2":125,"3":126,"4":127,"5":128}}
-    124:124:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):96:96 -> getProgramResource
-    125:125:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):96:96 -> getProgramResource
-    126:126:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):96:96 -> getProgramResource
-    127:127:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):96:96 -> getProgramResource
-    128:128:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):96:96 -> getProgramResource
-    121:121:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):96:96 -> getProgramResource
-    122:122:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> getProgramResource
-    122:122:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,com.android.tools.r8.origin.Origin):30 -> getProgramResource
-    122:122:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):96 -> getProgramResource
-    123:123:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):96:96 -> getProgramResource
-com.android.tools.r8.utils.InternalOptions -> com.android.tools.r8.internal.pu:
+    1:1:void <clinit>():37:37 -> <clinit>
+    1:1:void <init>(java.nio.file.Path):50:50 -> <init>
+    2:2:void <init>(java.nio.file.Path,java.util.function.Predicate):60:60 -> <init>
+    3:32:void <init>(java.nio.file.Path,java.util.function.Predicate):40:69 -> <init>
+    1:1:com.android.tools.r8.origin.Origin access$100(com.android.tools.r8.utils.InternalArchiveClassFileProvider):37:37 -> a
+    2:2:java.util.zip.ZipEntry getZipEntryFromDescriptor(java.lang.String):142:142 -> a
+    2:2:java.util.zip.ZipEntry access$200(com.android.tools.r8.utils.InternalArchiveClassFileProvider,java.lang.String):37 -> a
+      # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
+    3:3:java.lang.String getZipEntryNameFromDescriptor(java.lang.String):138:138 -> a
+    3:3:java.util.zip.ZipEntry getZipEntryFromDescriptor(java.lang.String):142 -> a
+    3:3:java.util.zip.ZipEntry access$200(com.android.tools.r8.utils.InternalArchiveClassFileProvider,java.lang.String):37 -> a
+    4:4:java.util.zip.ZipEntry getZipEntryFromDescriptor(java.lang.String):142:142 -> a
+    4:4:java.util.zip.ZipEntry access$200(com.android.tools.r8.utils.InternalArchiveClassFileProvider,java.lang.String):37 -> a
+    1:1:java.util.zip.ZipFile access$300(com.android.tools.r8.utils.InternalArchiveClassFileProvider):37:37 -> b
+    2:2:java.lang.String getZipEntryNameFromDescriptor(java.lang.String):138:138 -> b
+    2:2:java.lang.String access$000(java.lang.String):37 -> b
+    boolean lambda$new$0(java.lang.String) -> c
+    1:12:java.util.zip.ZipFile getOpenZipFile():117:128 -> c
+    1:2:void close():133:134 -> close
+    1:1:java.util.Set getClassDescriptors():76:76 -> getClassDescriptors
+    1:4:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):81:84 -> getProgramResource
+com.android.tools.r8.utils.InternalArchiveClassFileProvider$1 -> com.android.tools.r8.utils.z:
+    com.android.tools.r8.origin.Origin entryOrigin -> a
+    com.android.tools.r8.utils.InternalArchiveClassFileProvider this$0 -> c
+    java.lang.String val$descriptor -> b
+    1:4:void <init>(com.android.tools.r8.utils.InternalArchiveClassFileProvider,java.lang.String):84:87 -> <init>
+    1:4:java.io.InputStream getByteStream():107:110 -> getByteStream
+    5:5:com.android.tools.r8.origin.Origin getOrigin():91:91 -> getByteStream
+    5:5:java.io.InputStream getByteStream():110 -> getByteStream
+    6:6:java.io.InputStream getByteStream():0:0 -> getByteStream
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":228,"2":229,"3":230}}
+    228:228:java.io.InputStream getByteStream():110:110 -> getByteStream
+    229:229:java.io.InputStream getByteStream():110:110 -> getByteStream
+    230:230:java.io.InputStream getByteStream():110:110 -> getByteStream
+    116:116:java.io.InputStream getByteStream():110:110 -> getByteStream
+    117:117:java.io.InputStream getByteStream():0:0 -> getByteStream
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":231,"2":232,"3":233}}
+    231:231:java.io.InputStream getByteStream():110:110 -> getByteStream
+    232:232:java.io.InputStream getByteStream():110:110 -> getByteStream
+    233:233:java.io.InputStream getByteStream():110:110 -> getByteStream
+    227:227:java.io.InputStream getByteStream():110:110 -> getByteStream
+    1:1:java.util.Set getClassDescriptors():101:101 -> getClassDescriptors
+    1:1:com.android.tools.r8.ProgramResource$Kind getKind():96:96 -> getKind
+    1:1:com.android.tools.r8.origin.Origin getOrigin():91:91 -> getOrigin
+com.android.tools.r8.utils.InternalOptions -> com.android.tools.r8.internal.qu:
     boolean hasMarker -> f0
     boolean enableStringSwitchConversion -> P
     boolean printTimes -> i
@@ -124115,10 +124101,10 @@
     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.ou:
+com.android.tools.r8.utils.InternalOptions$1 -> com.android.tools.r8.internal.pu:
     int[] $SwitchMap$com$android$tools$r8$utils$OffOrAuto -> a
     1:1:void <clinit>():1967:1967 -> <clinit>
-com.android.tools.r8.utils.InternalOptions$ApiModelTestingOptions -> com.android.tools.r8.internal.pu$a:
+com.android.tools.r8.utils.InternalOptions$ApiModelTestingOptions -> com.android.tools.r8.internal.qu$a:
     java.util.function.BiConsumer tracedMethodApiLevelCallback -> h
     boolean enableApiCallerIdentification -> a
     java.util.Map methodApiMapping -> e
@@ -124132,7 +124118,7 @@
     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):1613:1613 -> 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):1617:1617 -> 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):1621:1621 -> a
-com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions -> com.android.tools.r8.internal.pu$b:
+com.android.tools.r8.utils.InternalOptions$CallSiteOptimizationOptions -> com.android.tools.r8.internal.qu$b:
     com.android.tools.r8.utils.InternalOptions this$0 -> d
     boolean $assertionsDisabled -> e
     boolean enabled -> a
@@ -124149,7 +124135,7 @@
     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
-com.android.tools.r8.utils.InternalOptions$ClassInlinerOptions -> com.android.tools.r8.internal.pu$c:
+com.android.tools.r8.utils.InternalOptions$ClassInlinerOptions -> com.android.tools.r8.internal.qu$c:
     com.android.tools.r8.utils.InternalOptions this$0 -> b
     boolean $assertionsDisabled -> c
     int classInliningInstructionAllowance -> a
@@ -124162,13 +124148,13 @@
     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
-com.android.tools.r8.utils.InternalOptions$DesugarSpecificOptions -> com.android.tools.r8.internal.pu$d:
+com.android.tools.r8.utils.InternalOptions$DesugarSpecificOptions -> com.android.tools.r8.internal.qu$d:
     boolean sortMethodsOnCfOutput -> a
     boolean allowAllDesugaredInput -> b
     boolean noCfMarkerForDesugaredCode -> c
     boolean lambdaClassFieldsFinal -> d
     1:15:void <init>():1283:1297 -> <init>
-com.android.tools.r8.utils.InternalOptions$DesugarState -> com.android.tools.r8.internal.pu$e:
+com.android.tools.r8.utils.InternalOptions$DesugarState -> com.android.tools.r8.internal.qu$e:
     com.android.tools.r8.utils.InternalOptions$DesugarState OFF -> b
     com.android.tools.r8.utils.InternalOptions$DesugarState ON -> c
     com.android.tools.r8.utils.InternalOptions$DesugarState[] $VALUES -> d
@@ -124178,7 +124164,7 @@
     1:1:boolean isOff():131:131 -> a
     1:1:boolean isOn():135:135 -> b
     1:1:com.android.tools.r8.utils.InternalOptions$DesugarState[] values():126:126 -> values
-com.android.tools.r8.utils.InternalOptions$HorizontalClassMergerOptions -> com.android.tools.r8.internal.pu$f:
+com.android.tools.r8.utils.InternalOptions$HorizontalClassMergerOptions -> com.android.tools.r8.internal.qu$f:
     boolean enableSyntheticMerging -> e
     boolean restrictToSynthetics -> f
     com.android.tools.r8.utils.InternalOptions this$0 -> g
@@ -124203,7 +124189,7 @@
     1:1:void setEnableInterfaceMerging():1502:1502 -> i
     1:1:void setEnableInterfaceMergingInInitial():1506:1506 -> j
     1:1:void setRestrictToSynthetics():1514:1514 -> k
-com.android.tools.r8.utils.InternalOptions$InlinerOptions -> com.android.tools.r8.internal.pu$g:
+com.android.tools.r8.utils.InternalOptions$InlinerOptions -> com.android.tools.r8.internal.qu$g:
     boolean $assertionsDisabled -> m
     boolean enableInliningOfInvokesWithClassInitializationSideEffects -> i
     boolean enableInliningOfInvokesWithNullableReceivers -> j
@@ -124226,20 +124212,20 @@
     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
-com.android.tools.r8.utils.InternalOptions$InvalidParameterAnnotationInfo -> com.android.tools.r8.internal.qu:
+com.android.tools.r8.utils.InternalOptions$InvalidParameterAnnotationInfo -> com.android.tools.r8.internal.ru:
     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>
-com.android.tools.r8.utils.InternalOptions$KotlinOptimizationOptions -> com.android.tools.r8.internal.ru:
+com.android.tools.r8.utils.InternalOptions$KotlinOptimizationOptions -> com.android.tools.r8.internal.su:
     boolean disableKotlinSpecificOptimizations -> a
     1:3:void <init>():1276:1278 -> <init>
-com.android.tools.r8.utils.InternalOptions$LineNumberOptimization -> com.android.tools.r8.internal.pu$h:
+com.android.tools.r8.utils.InternalOptions$LineNumberOptimization -> com.android.tools.r8.internal.qu$h:
     com.android.tools.r8.utils.InternalOptions$LineNumberOptimization OFF -> b
     com.android.tools.r8.utils.InternalOptions$LineNumberOptimization ON -> c
     1:2:void <clinit>():122:123 -> <clinit>
     1:1:void <init>(java.lang.String,int):121:121 -> <init>
-com.android.tools.r8.utils.InternalOptions$OpenClosedInterfacesOptions -> com.android.tools.r8.internal.pu$i:
+com.android.tools.r8.utils.InternalOptions$OpenClosedInterfacesOptions -> com.android.tools.r8.internal.qu$i:
     java.util.List suppressions -> b
     boolean allowOpenInterfaces -> a
     boolean $assertionsDisabled -> c
@@ -124258,22 +124244,22 @@
     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
-com.android.tools.r8.utils.InternalOptions$OpenClosedInterfacesOptions$OpenInterfaceWitnessSuppression -> com.android.tools.r8.internal.su:
+com.android.tools.r8.utils.InternalOptions$OpenClosedInterfacesOptions$OpenInterfaceWitnessSuppression -> com.android.tools.r8.internal.tu:
     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.pu$j:
+com.android.tools.r8.utils.InternalOptions$OutlineOptions -> com.android.tools.r8.internal.qu$j:
     int threshold -> d
     boolean enabled -> a
     int minSize -> b
     int maxSize -> c
     1:5:void <init>():1268:1272 -> <init>
-com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode -> com.android.tools.r8.internal.pu$k:
+com.android.tools.r8.utils.InternalOptions$PackageObfuscationMode -> com.android.tools.r8.internal.qu$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>
-com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions -> com.android.tools.r8.internal.pu$l:
+com.android.tools.r8.utils.InternalOptions$ProtoShrinkingOptions -> com.android.tools.r8.internal.qu$l:
     boolean enableEnumLiteProtoShrinking -> e
     boolean enableGeneratedExtensionRegistryShrinking -> a
     boolean enableGeneratedMessageLiteShrinking -> b
@@ -124283,7 +124269,7 @@
     1:1:boolean enableRemoveProtoEnumSwitchMap():1650:1650 -> a
     1:1:boolean isEnumLiteProtoShrinkingEnabled():1661:1661 -> b
     1:1:boolean isProtoShrinkingEnabled():1654:1654 -> c
-com.android.tools.r8.utils.InternalOptions$TestingOptions -> com.android.tools.r8.internal.pu$m:
+com.android.tools.r8.utils.InternalOptions$TestingOptions -> com.android.tools.r8.internal.qu$m:
     boolean enableTestAssertions -> d0
     java.util.function.BiConsumer horizontallyMergedClassesConsumer -> i
     int basicBlockMuncherIterationLimit -> O
@@ -124366,20 +124352,20 @@
     1:1:void setDeterminismChecker(com.android.tools.r8.utils.DeterminismChecker):1671:1671 -> a
     2:10:void checkDeterminism(com.android.tools.r8.graph.AppView):1676:1684 -> a
     11:11:void allowExperimentClassFileVersion(com.android.tools.r8.utils.InternalOptions):1689:1689 -> a
-com.android.tools.r8.utils.InternalOptions$TestingOptions$MinifierTestingOptions -> com.android.tools.r8.internal.pu$m$a:
+com.android.tools.r8.utils.InternalOptions$TestingOptions$MinifierTestingOptions -> com.android.tools.r8.internal.qu$m$a:
     java.util.Comparator interfaceMethodOrdering -> 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.pu$m$b:
+com.android.tools.r8.utils.InternalOptions$TestingOptions$ProguardIfRuleEvaluationData -> com.android.tools.r8.internal.qu$m$b:
     int numberOfProguardIfRuleMemberEvaluations -> b
     int numberOfProguardIfRuleClassEvaluations -> a
     1:4:void <init>():1852:1855 -> <init>
-com.android.tools.r8.utils.InternalOptions$TypeVersionPair -> com.android.tools.r8.internal.tu:
+com.android.tools.r8.utils.InternalOptions$TypeVersionPair -> com.android.tools.r8.internal.uu:
     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>
-com.android.tools.r8.utils.InternalOutputMode -> com.android.tools.r8.internal.uu:
+com.android.tools.r8.utils.InternalOutputMode -> com.android.tools.r8.internal.vu:
     com.android.tools.r8.utils.InternalOutputMode ClassFile -> d
     com.android.tools.r8.utils.InternalOutputMode DexIndexed -> b
     com.android.tools.r8.utils.InternalOutputMode DexFilePerClassFile -> c
@@ -124387,7 +124373,7 @@
     1:1:void <init>(java.lang.String,int):7:7 -> <init>
     1:1:boolean isGeneratingClassFiles():13:13 -> a
     1:1:boolean isGeneratingDex():17:17 -> b
-com.android.tools.r8.utils.IterableUtils -> com.android.tools.r8.internal.ev:
+com.android.tools.r8.utils.IterableUtils -> com.android.tools.r8.internal.fv:
     1:7:boolean allIdentical(java.lang.Iterable,java.util.function.Function):27:33 -> a
     8:9:boolean any(java.lang.Iterable,java.util.function.Function,java.util.function.Predicate):43:44 -> a
     10:10:java.lang.Iterable filter(java.lang.Iterable,java.util.function.Predicate):92:92 -> a
@@ -124409,7 +124395,7 @@
     1:1:java.util.Iterator lambda$filter$0(java.lang.Iterable,java.util.function.Predicate):92:92 -> d
     2:2:java.util.Iterator com.android.tools.r8.utils.IteratorUtils.filter(java.util.Iterator,java.util.function.Predicate):49:49 -> d
     2:2:java.util.Iterator lambda$filter$0(java.lang.Iterable,java.util.function.Predicate):92 -> d
-com.android.tools.r8.utils.IteratorUtils -> com.android.tools.r8.internal.nv:
+com.android.tools.r8.utils.IteratorUtils -> com.android.tools.r8.internal.ov:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():18:18 -> <clinit>
     1:2:java.util.Iterator createCircularIterator(java.lang.Iterable):21:22 -> a
@@ -124422,12 +124408,12 @@
     1:3:java.lang.Object nextUntil(java.util.Iterator,java.util.function.Predicate):82:84 -> b
     4:6:java.lang.Object peekPrevious(java.util.ListIterator):92:94 -> b
     7:13:java.lang.Object previousUntil(java.util.ListIterator,java.util.function.Predicate):109:115 -> b
-com.android.tools.r8.utils.IteratorUtils$1 -> com.android.tools.r8.internal.lv:
+com.android.tools.r8.utils.IteratorUtils$1 -> com.android.tools.r8.internal.mv:
     java.util.Iterator iterator -> b
     java.lang.Iterable val$iterable -> c
     1:3:void <init>(java.lang.Iterable):22:24 -> <init>
     1:4:java.lang.Object next():33:36 -> next
-com.android.tools.r8.utils.IteratorUtils$2 -> com.android.tools.r8.internal.mv:
+com.android.tools.r8.utils.IteratorUtils$2 -> com.android.tools.r8.internal.nv:
     java.util.Iterator val$iterator -> c
     java.lang.Object next -> b
     java.util.function.Predicate val$predicate -> d
@@ -124436,7 +124422,7 @@
     1:3:java.lang.Object advance():55:57 -> j
     1:5:java.lang.Object next():71:75 -> next
     6:6:java.lang.Object next():73:73 -> next
-com.android.tools.r8.utils.JoiningStringConsumer -> com.android.tools.r8.internal.Mv:
+com.android.tools.r8.utils.JoiningStringConsumer -> com.android.tools.r8.internal.Nv:
     com.android.tools.r8.StringConsumer consumer -> c
     java.lang.String separator -> b
     java.lang.StringBuilder builder -> d
@@ -124445,7 +124431,7 @@
     1:1:com.android.tools.r8.StringConsumer getConsumer():42:42 -> a
     1:4:void accept(java.lang.String,com.android.tools.r8.DiagnosticsHandler):29:32 -> accept
     1:2:void finished(com.android.tools.r8.DiagnosticsHandler):37:38 -> finished
-com.android.tools.r8.utils.LRUCacheTable -> com.android.tools.r8.internal.FA:
+com.android.tools.r8.utils.LRUCacheTable -> com.android.tools.r8.internal.GA:
     int rowCapacity -> b
     int columnCapacity -> c
     1:3:void <init>(int,int,float):31:33 -> <init>
@@ -124453,15 +124439,15 @@
     2:3:java.lang.Object put(java.lang.Object,java.lang.Object,java.lang.Object):46:47 -> a
     1:1:com.android.tools.r8.utils.LRUCacheTable create(int,int):37:37 -> f
     1:1:boolean removeEldestEntry(java.util.Map$Entry):42:42 -> removeEldestEntry
-com.android.tools.r8.utils.LRUCacheTable$LRUCacheRow -> com.android.tools.r8.internal.EA:
+com.android.tools.r8.utils.LRUCacheTable$LRUCacheRow -> com.android.tools.r8.internal.FA:
     int columnCapacity -> b
     1:2:void <init>(int,float):17:18 -> <init>
     1:1:boolean removeEldestEntry(java.util.Map$Entry):23:23 -> removeEldestEntry
-com.android.tools.r8.utils.LazyBox -> com.android.tools.r8.internal.eB:
+com.android.tools.r8.utils.LazyBox -> com.android.tools.r8.internal.fB:
     java.util.function.Supplier supplier -> b
     1:2:void <init>(java.util.function.Supplier):13:14 -> <init>
     1:1:java.lang.Object computeIfAbsent():18:18 -> d
-com.android.tools.r8.utils.LebUtils -> com.android.tools.r8.internal.jB:
+com.android.tools.r8.utils.LebUtils -> com.android.tools.r8.internal.kB:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():10:10 -> <clinit>
     1:6:int parseSleb128(com.android.tools.r8.dex.BinaryReader):65:70 -> a
@@ -124472,7 +124458,7 @@
     17:21:void putUleb128(com.android.tools.r8.dex.DexOutputBuffer,int):48:52 -> b
     1:1:int sizeAsSleb128(int):110:110 -> c
     1:1:int sizeAsUleb128(int):57:57 -> d
-com.android.tools.r8.utils.LensUtils -> com.android.tools.r8.internal.vB:
+com.android.tools.r8.utils.LensUtils -> com.android.tools.r8.internal.wB:
     1:1:com.android.tools.r8.graph.DexReference com.android.tools.r8.graph.GraphLens.rewriteReference(com.android.tools.r8.graph.DexReference):640:640 -> a
     1:1:void rewriteAndApplyIfNotPrimitiveType(com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.DexReference,java.util.function.Consumer):28 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
@@ -124480,7 +124466,7 @@
     3:3:boolean com.android.tools.r8.graph.DexReference.isDexType():0:0 -> a
     3:3:void rewriteAndApplyIfNotPrimitiveType(com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.DexReference,java.util.function.Consumer):31 -> a
     4:7:void rewriteAndApplyIfNotPrimitiveType(com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.DexReference,java.util.function.Consumer):31:34 -> a
-com.android.tools.r8.utils.LibraryClassCollection -> com.android.tools.r8.internal.xB:
+com.android.tools.r8.utils.LibraryClassCollection -> com.android.tools.r8.internal.yB:
     1:1:void <init>(com.android.tools.r8.utils.ClassProvider):15:15 -> <init>
     1:1:java.util.function.Supplier getTransparentSupplier(com.android.tools.r8.graph.DexClass):13:13 -> a
     2:2:com.android.tools.r8.graph.DexClass resolveClassConflict(com.android.tools.r8.graph.DexClass,com.android.tools.r8.graph.DexClass):13:13 -> a
@@ -124495,7 +124481,7 @@
     42:42:java.lang.String toString():39:39 -> toString
     43:43:java.lang.String toString():39:39 -> toString
     40:40:java.lang.String toString():39:39 -> toString
-com.android.tools.r8.utils.LineNumberOptimizer -> com.android.tools.r8.internal.dC:
+com.android.tools.r8.utils.LineNumberOptimizer -> com.android.tools.r8.internal.eC:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():91:91 -> <clinit>
     1:1:com.android.tools.r8.errors.Unreachable com.android.tools.r8.errors.Unreachable.raise(java.lang.Object[]):16:16 -> a
@@ -124511,10 +124497,10 @@
     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):269:269 -> a
+    40:40:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268:268 -> a
     40:40: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):494 -> a
-    41:41:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):265:265 -> a
-    41:41:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):269 -> a
+    41:41:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexType):264:264 -> a
+    41:41:boolean com.android.tools.r8.synthesis.SyntheticItems.isSyntheticClass(com.android.tools.r8.graph.DexProgramClass):268 -> a
     41:41: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):494 -> a
     42:72: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):497:527 -> a
     73:73: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):526:526 -> a
@@ -124695,7 +124681,7 @@
     1:1:void lambda$run$3(java.lang.Object):631 -> d
     1:1:com.android.tools.r8.errors.Unreachable com.android.tools.r8.errors.Unreachable.raise(java.lang.Object[]):16:16 -> e
     1:1:void lambda$run$8(java.lang.Object):715 -> e
-com.android.tools.r8.utils.LineNumberOptimizer$1 -> com.android.tools.r8.internal.RB:
+com.android.tools.r8.utils.LineNumberOptimizer$1 -> com.android.tools.r8.internal.SB:
     java.util.List val$processedEvents -> o
     boolean $assertionsDisabled -> p
     int emittedPc -> j
@@ -124718,7 +124704,7 @@
     23:23:void visit(com.android.tools.r8.graph.DexDebugEvent$SetFile):1045:1045 -> a
     24:24:void visit(com.android.tools.r8.graph.DexDebugEvent$SetPrologueEnd):1050:1050 -> a
     25:25:void visit(com.android.tools.r8.graph.DexDebugEvent$SetEpilogueBegin):1055:1055 -> a
-com.android.tools.r8.utils.LineNumberOptimizer$2 -> com.android.tools.r8.internal.SB:
+com.android.tools.r8.utils.LineNumberOptimizer$2 -> com.android.tools.r8.internal.TB:
     boolean $assertionsDisabled -> n
     com.android.tools.r8.utils.LineNumberOptimizer$PositionRemapper val$positionRemapper -> l
     com.android.tools.r8.utils.BooleanBox val$singleOriginalLine -> k
@@ -124728,13 +124714,13 @@
     1:1:void <init>(int,com.android.tools.r8.graph.DexMethod,com.android.tools.r8.utils.Pair,com.android.tools.r8.utils.BooleanBox,com.android.tools.r8.utils.LineNumberOptimizer$PositionRemapper,java.util.List):1146:1146 -> <init>
     1:12:void visit(com.android.tools.r8.graph.DexDebugEvent$Default):1149:1160 -> a
     13:22:void visit(com.android.tools.r8.graph.DexDebugEvent$Default):1157:1166 -> a
-com.android.tools.r8.utils.LineNumberOptimizer$IdentityPositionRemapper -> com.android.tools.r8.internal.TB:
+com.android.tools.r8.utils.LineNumberOptimizer$IdentityPositionRemapper -> com.android.tools.r8.internal.UB:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():101:101 -> <clinit>
     1:1:void <init>():101:101 -> <init>
     2:2:void <init>(com.android.tools.r8.utils.LineNumberOptimizer$1):101:101 -> <init>
     1:2:com.android.tools.r8.utils.Pair createRemappedPosition(com.android.tools.r8.ir.code.Position):106:107 -> a
-com.android.tools.r8.utils.LineNumberOptimizer$KotlinInlineFunctionPositionRemapper -> com.android.tools.r8.internal.UB:
+com.android.tools.r8.utils.LineNumberOptimizer$KotlinInlineFunctionPositionRemapper -> com.android.tools.r8.internal.VB:
     com.android.tools.r8.graph.DexItemFactory factory -> b
     com.android.tools.r8.kotlin.KotlinSourceDebugExtensionParser$Result parsedData -> g
     java.util.Map parsedKotlinSourceDebugExtensions -> c
@@ -124761,7 +124747,7 @@
     42:52:com.android.tools.r8.utils.Pair createRemappedPosition(com.android.tools.r8.ir.code.Position):194:204 -> a
     53:75:com.android.tools.r8.utils.Pair createRemappedPosition(com.android.tools.r8.ir.code.Position):201:223 -> a
     76:88:com.android.tools.r8.utils.Pair createRemappedPosition(com.android.tools.r8.ir.code.Position):218:230 -> a
-com.android.tools.r8.utils.LineNumberOptimizer$MappedPosition -> com.android.tools.r8.internal.VB:
+com.android.tools.r8.utils.LineNumberOptimizer$MappedPosition -> com.android.tools.r8.internal.WB:
     boolean isOutline -> e
     com.android.tools.r8.graph.DexMethod outlineCallee -> f
     int obfuscatedLine -> d
@@ -124779,7 +124765,7 @@
     1:1:com.android.tools.r8.ir.code.Position access$700(com.android.tools.r8.utils.LineNumberOptimizer$MappedPosition):301:301 -> e
     1:1:com.android.tools.r8.graph.DexMethod access$800(com.android.tools.r8.utils.LineNumberOptimizer$MappedPosition):301:301 -> f
     1:1:com.android.tools.r8.utils.Int2StructuralItemArrayMap access$900(com.android.tools.r8.utils.LineNumberOptimizer$MappedPosition):301:301 -> g
-com.android.tools.r8.utils.LineNumberOptimizer$NativePcSupport -> com.android.tools.r8.internal.WB:
+com.android.tools.r8.utils.LineNumberOptimizer$NativePcSupport -> com.android.tools.r8.internal.XB:
     1:1:void <init>():446:446 -> <init>
     2:2:void <init>(com.android.tools.r8.utils.LineNumberOptimizer$1):446:446 -> <init>
     void updateDebugInfoInCodeObjects() -> a
@@ -124787,7 +124773,7 @@
     2:2:void com.android.tools.r8.utils.LineNumberOptimizer$NativePcSupport.recordSingleLineFor(com.android.tools.r8.graph.DexCode,int):457:457 -> a
     2:2:void recordSingleLineFor(com.android.tools.r8.graph.DexCode,int,int):462 -> a
     1:1:void recordPcMappingFor(com.android.tools.r8.graph.DexCode,int,int):451:451 -> b
-com.android.tools.r8.utils.LineNumberOptimizer$OptimizingPositionRemapper -> com.android.tools.r8.internal.XB:
+com.android.tools.r8.utils.LineNumberOptimizer$OptimizingPositionRemapper -> com.android.tools.r8.internal.YB:
     boolean $assertionsDisabled -> e
     int nextOptimizedLineNumber -> d
     com.android.tools.r8.graph.DexMethod previousMethod -> b
@@ -124797,7 +124783,7 @@
     1:1:void <init>(com.android.tools.r8.utils.InternalOptions):117:117 -> <init>
     2:10:void <init>(com.android.tools.r8.utils.InternalOptions):113:121 -> <init>
     1:18:com.android.tools.r8.utils.Pair createRemappedPosition(com.android.tools.r8.ir.code.Position):126:143 -> a
-com.android.tools.r8.utils.LineNumberOptimizer$OutlineFixupBuilder -> com.android.tools.r8.internal.YB:
+com.android.tools.r8.utils.LineNumberOptimizer$OutlineFixupBuilder -> com.android.tools.r8.internal.ZB:
     java.util.List mappedOutlineCalleePositions -> b
     java.util.List mappedOutlinePositions -> a
     boolean $assertionsDisabled -> c
@@ -124818,7 +124804,7 @@
     28:30:int com.android.tools.r8.utils.LineNumberOptimizer$OutlineFixupBuilder.getMinifiedLinePosition(int,java.util.List):1323:1325 -> a
     28:30:void lambda$fixup$0(com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2IntSortedMap,java.lang.Integer,java.lang.Integer):1311 -> a
     31:31:void lambda$fixup$0(com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2IntSortedMap,java.lang.Integer,java.lang.Integer):1313:1313 -> a
-com.android.tools.r8.utils.LineNumberOptimizer$Pc2PcMappingSupport -> com.android.tools.r8.internal.ZB:
+com.android.tools.r8.utils.LineNumberOptimizer$Pc2PcMappingSupport -> com.android.tools.r8.internal.aC:
     java.util.List codesToUpdate -> b
     com.android.tools.r8.it.unimi.dsi.fastutil.ints.Int2IntMap paramToMaxPc -> a
     java.util.List singleLineCodesToClear -> c
@@ -124840,12 +124826,12 @@
     40:40:com.android.tools.r8.graph.DexDebugInfo lambda$updateDebugInfoInCodeObjects$0(int,java.lang.Integer):433 -> a
     41:41:void lambda$updateDebugInfoInCodeObjects$2(com.android.tools.r8.graph.DexCode):437:437 -> a
     1:4:void recordPcMappingFor(com.android.tools.r8.graph.DexCode,int,int):396:399 -> b
-com.android.tools.r8.utils.LineNumberOptimizer$PcBasedDebugInfoRecorder -> com.android.tools.r8.internal.aC:
+com.android.tools.r8.utils.LineNumberOptimizer$PcBasedDebugInfoRecorder -> com.android.tools.r8.internal.bC:
     void recordSingleLineFor(com.android.tools.r8.graph.DexCode,int) -> a
     void recordSingleLineFor(com.android.tools.r8.graph.DexCode,int,int) -> a
     void updateDebugInfoInCodeObjects() -> a
     void recordPcMappingFor(com.android.tools.r8.graph.DexCode,int,int) -> b
-com.android.tools.r8.utils.LineNumberOptimizer$PositionEventEmitter -> com.android.tools.r8.internal.bC:
+com.android.tools.r8.utils.LineNumberOptimizer$PositionEventEmitter -> com.android.tools.r8.internal.cC:
     java.util.List processedEvents -> f
     int previousPc -> d
     boolean $assertionsDisabled -> g
@@ -124877,9 +124863,9 @@
     21:21:int com.android.tools.r8.utils.LineNumberOptimizer$PositionEventEmitter.getStartLine():296:296 -> a
     21:21:int access$1600(com.android.tools.r8.utils.LineNumberOptimizer$PositionEventEmitter):257 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-com.android.tools.r8.utils.LineNumberOptimizer$PositionRemapper -> com.android.tools.r8.internal.cC:
+com.android.tools.r8.utils.LineNumberOptimizer$PositionRemapper -> com.android.tools.r8.internal.dC:
     com.android.tools.r8.utils.Pair createRemappedPosition(com.android.tools.r8.ir.code.Position) -> a
-com.android.tools.r8.utils.ListUtils -> com.android.tools.r8.internal.pC:
+com.android.tools.r8.utils.ListUtils -> com.android.tools.r8.internal.qC:
     1:2:java.util.List flatMap(java.util.List,java.util.function.Function):52:53 -> a
     3:3:void lambda$flatMap$0(java.util.List,java.util.function.Function,java.lang.Object):53:53 -> a
     4:5:java.util.List filter(java.util.Collection,java.util.function.Predicate):58:59 -> a
@@ -124903,8 +124889,8 @@
     1:2:int firstIndexMatching(java.util.List,java.util.function.Predicate):78:79 -> c
     1:2:int lastIndexMatching(java.util.List,java.util.function.Predicate):91:92 -> d
     1:3:int uniqueIndexMatching(java.util.List,java.util.function.Predicate):284:286 -> e
-com.android.tools.r8.utils.ListUtils$ReferenceAndIntConsumer -> com.android.tools.r8.internal.oC:
-com.android.tools.r8.utils.LongInterval -> com.android.tools.r8.internal.cD:
+com.android.tools.r8.utils.ListUtils$ReferenceAndIntConsumer -> com.android.tools.r8.internal.pC:
+com.android.tools.r8.utils.LongInterval -> com.android.tools.r8.internal.dD:
     long max -> b
     long min -> a
     boolean $assertionsDisabled -> c
@@ -124925,7 +124911,7 @@
     77:77:java.lang.String toString():74:74 -> toString
     78:78:java.lang.String toString():74:74 -> toString
     75:75:java.lang.String toString():74:74 -> toString
-com.android.tools.r8.utils.MainDexListParser -> com.android.tools.r8.internal.zD:
+com.android.tools.r8.utils.MainDexListParser -> com.android.tools.r8.internal.AD:
     1:1:com.android.tools.r8.graph.DexType parseEntry(java.lang.String,com.android.tools.r8.graph.DexItemFactory):21:21 -> a
     2:2:com.android.tools.r8.graph.DexType parseEntry(java.lang.String,com.android.tools.r8.graph.DexItemFactory):0:0 -> a
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":41,"3":42}}
@@ -124961,7 +124947,7 @@
     76:76:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String,java.lang.Throwable,com.android.tools.r8.origin.Origin):38:38 -> a
     76:76:java.util.Set parseList(com.android.tools.r8.StringResource,com.android.tools.r8.graph.DexItemFactory):37 -> a
     77:77:java.util.Set parseList(com.android.tools.r8.StringResource,com.android.tools.r8.graph.DexItemFactory):37:37 -> a
-com.android.tools.r8.utils.MapIdTemplateProvider -> com.android.tools.r8.internal.BD:
+com.android.tools.r8.utils.MapIdTemplateProvider -> com.android.tools.r8.internal.CD:
     java.util.Map HANDLERS -> c
     java.lang.String template -> a
     java.lang.String cachedValue -> b
@@ -124986,7 +124972,7 @@
     57:63:com.android.tools.r8.MapIdProvider create(java.lang.String,com.android.tools.r8.DiagnosticsHandler):45:51 -> a
     69:69:void lambda$get$0(com.android.tools.r8.MapIdEnvironment,java.lang.String,com.android.tools.r8.MapIdProvider):67:67 -> a
     1:8:java.lang.String get(com.android.tools.r8.MapIdEnvironment):63:70 -> get
-com.android.tools.r8.utils.MapUtils -> com.android.tools.r8.internal.ED:
+com.android.tools.r8.utils.MapUtils -> com.android.tools.r8.internal.FD:
     1:1:java.util.Map clone(java.util.Map,java.util.Map,java.util.function.Function):26:26 -> a
     2:2:void lambda$clone$0(java.util.Map,java.util.function.Function,java.lang.Object,java.lang.Object):26:26 -> a
     3:3:java.util.function.Function ignoreKey(java.util.function.Supplier):39:39 -> a
@@ -125004,7 +124990,7 @@
     2:2:java.lang.String toString(java.util.Map):58:58 -> b
     3:3:java.lang.String toString(java.util.Map):57:57 -> b
     4:4:java.lang.Object lambda$transform$6(java.util.function.Function,java.lang.Object,java.lang.Object):71:71 -> b
-com.android.tools.r8.utils.MethodJavaSignatureEquivalence -> com.android.tools.r8.internal.ME:
+com.android.tools.r8.utils.MethodJavaSignatureEquivalence -> com.android.tools.r8.internal.NE:
     com.android.tools.r8.utils.MethodJavaSignatureEquivalence INSTANCE_IGNORE_NAME -> c
     com.android.tools.r8.utils.MethodJavaSignatureEquivalence INSTANCE -> b
     boolean ignoreName -> a
@@ -125018,7 +125004,7 @@
     7:10:int doHash(java.lang.Object):15 -> a
     11:11:com.android.tools.r8.utils.MethodJavaSignatureEquivalence get():30:30 -> a
     1:1:com.android.tools.r8.utils.MethodJavaSignatureEquivalence getEquivalenceIgnoreName():34:34 -> b
-com.android.tools.r8.utils.MethodReferenceUtils -> com.android.tools.r8.internal.bF:
+com.android.tools.r8.utils.MethodReferenceUtils -> com.android.tools.r8.internal.cF:
     int $r8$clinit -> b
     java.util.Comparator COMPARATOR -> a
     1:1:void <clinit>():24:24 -> <clinit>
@@ -125064,7 +125050,7 @@
     22:22:int com.android.tools.r8.utils.CompareResult.getComparisonResult():21:21 -> b
     22:22:int lambda$static$0(com.android.tools.r8.references.MethodReference,com.android.tools.r8.references.MethodReference):52 -> b
     23:23:int lambda$static$0(com.android.tools.r8.references.MethodReference,com.android.tools.r8.references.MethodReference):55:55 -> b
-com.android.tools.r8.utils.MethodSignatureEquivalence -> com.android.tools.r8.internal.dF:
+com.android.tools.r8.utils.MethodSignatureEquivalence -> com.android.tools.r8.internal.eF:
     com.android.tools.r8.utils.MethodSignatureEquivalence INSTANCE -> a
     1:1:void <clinit>():16:16 -> <clinit>
     1:1:void <init>(boolean):23:23 -> <init>
@@ -125075,10 +125061,10 @@
     4:4:int com.android.tools.r8.utils.MethodSignatureEquivalence.doHash(com.android.tools.r8.graph.DexMethod):48:48 -> a
     4:4:int doHash(java.lang.Object):14 -> a
     5:5:com.android.tools.r8.utils.MethodSignatureEquivalence get():28:28 -> a
-com.android.tools.r8.utils.ObjectUtils -> com.android.tools.r8.internal.AK:
+com.android.tools.r8.utils.ObjectUtils -> com.android.tools.r8.internal.BK:
     1:1:boolean getBooleanOrElse(java.lang.Object,java.util.function.Predicate,boolean):14:14 -> a
     2:2:java.lang.Object mapNotNullOrDefault(java.lang.Object,java.lang.Object,java.util.function.Function):31:31 -> a
-com.android.tools.r8.utils.OffOrAuto -> com.android.tools.r8.internal.FK:
+com.android.tools.r8.utils.OffOrAuto -> com.android.tools.r8.internal.GK:
     com.android.tools.r8.utils.OffOrAuto Auto -> c
     com.android.tools.r8.utils.OffOrAuto Off -> b
     com.android.tools.r8.utils.OffOrAuto[] $VALUES -> d
@@ -125086,7 +125072,7 @@
     2:2:void <clinit>():10:10 -> <clinit>
     1:1:void <init>(java.lang.String,int):10:10 -> <init>
     1:1:com.android.tools.r8.utils.OffOrAuto[] values():10:10 -> a
-com.android.tools.r8.utils.OneShotByteResource -> com.android.tools.r8.utils.A:
+com.android.tools.r8.utils.OneShotByteResource -> com.android.tools.r8.utils.B:
     com.android.tools.r8.origin.Origin origin -> a
     java.util.Set classDescriptors -> d
     boolean $assertionsDisabled -> e
@@ -125100,7 +125086,7 @@
     1:1:java.util.Set getClassDescriptors():59:59 -> getClassDescriptors
     1:1:com.android.tools.r8.ProgramResource$Kind getKind():41:41 -> getKind
     1:1:com.android.tools.r8.origin.Origin getOrigin():36:36 -> getOrigin
-com.android.tools.r8.utils.OptionalBool -> com.android.tools.r8.internal.YK:
+com.android.tools.r8.utils.OptionalBool -> com.android.tools.r8.internal.ZK:
     com.android.tools.r8.utils.OptionalBool UNKNOWN -> c
     com.android.tools.r8.utils.OptionalBool TRUE -> a
     com.android.tools.r8.utils.OptionalBool FALSE -> b
@@ -125109,22 +125095,22 @@
     1:1:com.android.tools.r8.utils.OptionalBool of(boolean):69:69 -> a
     int ordinal() -> f
     1:1:int hashCode():88:88 -> hashCode
-com.android.tools.r8.utils.OptionalBool$1 -> com.android.tools.r8.internal.VK:
+com.android.tools.r8.utils.OptionalBool$1 -> com.android.tools.r8.internal.WK:
     1:1:void <init>():10:10 -> <init>
     boolean isTrue() -> d
     int ordinal() -> f
     1:1:java.lang.String toString():24:24 -> toString
-com.android.tools.r8.utils.OptionalBool$2 -> com.android.tools.r8.internal.WK:
+com.android.tools.r8.utils.OptionalBool$2 -> com.android.tools.r8.internal.XK:
     1:1:void <init>():29:29 -> <init>
     boolean isFalse() -> a
     int ordinal() -> f
     1:1:java.lang.String toString():43:43 -> toString
-com.android.tools.r8.utils.OptionalBool$3 -> com.android.tools.r8.internal.XK:
+com.android.tools.r8.utils.OptionalBool$3 -> com.android.tools.r8.internal.YK:
     1:1:void <init>():48:48 -> <init>
     boolean isUnknown() -> e
     int ordinal() -> f
     1:1:java.lang.String toString():62:62 -> toString
-com.android.tools.r8.utils.OptionsParsing -> com.android.tools.r8.internal.bL:
+com.android.tools.r8.utils.OptionsParsing -> com.android.tools.r8.internal.cL:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():10:10 -> <clinit>
     1:13:java.lang.String tryParseSingle(com.android.tools.r8.utils.OptionsParsing$ParseContext,java.lang.String,java.lang.String):37:49 -> a
@@ -125138,14 +125124,14 @@
     96:96:java.lang.Boolean tryParseBoolean(com.android.tools.r8.utils.OptionsParsing$ParseContext,java.lang.String):65:65 -> a
     91:93:java.lang.Boolean tryParseBoolean(com.android.tools.r8.utils.OptionsParsing$ParseContext,java.lang.String):65:67 -> a
     1:11:java.util.List tryParseMulti(com.android.tools.r8.utils.OptionsParsing$ParseContext,java.lang.String):18:28 -> b
-com.android.tools.r8.utils.OptionsParsing$ParseContext -> com.android.tools.r8.internal.aL:
+com.android.tools.r8.utils.OptionsParsing$ParseContext -> com.android.tools.r8.internal.bL:
     java.lang.String[] args -> a
     int nextIndex -> b
     1:1:void <init>(java.lang.String[]):76:76 -> <init>
     2:5:void <init>(java.lang.String[]):74:77 -> <init>
     1:1:java.lang.String head():81:81 -> a
     1:5:java.lang.String next():85:89 -> b
-com.android.tools.r8.utils.OriginWithPosition -> com.android.tools.r8.internal.gL:
+com.android.tools.r8.utils.OriginWithPosition -> com.android.tools.r8.internal.hL:
     com.android.tools.r8.origin.Origin origin -> a
     com.android.tools.r8.position.Position position -> b
     1:3:void <init>(com.android.tools.r8.origin.Origin,com.android.tools.r8.position.Position):14:16 -> <init>
@@ -125153,7 +125139,7 @@
     1:1:com.android.tools.r8.position.Position getPosition():24:24 -> b
     1:3:boolean equals(java.lang.Object):34:36 -> equals
     1:1:int hashCode():29:29 -> hashCode
-com.android.tools.r8.utils.OriginalSourceFiles -> com.android.tools.r8.internal.kL:
+com.android.tools.r8.utils.OriginalSourceFiles -> com.android.tools.r8.internal.lL:
     com.android.tools.r8.utils.OriginalSourceFiles UNREACHABLE -> a
     com.android.tools.r8.utils.OriginalSourceFiles FROM_CLASSES -> b
     1:9:void <clinit>():15:23 -> <clinit>
@@ -125162,17 +125148,17 @@
     1:1:com.android.tools.r8.utils.OriginalSourceFiles fromClasses():38:38 -> a
     2:2:com.android.tools.r8.utils.OriginalSourceFiles fromMap(java.util.Map):43:43 -> a
     1:1:com.android.tools.r8.utils.OriginalSourceFiles unreachable():33:33 -> b
-com.android.tools.r8.utils.OriginalSourceFiles$1 -> com.android.tools.r8.internal.hL:
+com.android.tools.r8.utils.OriginalSourceFiles$1 -> com.android.tools.r8.internal.iL:
     1:1:void <init>():16:16 -> <init>
     1:1:com.android.tools.r8.graph.DexString getOriginalSourceFile(com.android.tools.r8.graph.DexProgramClass):19:19 -> a
-com.android.tools.r8.utils.OriginalSourceFiles$2 -> com.android.tools.r8.internal.iL:
+com.android.tools.r8.utils.OriginalSourceFiles$2 -> com.android.tools.r8.internal.jL:
     1:1:void <init>():24:24 -> <init>
     1:1:com.android.tools.r8.graph.DexString getOriginalSourceFile(com.android.tools.r8.graph.DexProgramClass):27:27 -> a
-com.android.tools.r8.utils.OriginalSourceFiles$3 -> com.android.tools.r8.internal.jL:
+com.android.tools.r8.utils.OriginalSourceFiles$3 -> com.android.tools.r8.internal.kL:
     java.util.Map val$map -> c
     1:1:void <init>(java.util.Map):43:43 -> <init>
     1:1:com.android.tools.r8.graph.DexString getOriginalSourceFile(com.android.tools.r8.graph.DexProgramClass):46:46 -> a
-com.android.tools.r8.utils.Pair -> com.android.tools.r8.internal.IL:
+com.android.tools.r8.utils.Pair -> com.android.tools.r8.internal.JL:
 # {"id":"sourceFile","fileName":"Pair.java"}
     java.lang.Object second -> b
     java.lang.Object first -> a
@@ -125191,7 +125177,7 @@
     59:59:java.lang.String toString():56:56 -> toString
     60:60:java.lang.String toString():56:56 -> toString
     57:57:java.lang.String toString():56:56 -> toString
-com.android.tools.r8.utils.PredicateSet -> com.android.tools.r8.internal.tM:
+com.android.tools.r8.utils.PredicateSet -> com.android.tools.r8.internal.uM:
     java.util.List predicates -> b
     java.util.Set elements -> a
     1:4:void <init>():14:17 -> <init>
@@ -125200,13 +125186,13 @@
     3:3:com.android.tools.r8.utils.PredicateSet empty():28:28 -> a
     4:10:com.android.tools.r8.utils.PredicateSet rewriteItems(java.util.function.Function):32:38 -> a
     1:5:boolean contains(java.lang.Object):43:47 -> b
-com.android.tools.r8.utils.PredicateUtils -> com.android.tools.r8.internal.uM:
+com.android.tools.r8.utils.PredicateUtils -> com.android.tools.r8.internal.vM:
     1:2:java.lang.Object findFirst(java.lang.Object[],java.util.function.Predicate):13:14 -> a
     3:3:boolean lambda$not$0(java.util.function.Predicate,java.lang.Object):22:22 -> a
     4:4:java.util.function.Predicate not(java.util.function.Predicate):22:22 -> a
     5:5:java.util.function.Predicate isNull(java.util.function.Function):26:26 -> a
     6:6:boolean lambda$isNull$1(java.util.function.Function,java.lang.Object):26:26 -> a
-com.android.tools.r8.utils.PreloadedClassFileProvider -> com.android.tools.r8.internal.DM:
+com.android.tools.r8.utils.PreloadedClassFileProvider -> com.android.tools.r8.internal.EM:
     java.util.Map content -> b
     1:1:void <init>(java.util.Map,com.android.tools.r8.utils.PreloadedClassFileProvider$1):19:19 -> <init>
     2:3:void <init>(java.util.Map):37:38 -> <init>
@@ -125225,7 +125211,7 @@
     1:6:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):48:53 -> getProgramResource
     7:7:com.android.tools.r8.ProgramResource getProgramResource(java.lang.String):52:52 -> getProgramResource
     1:1:java.lang.String toString():64:64 -> toString
-com.android.tools.r8.utils.PreloadedClassFileProvider$Builder -> com.android.tools.r8.internal.DM$a:
+com.android.tools.r8.utils.PreloadedClassFileProvider$Builder -> com.android.tools.r8.internal.EM$a:
     java.util.Map content -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():74:74 -> <clinit>
@@ -125234,11 +125220,11 @@
     3:3:void <init>():76:76 -> <init>
     1:5:com.android.tools.r8.utils.PreloadedClassFileProvider$Builder addResource(java.lang.String,byte[]):82:86 -> a
     6:8:com.android.tools.r8.utils.PreloadedClassFileProvider build():91:93 -> a
-com.android.tools.r8.utils.PreloadedClassFileProvider$ClassDescriptorOrigin -> com.android.tools.r8.internal.EM:
+com.android.tools.r8.utils.PreloadedClassFileProvider$ClassDescriptorOrigin -> com.android.tools.r8.internal.FM:
     java.lang.String descriptor -> f
     1:2:void <init>(java.lang.String):25:26 -> <init>
     1:1:java.lang.String part():31:31 -> part
-com.android.tools.r8.utils.ProgramClassCollection -> com.android.tools.r8.internal.bN:
+com.android.tools.r8.utils.ProgramClassCollection -> com.android.tools.r8.internal.cN:
     com.android.tools.r8.dex.ApplicationReader$ProgramClassConflictResolver conflictResolver -> d
     boolean $assertionsDisabled -> e
     1:1:void <clinit>():18:18 -> <clinit>
@@ -125304,7 +125290,7 @@
     45:45:java.lang.String toString():42:42 -> toString
     46:46:java.lang.String toString():42:42 -> toString
     43:43:java.lang.String toString():42:42 -> toString
-com.android.tools.r8.utils.ProgramMethodEquivalence -> com.android.tools.r8.internal.lN:
+com.android.tools.r8.utils.ProgramMethodEquivalence -> com.android.tools.r8.internal.mN:
     com.android.tools.r8.utils.ProgramMethodEquivalence INSTANCE -> a
     1:1:void <clinit>():12:12 -> <clinit>
     1:1:void <init>():14:14 -> <init>
@@ -125315,16 +125301,16 @@
     4:4:int com.android.tools.r8.utils.ProgramMethodEquivalence.doHash(com.android.tools.r8.graph.ProgramMethod):27:27 -> a
     4:4:int doHash(java.lang.Object):10 -> a
     5:5:com.android.tools.r8.utils.ProgramMethodEquivalence get():17:17 -> a
-com.android.tools.r8.utils.ReflectionHelper -> com.android.tools.r8.internal.mS:
-com.android.tools.r8.utils.ReflectionHelper$ReflectiveFieldOperation -> com.android.tools.r8.internal.hS:
+com.android.tools.r8.utils.ReflectionHelper -> com.android.tools.r8.internal.nS:
+com.android.tools.r8.utils.ReflectionHelper$ReflectiveFieldOperation -> com.android.tools.r8.internal.iS:
     1:1:void <init>(java.lang.Class,java.lang.String,com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperation,java.util.function.Consumer,com.android.tools.r8.utils.ReflectionHelper$1):72:72 -> <init>
     2:2:void <init>(java.lang.Class,java.lang.String,com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperation,java.util.function.Consumer):79:79 -> <init>
     1:5:java.lang.Object compute(java.lang.Object):84:88 -> a
-com.android.tools.r8.utils.ReflectionHelper$ReflectiveMethodOperation -> com.android.tools.r8.internal.iS:
+com.android.tools.r8.utils.ReflectionHelper$ReflectiveMethodOperation -> com.android.tools.r8.internal.jS:
     1:1:void <init>(java.lang.Class,java.lang.String,com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperation,java.util.function.Consumer,com.android.tools.r8.utils.ReflectionHelper$1):51:51 -> <init>
     2:2:void <init>(java.lang.Class,java.lang.String,com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperation,java.util.function.Consumer):58:58 -> <init>
     1:6:java.lang.Object compute(java.lang.Object):63:68 -> a
-com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperation -> com.android.tools.r8.internal.jS:
+com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperation -> com.android.tools.r8.internal.kS:
     java.util.function.Consumer modifier -> c
     com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperation nextOperation -> d
     java.lang.Class classForDeclaration -> a
@@ -125332,7 +125318,7 @@
     1:1:void <init>(java.lang.Class,java.lang.String,com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperation,java.util.function.Consumer,com.android.tools.r8.utils.ReflectionHelper$1):30:30 -> <init>
     2:6:void <init>(java.lang.Class,java.lang.String,com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperation,java.util.function.Consumer):41:45 -> <init>
     java.lang.Object compute(java.lang.Object) -> a
-com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperationBuilder -> com.android.tools.r8.internal.kS:
+com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperationBuilder -> com.android.tools.r8.internal.lS:
     com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperationSequenceBuilder sequenceBuilder -> d
     boolean $assertionsDisabled -> e
     java.lang.String declaredMember -> a
@@ -125348,7 +125334,7 @@
     16:17:void lambda$build$0(java.lang.reflect.Field):153:154 -> a
     18:19:void lambda$build$1(java.lang.reflect.Method):164:165 -> a
     1:1:com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperationBuilder setSetAccessible(boolean):138:138 -> b
-com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperationSequenceBuilder -> com.android.tools.r8.internal.lS:
+com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperationSequenceBuilder -> com.android.tools.r8.internal.mS:
     java.util.List reflectiveOperationBuilderList -> a
     boolean $assertionsDisabled -> b
     1:1:void <clinit>():92:92 -> <clinit>
@@ -125359,7 +125345,7 @@
     1:1:com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperationBuilder readMethod(java.lang.String):0:0 -> b
     2:4:com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperationBuilder com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperationSequenceBuilder.add(java.lang.String,com.android.tools.r8.utils.ReflectionHelper$DeclaredType):105:107 -> b
     2:4:com.android.tools.r8.utils.ReflectionHelper$ReflectiveOperationBuilder readMethod(java.lang.String):97 -> b
-com.android.tools.r8.utils.Reporter -> com.android.tools.r8.internal.XS:
+com.android.tools.r8.utils.Reporter -> com.android.tools.r8.internal.YS:
     java.util.List diagnosticsLevelMapping -> b
     com.android.tools.r8.DiagnosticsHandler clientHandler -> a
     com.android.tools.r8.utils.AbortException abort -> c
@@ -125381,19 +125367,19 @@
     1:1:void error(com.android.tools.r8.Diagnostic):109:109 -> error
     1:1:void info(com.android.tools.r8.Diagnostic):91:91 -> info
     1:1:void warning(com.android.tools.r8.Diagnostic):100:100 -> warning
-com.android.tools.r8.utils.Reporter$1 -> com.android.tools.r8.internal.US:
+com.android.tools.r8.utils.Reporter$1 -> com.android.tools.r8.internal.VS:
     1:1:void <init>():56:56 -> <init>
-com.android.tools.r8.utils.Reporter$2 -> com.android.tools.r8.internal.VS:
+com.android.tools.r8.utils.Reporter$2 -> com.android.tools.r8.internal.WS:
     int[] $SwitchMap$com$android$tools$r8$DiagnosticsLevel -> a
     1:1:void <clinit>():73:73 -> <clinit>
-com.android.tools.r8.utils.Reporter$DiagnosticsLevelMapping -> com.android.tools.r8.internal.WS:
+com.android.tools.r8.utils.Reporter$DiagnosticsLevelMapping -> com.android.tools.r8.internal.XS:
     com.android.tools.r8.DiagnosticsLevel from -> a
     com.android.tools.r8.DiagnosticsLevel to -> b
     java.lang.String diagnosticsClassName -> c
     1:4:void <init>(com.android.tools.r8.DiagnosticsLevel,com.android.tools.r8.DiagnosticsLevel,java.lang.String):25:28 -> <init>
     1:13:com.android.tools.r8.DiagnosticsLevel map(com.android.tools.r8.DiagnosticsLevel,com.android.tools.r8.Diagnostic):32:44 -> a
     14:14:com.android.tools.r8.DiagnosticsLevel map(com.android.tools.r8.DiagnosticsLevel,com.android.tools.r8.Diagnostic):38:38 -> a
-com.android.tools.r8.utils.SegmentTree -> com.android.tools.r8.internal.qU:
+com.android.tools.r8.utils.SegmentTree -> com.android.tools.r8.internal.rU:
     java.util.TreeMap internalTree -> a
     boolean allowIntervalOverwrites -> b
     int size -> c
@@ -125406,52 +125392,72 @@
     5:44:com.android.tools.r8.utils.SegmentTree add(int,int,java.lang.Object):36:75 -> a
     45:48:boolean lambda$add$0(int,int,com.android.tools.r8.utils.Box,java.lang.Integer):43:46 -> a
     49:49:int size():80:80 -> a
-com.android.tools.r8.utils.SemanticVersion -> com.android.tools.r8.internal.rU:
+com.android.tools.r8.utils.SemanticVersion -> com.android.tools.r8.internal.sU:
     int minor -> b
     int patch -> c
     int major -> a
-    1:4:void <init>(int,int,int):38:41 -> <init>
-    1:21:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):11:31 -> a
-    22:22:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):29:29 -> a
-    23:23:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":102,"2":103,"3":104,"4":105,"5":106}}
-    102:102:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):29:29 -> a
-    103:103:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):29:29 -> a
-    104:104:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):29:29 -> a
-    105:105:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):29:29 -> a
-    106:106:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):29:29 -> a
-    52:52:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):29:29 -> a
-    53:53:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
-    54:54:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":107,"2":108,"3":109,"4":110,"5":111}}
-    107:107:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
-    108:108:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
-    109:109:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
-    110:110:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
-    111:111:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
-    71:71:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
-    72:72:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
-    73:73:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":112,"2":113,"3":114,"4":115,"5":116}}
-    112:112:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
-    113:113:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
-    114:114:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
-    115:115:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
+    java.lang.String prerelease -> d
+    1:5:void <init>(int,int,int,java.lang.String):49:53 -> <init>
+    1:27:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):11:37 -> a
+    28:28:com.android.tools.r8.utils.SemanticVersion com.android.tools.r8.utils.SemanticVersion.create(int,int,int,java.lang.String):61:61 -> a
+    28:28:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):41 -> a
+    29:29:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):39:39 -> a
+    30:30:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":156,"2":157,"3":158,"4":159,"5":160}}
+    156:156:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):39:39 -> a
+    157:157:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):39:39 -> a
+    158:158:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):39:39 -> a
+    159:159:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):39:39 -> a
+    160:160:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):39:39 -> a
+    69:69:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):39:39 -> a
+    70:70:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):25:25 -> a
+    71:71:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":161,"2":162,"3":163,"4":164,"5":165}}
+    161:161:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):25:25 -> a
+    162:162:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):25:25 -> a
+    163:163:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):25:25 -> a
+    164:164:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):25:25 -> a
+    165:165:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):25:25 -> a
+    96:96:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):25:25 -> a
+    97:97:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
+    98:98:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":166,"2":167,"3":168,"4":169,"5":170}}
+    166:166:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
+    167:167:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
+    168:168:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
+    169:169:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
+    170:170:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
+    115:115:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):17:17 -> a
     116:116:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
-    86:86:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
-    117:117:int getMajor():45:45 -> a
-    118:124:boolean isNewerOrEqual(com.android.tools.r8.utils.SemanticVersion):57:63 -> a
-    1:1:int getMinor():49:49 -> b
-    1:1:int getPatch():53:53 -> c
-    1:5:boolean equals(java.lang.Object):68:72 -> equals
-    1:1:int hashCode():77:77 -> hashCode
+    117:117:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":171,"2":172,"3":173,"4":174,"5":175}}
+    171:171:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
+    172:172:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
+    173:173:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
+    174:174:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
+    175:175:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
+    130:130:com.android.tools.r8.utils.SemanticVersion parse(java.lang.String):13:13 -> a
+    176:176:com.android.tools.r8.utils.SemanticVersion com.android.tools.r8.utils.SemanticVersion.create(int,int,int,java.lang.String):61:61 -> a
+    176:176:com.android.tools.r8.utils.SemanticVersion create(int,int,int):57 -> a
+    177:177:int getMajor():65:65 -> a
+    178:184:boolean isNewerOrEqual(com.android.tools.r8.utils.SemanticVersion):77:83 -> a
+    1:1:int getMinor():69:69 -> b
+    1:1:int getPatch():73:73 -> c
+    1:8:boolean equals(java.lang.Object):88:95 -> equals
+    1:1:int hashCode():100:100 -> hashCode
     1:1:java.lang.String toString():0:0 -> toString
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":84,"2":85,"3":86}}
-    84:84:java.lang.String toString():82:82 -> toString
-    85:85:java.lang.String toString():82:82 -> toString
-    86:86:java.lang.String toString():82:82 -> toString
-    83:83:java.lang.String toString():82:82 -> toString
-com.android.tools.r8.utils.SetUtils -> com.android.tools.r8.internal.vU:
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":213,"2":214,"3":215}}
+    213:213:java.lang.String toString():105:105 -> toString
+    214:214:java.lang.String toString():105:105 -> toString
+    215:215:java.lang.String toString():105:105 -> toString
+    106:106:java.lang.String toString():105:105 -> toString
+    107:107:java.lang.String toString():0:0 -> toString
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":216,"2":217,"3":218}}
+    216:216:java.lang.String toString():105:105 -> toString
+    217:217:java.lang.String toString():105:105 -> toString
+    218:218:java.lang.String toString():105:105 -> toString
+    212:212:java.lang.String toString():105:105 -> toString
+com.android.tools.r8.utils.SetUtils -> com.android.tools.r8.internal.wU:
     1:1:java.util.Set newConcurrentHashSet(int):28:28 -> a
     2:3:java.util.HashSet newHashSet(java.lang.Object):32:33 -> a
     4:5:java.util.HashSet newHashSet(java.lang.Object[]):39:40 -> a
@@ -125464,14 +125470,14 @@
     1:1:java.util.Set newIdentityHashSet(int):85:85 -> b
     2:4:com.android.tools.r8.com.google.common.collect.ImmutableSet newImmutableSet(com.android.tools.r8.utils.ForEachable):95:97 -> b
     5:11:com.android.tools.r8.com.google.common.collect.ImmutableSet newImmutableSetExcludingNullItems(java.lang.Object[]):102:108 -> b
-com.android.tools.r8.utils.SortingStringConsumer -> com.android.tools.r8.internal.HV:
+com.android.tools.r8.utils.SortingStringConsumer -> com.android.tools.r8.internal.IV:
     java.util.List accepted -> b
     1:1:void <init>(com.android.tools.r8.StringConsumer):24:24 -> <init>
     2:2:void <init>(com.android.tools.r8.StringConsumer):17:17 -> <init>
     1:1:void lambda$finished$0(com.android.tools.r8.DiagnosticsHandler,java.lang.String):35:35 -> a
     1:1:void accept(java.lang.String,com.android.tools.r8.DiagnosticsHandler):29:29 -> accept
     1:3:void finished(com.android.tools.r8.DiagnosticsHandler):34:36 -> finished
-com.android.tools.r8.utils.SourceFileTemplateProvider -> com.android.tools.r8.internal.LV:
+com.android.tools.r8.utils.SourceFileTemplateProvider -> com.android.tools.r8.internal.MV:
     java.util.Map HANDLERS -> c
     java.lang.String template -> a
     java.lang.String cachedValue -> b
@@ -125499,7 +125505,7 @@
     58:64:com.android.tools.r8.SourceFileProvider create(java.lang.String,com.android.tools.r8.DiagnosticsHandler):46:52 -> a
     70:70:void lambda$get$0(com.android.tools.r8.SourceFileEnvironment,java.lang.String,com.android.tools.r8.SourceFileProvider):68:68 -> a
     1:8:java.lang.String get(com.android.tools.r8.SourceFileEnvironment):64:71 -> get
-com.android.tools.r8.utils.StreamUtils -> com.android.tools.r8.internal.KW:
+com.android.tools.r8.utils.StreamUtils -> com.android.tools.r8.internal.LW:
     1:2:byte[] StreamToByteArrayClose(java.io.InputStream):17:18 -> a
 com.android.tools.r8.utils.StringDiagnostic -> com.android.tools.r8.utils.StringDiagnostic:
     com.android.tools.r8.origin.Origin origin -> b
@@ -125513,7 +125519,7 @@
     1:1:java.lang.String getDiagnosticMessage():56:56 -> getDiagnosticMessage
     1:1:com.android.tools.r8.origin.Origin getOrigin():46:46 -> getOrigin
     1:1:com.android.tools.r8.position.Position getPosition():51:51 -> getPosition
-com.android.tools.r8.utils.StringUtils -> com.android.tools.r8.internal.sX:
+com.android.tools.r8.utils.StringUtils -> com.android.tools.r8.internal.tX:
     char[] EMPTY_CHAR_ARRAY -> a
     java.lang.String LINE_SEPARATOR -> c
     java.lang.String[] EMPTY_ARRAY -> b
@@ -125605,10 +125611,10 @@
     1:9:java.lang.String toASCIIString(java.lang.String):53:61 -> d
     1:9:java.lang.String trim(java.lang.String):296:304 -> e
     1:5:java.lang.String withNativeLineSeparator(java.lang.String):163:167 -> f
-com.android.tools.r8.utils.StringUtils$1 -> com.android.tools.r8.internal.rX:
+com.android.tools.r8.utils.StringUtils$1 -> com.android.tools.r8.internal.sX:
     int[] $SwitchMap$com$android$tools$r8$utils$StringUtils$BraceType -> a
     1:1:void <clinit>():32:32 -> <clinit>
-com.android.tools.r8.utils.StringUtils$BraceType -> com.android.tools.r8.internal.sX$a:
+com.android.tools.r8.utils.StringUtils$BraceType -> com.android.tools.r8.internal.tX$a:
     com.android.tools.r8.utils.StringUtils$BraceType PARENS -> b
     com.android.tools.r8.utils.StringUtils$BraceType SQUARE -> c
     com.android.tools.r8.utils.StringUtils$BraceType[] $VALUES -> f
@@ -125618,10 +125624,10 @@
     5:5:void <clinit>():25:25 -> <clinit>
     1:1:void <init>(java.lang.String,int):25:25 -> <init>
     1:1:com.android.tools.r8.utils.StringUtils$BraceType[] values():25:25 -> a
-com.android.tools.r8.utils.SupplierUtils -> com.android.tools.r8.internal.LX:
+com.android.tools.r8.utils.SupplierUtils -> com.android.tools.r8.internal.MX:
     1:3:java.lang.Object lambda$memoize$1(com.android.tools.r8.utils.ThrowingSupplier):21:23 -> a
     1:1:java.util.function.Supplier memoize(com.android.tools.r8.utils.ThrowingSupplier):18:18 -> b
-com.android.tools.r8.utils.SymbolGenerationUtils -> com.android.tools.r8.internal.WX:
+com.android.tools.r8.utils.SymbolGenerationUtils -> com.android.tools.r8.internal.XX:
     char[] IDENTIFIER_CHARACTERS -> b
     boolean $assertionsDisabled -> e
     java.util.Set PRIMITIVE_TYPE_NAMES -> a
@@ -125630,16 +125636,16 @@
     1:8:void <clinit>():13:20 -> <clinit>
     9:10:java.util.HashSet com.android.tools.r8.com.google.common.collect.Sets.newHashSet(java.lang.Object[]):195:196 -> <clinit>
     9:10:void <clinit>():21 -> <clinit>
-    11:17:void <clinit>():21:27 -> <clinit>
-    1:1:java.lang.String numberToIdentifier(int,com.android.tools.r8.utils.SymbolGenerationUtils$MixedCasing):31:31 -> a
-    2:35:java.lang.String com.android.tools.r8.utils.SymbolGenerationUtils.numberToIdentifier(int,com.android.tools.r8.utils.SymbolGenerationUtils$MixedCasing,char[],boolean):43:76 -> a
-    2:35:java.lang.String numberToIdentifier(int,com.android.tools.r8.utils.SymbolGenerationUtils$MixedCasing):31 -> a
-com.android.tools.r8.utils.SymbolGenerationUtils$MixedCasing -> com.android.tools.r8.internal.WX$a:
+    11:18:void <clinit>():21:28 -> <clinit>
+    1:1:java.lang.String numberToIdentifier(int,com.android.tools.r8.utils.SymbolGenerationUtils$MixedCasing):32:32 -> a
+    2:35:java.lang.String com.android.tools.r8.utils.SymbolGenerationUtils.numberToIdentifier(int,com.android.tools.r8.utils.SymbolGenerationUtils$MixedCasing,char[],boolean):44:77 -> a
+    2:35:java.lang.String numberToIdentifier(int,com.android.tools.r8.utils.SymbolGenerationUtils$MixedCasing):32 -> a
+com.android.tools.r8.utils.SymbolGenerationUtils$MixedCasing -> com.android.tools.r8.internal.XX$a:
     com.android.tools.r8.utils.SymbolGenerationUtils$MixedCasing DONT_USE_MIXED_CASE -> c
     com.android.tools.r8.utils.SymbolGenerationUtils$MixedCasing USE_MIXED_CASE -> b
     1:2:void <clinit>():16:17 -> <clinit>
     1:1:void <init>(java.lang.String,int):15:15 -> <init>
-com.android.tools.r8.utils.ThreadUtils -> com.android.tools.r8.utils.B:
+com.android.tools.r8.utils.ThreadUtils -> com.android.tools.r8.utils.C:
     1:1:java.util.concurrent.Future processAsynchronously(com.android.tools.r8.utils.Action,java.util.concurrent.ExecutorService):26:26 -> a
     2:2:java.util.concurrent.Future processAsynchronously(java.util.concurrent.Callable,java.util.concurrent.ExecutorService):36:36 -> a
     2:2:java.util.concurrent.Future processAsynchronously(com.android.tools.r8.utils.Action,java.util.concurrent.ExecutorService):26 -> a
@@ -125679,32 +125685,32 @@
     2:2:java.util.concurrent.ExecutorService getExecutorServiceForProcessors(int):188:188 -> b
     3:3:java.util.concurrent.ExecutorService getExecutorServiceForThreads(int):195:195 -> b
     3:3:java.util.concurrent.ExecutorService getExecutorServiceForProcessors(int):189 -> b
-com.android.tools.r8.utils.ThrowingAction -> com.android.tools.r8.internal.uY:
+com.android.tools.r8.utils.ThrowingAction -> com.android.tools.r8.internal.vY:
     void execute() -> a
-com.android.tools.r8.utils.ThrowingBiConsumer -> com.android.tools.r8.internal.vY:
-com.android.tools.r8.utils.ThrowingBiFunction -> com.android.tools.r8.internal.wY:
-com.android.tools.r8.utils.ThrowingCharIterator -> com.android.tools.r8.internal.xY:
+com.android.tools.r8.utils.ThrowingBiConsumer -> com.android.tools.r8.internal.wY:
+com.android.tools.r8.utils.ThrowingBiFunction -> com.android.tools.r8.internal.xY:
+com.android.tools.r8.utils.ThrowingCharIterator -> com.android.tools.r8.internal.yY:
     char nextChar() -> a
-com.android.tools.r8.utils.ThrowingConsumer -> com.android.tools.r8.internal.yY:
+com.android.tools.r8.utils.ThrowingConsumer -> com.android.tools.r8.internal.zY:
     1:7:void acceptWithRuntimeException(java.lang.Object):20:26 -> a
-com.android.tools.r8.utils.ThrowingFunction -> com.android.tools.r8.internal.zY:
-com.android.tools.r8.utils.ThrowingIntIterator -> com.android.tools.r8.internal.BY:
+com.android.tools.r8.utils.ThrowingFunction -> com.android.tools.r8.internal.AY:
+com.android.tools.r8.utils.ThrowingIntIterator -> com.android.tools.r8.internal.CY:
     1:1:void <init>():9:9 -> <init>
     boolean hasNext() -> a
     1:2:void forEachRemaining(java.util.function.IntConsumer):12:13 -> a
     3:6:int nextIntComputeIfAbsent(com.android.tools.r8.utils.ThrowingIntSupplier):22:25 -> a
     int nextInt() -> b
-com.android.tools.r8.utils.ThrowingIntSupplier -> com.android.tools.r8.internal.CY:
-com.android.tools.r8.utils.ThrowingIterator -> com.android.tools.r8.internal.DY:
+com.android.tools.r8.utils.ThrowingIntSupplier -> com.android.tools.r8.internal.DY:
+com.android.tools.r8.utils.ThrowingIterator -> com.android.tools.r8.internal.EY:
     1:1:void <init>():11:11 -> <init>
     boolean hasNext() -> a
     1:6:java.util.List take(int):25:30 -> a
     7:7:java.util.List take(int):28:28 -> a
     java.lang.Object next() -> b
-com.android.tools.r8.utils.ThrowingReferenceIntConsumer -> com.android.tools.r8.internal.EY:
-com.android.tools.r8.utils.ThrowingReferenceIntFunction -> com.android.tools.r8.internal.FY:
+com.android.tools.r8.utils.ThrowingReferenceIntConsumer -> com.android.tools.r8.internal.FY:
+com.android.tools.r8.utils.ThrowingReferenceIntFunction -> com.android.tools.r8.internal.GY:
     java.lang.Object apply(java.lang.Object,int) -> a
-com.android.tools.r8.utils.ThrowingSupplier -> com.android.tools.r8.internal.GY:
+com.android.tools.r8.utils.ThrowingSupplier -> com.android.tools.r8.internal.HY:
 com.android.tools.r8.utils.Timing -> com.android.tools.r8.internal.RY:
     java.util.Stack stack -> b
     com.android.tools.r8.utils.Timing EMPTY -> d
@@ -125713,101 +125719,100 @@
     boolean trackMemory -> c
     1:5:void <clinit>():25:29 -> <clinit>
     1:1:void <init>(java.lang.String,boolean,com.android.tools.r8.utils.Timing$1):25:25 -> <init>
-    2:2:void <init>(java.lang.String):93:93 -> <init>
-    3:7:void <init>(java.lang.String,boolean):96:100 -> <init>
+    2:2:void <init>(java.lang.String):83:83 -> <init>
+    3:7:void <init>(java.lang.String,boolean):86:90 -> <init>
     1:1:com.android.tools.r8.utils.Timing$Node access$1100(com.android.tools.r8.utils.Timing):25:25 -> a
-    2:4:com.android.tools.r8.utils.Timing create(java.lang.String,com.android.tools.r8.utils.InternalOptions):78:80 -> a
-    5:5:com.android.tools.r8.utils.Timing create(java.lang.String,com.android.tools.r8.utils.InternalOptions):79:79 -> a
-    6:6:com.android.tools.r8.utils.Timing create(java.lang.String,boolean):84:84 -> a
-    7:7:com.android.tools.r8.utils.Timing$TimingMerger beginMerger(java.lang.String,int):326:326 -> a
-    8:8:java.lang.String com.android.tools.r8.utils.Timing.prettyPercentage(long,long):334:334 -> a
+    2:4:com.android.tools.r8.utils.Timing create(java.lang.String,com.android.tools.r8.utils.InternalOptions):68:70 -> a
+    5:5:com.android.tools.r8.utils.Timing create(java.lang.String,com.android.tools.r8.utils.InternalOptions):69:69 -> a
+    6:6:com.android.tools.r8.utils.Timing create(java.lang.String,boolean):74:74 -> a
+    7:7:com.android.tools.r8.utils.Timing$TimingMerger beginMerger(java.lang.String,int):316:316 -> a
+    8:8:java.lang.String com.android.tools.r8.utils.Timing.prettyPercentage(long,long):324:324 -> a
     8:8:java.lang.String access$400(long,long):25 -> a
-    9:9:long com.android.tools.r8.utils.Timing.percentage(long,long):330:330 -> a
-    9:9:java.lang.String com.android.tools.r8.utils.Timing.prettyPercentage(long,long):334 -> a
+    9:9:long com.android.tools.r8.utils.Timing.percentage(long,long):320:320 -> a
+    9:9:java.lang.String com.android.tools.r8.utils.Timing.prettyPercentage(long,long):324 -> a
     9:9:java.lang.String access$400(long,long):25 -> a
-    10:10:java.lang.String com.android.tools.r8.utils.Timing.prettyPercentage(long,long):334:334 -> a
+    10:10:java.lang.String com.android.tools.r8.utils.Timing.prettyPercentage(long,long):324:324 -> a
     10:10:java.lang.String access$400(long,long):25 -> a
-    11:11:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):342:342 -> a
+    11:11:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):332:332 -> a
     11:11:java.lang.String access$600(long):25 -> a
     12:12:java.lang.String access$600(long):0:0 -> a
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":31,"2":32,"3":33}}
-    31:31:java.lang.String com.android.tools.r8.utils.Timing.prettyNumber(long):346:346 -> a
-    31:31:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):342 -> a
+    31:31:java.lang.String com.android.tools.r8.utils.Timing.prettyNumber(long):336:336 -> a
+    31:31:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):332 -> a
     31:31:java.lang.String access$600(long):25 -> a
-    32:32:java.lang.String com.android.tools.r8.utils.Timing.prettyNumber(long):346:346 -> a
-    32:32:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):342 -> a
+    32:32:java.lang.String com.android.tools.r8.utils.Timing.prettyNumber(long):336:336 -> a
+    32:32:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):332 -> a
     32:32:java.lang.String access$600(long):25 -> a
-    33:33:java.lang.String com.android.tools.r8.utils.Timing.prettyNumber(long):346:346 -> a
-    33:33:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):342 -> a
+    33:33:java.lang.String com.android.tools.r8.utils.Timing.prettyNumber(long):336:336 -> a
+    33:33:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):332 -> a
     33:33:java.lang.String access$600(long):25 -> a
-    13:29:java.lang.String com.android.tools.r8.utils.Timing.prettyNumber(long):346:362 -> a
-    13:29:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):342 -> a
+    13:29:java.lang.String com.android.tools.r8.utils.Timing.prettyNumber(long):336:352 -> a
+    13:29:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):332 -> a
     13:29:java.lang.String access$600(long):25 -> a
     30:30:java.lang.String access$600(long):0:0 -> a
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":34,"2":35,"3":36}}
-    34:34:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):342:342 -> a
+    34:34:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):332:332 -> a
     34:34:java.lang.String access$600(long):25 -> a
-    35:35:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):342:342 -> a
+    35:35:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):332:332 -> a
     35:35:java.lang.String access$600(long):25 -> a
-    36:36:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):342:342 -> a
+    36:36:java.lang.String com.android.tools.r8.utils.Timing.prettySize(long):332:332 -> a
     36:36:java.lang.String access$600(long):25 -> a
-    37:40:void begin(java.lang.String):366:369 -> a
-    41:41:void com.android.tools.r8.utils.Timing$Node.restart():139:139 -> a
-    41:41:void begin(java.lang.String):370 -> a
-    42:42:void com.android.tools.r8.utils.Timing$Node.restart():139:139 -> a
-    42:42:void begin(java.lang.String):370 -> a
+    37:40:void begin(java.lang.String):356:359 -> a
+    41:41:void com.android.tools.r8.utils.Timing$Node.restart():129:129 -> a
+    41:41:void begin(java.lang.String):360 -> a
+    42:42:void com.android.tools.r8.utils.Timing$Node.restart():129:129 -> a
+    42:42:void begin(java.lang.String):360 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    43:43:void com.android.tools.r8.utils.Timing$Node.restart():139:139 -> a
-    43:43:void begin(java.lang.String):370 -> a
-    44:44:void com.android.tools.r8.utils.Timing$Node.restart():140:140 -> a
-    44:44:void begin(java.lang.String):370 -> a
+    43:43:void com.android.tools.r8.utils.Timing$Node.restart():129:129 -> a
+    43:43:void begin(java.lang.String):360 -> a
+    44:44:void com.android.tools.r8.utils.Timing$Node.restart():130:130 -> a
+    44:44:void begin(java.lang.String):360 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    45:47:void com.android.tools.r8.utils.Timing$Node.restart():141:143 -> a
-    45:47:void begin(java.lang.String):370 -> a
-    48:51:void begin(java.lang.String):372:375 -> a
-    52:56:java.lang.Object time(java.lang.String,com.android.tools.r8.utils.ThrowingSupplier):388:392 -> a
-    57:61:java.lang.Object scope(java.lang.String,com.android.tools.r8.utils.Timing$TimingScope):420:424 -> a
-    62:67:java.util.Map com.android.tools.r8.utils.Timing.computeMemoryInformation():437:442 -> a
+    45:47:void com.android.tools.r8.utils.Timing$Node.restart():131:133 -> a
+    45:47:void begin(java.lang.String):360 -> a
+    48:51:void begin(java.lang.String):362:365 -> a
+    52:56:void time(java.lang.String,com.android.tools.r8.utils.ThrowingAction):369:373 -> a
+    57:61:java.lang.Object time(java.lang.String,com.android.tools.r8.utils.ThrowingSupplier):378:382 -> a
+    62:67:java.util.Map com.android.tools.r8.utils.Timing.computeMemoryInformation():401:406 -> a
     62:67:java.util.Map access$200():25 -> a
-    68:68:com.android.tools.r8.utils.Timing$MemInfo com.android.tools.r8.utils.Timing$MemInfo.fromTotalAndFree(long,long):111:111 -> a
-    68:68:java.util.Map com.android.tools.r8.utils.Timing.computeMemoryInformation():441 -> a
+    68:68:com.android.tools.r8.utils.Timing$MemInfo com.android.tools.r8.utils.Timing$MemInfo.fromTotalAndFree(long,long):101:101 -> a
+    68:68:java.util.Map com.android.tools.r8.utils.Timing.computeMemoryInformation():405 -> a
     68:68:java.util.Map access$200():25 -> a
-    69:69:java.util.Map com.android.tools.r8.utils.Timing.computeMemoryInformation():439:439 -> a
+    69:69:java.util.Map com.android.tools.r8.utils.Timing.computeMemoryInformation():403:403 -> a
     69:69:java.util.Map access$200():25 -> a
     1:1:java.util.Stack access$700(com.android.tools.r8.utils.Timing):25:25 -> b
-    2:2:com.android.tools.r8.utils.Timing empty():73:73 -> b
-    3:3:long com.android.tools.r8.utils.Timing.percentage(long,long):330:330 -> b
+    2:2:com.android.tools.r8.utils.Timing empty():63:63 -> b
+    3:3:long com.android.tools.r8.utils.Timing.percentage(long,long):320:320 -> b
     3:3:long access$500(long,long):25 -> b
     1:1:boolean access$800(com.android.tools.r8.utils.Timing):25:25 -> c
-    2:2:void end():397:397 -> c
-    3:3:void com.android.tools.r8.utils.Timing$Node.end():147:147 -> c
-    3:3:void end():397 -> c
+    2:2:void end():387:387 -> c
+    3:3:void com.android.tools.r8.utils.Timing$Node.end():137:137 -> c
+    3:3:void end():387 -> c
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    4:8:void com.android.tools.r8.utils.Timing$Node.end():147:151 -> c
-    4:8:void end():397 -> c
-    9:9:void end():398:398 -> c
-    1:3:void report():402:404 -> d
-    4:4:void com.android.tools.r8.utils.Timing$Node.end():147:147 -> d
-    4:4:void report():405 -> d
+    4:8:void com.android.tools.r8.utils.Timing$Node.end():137:141 -> c
+    4:8:void end():387 -> c
+    9:9:void end():388:388 -> c
+    1:3:void report():392:394 -> d
+    4:4:void com.android.tools.r8.utils.Timing$Node.end():137:137 -> d
+    4:4:void report():395 -> d
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    5:9:void com.android.tools.r8.utils.Timing$Node.end():147:151 -> d
-    5:9:void report():405 -> d
-    10:11:void report():406:407 -> d
-com.android.tools.r8.utils.Timing$1 -> com.android.tools.r8.internal.KY:
+    5:9:void com.android.tools.r8.utils.Timing$Node.end():137:141 -> d
+    5:9:void report():395 -> d
+    10:11:void report():396:397 -> d
+com.android.tools.r8.utils.Timing$1 -> com.android.tools.r8.internal.LY:
     1:1:void <init>(java.lang.String,boolean):30:30 -> <init>
     void begin(java.lang.String) -> a
     1:1:com.android.tools.r8.utils.Timing$TimingMerger beginMerger(java.lang.String,int):33:33 -> a
-    2:2:java.lang.Object scope(java.lang.String,com.android.tools.r8.utils.Timing$TimingScope):63:63 -> a
     void end() -> c
     void report() -> d
-com.android.tools.r8.utils.Timing$1$1 -> com.android.tools.r8.internal.JY:
+com.android.tools.r8.utils.Timing$1$1 -> com.android.tools.r8.internal.KY:
     1:1:void <init>(com.android.tools.r8.utils.Timing$1,java.lang.String,int,com.android.tools.r8.utils.Timing):33:33 -> <init>
     void add(java.util.Collection) -> a
     void end() -> a
-com.android.tools.r8.utils.Timing$MemInfo -> com.android.tools.r8.internal.LY:
+com.android.tools.r8.utils.Timing$MemInfo -> com.android.tools.r8.internal.MY:
     long used -> a
-    1:2:void <init>(long):106:107 -> <init>
-com.android.tools.r8.utils.Timing$Node -> com.android.tools.r8.internal.MY:
+    1:2:void <init>(long):96:97 -> <init>
+com.android.tools.r8.utils.Timing$Node -> com.android.tools.r8.internal.NY:
     java.util.Map children -> c
     long start_time -> e
     java.lang.String title -> a
@@ -125816,161 +125821,159 @@
     boolean trackMemory -> b
     java.util.Map startMemory -> f
     java.util.Map endMemory -> g
-    1:1:void <clinit>():119:119 -> <clinit>
-    1:1:void <init>(java.lang.String,boolean):129:129 -> <init>
-    2:14:void <init>(java.lang.String,boolean):123:135 -> <init>
-    1:1:void report(int,com.android.tools.r8.utils.Timing$Node):170:170 -> a
-    2:2:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    2:2:void report(int,com.android.tools.r8.utils.Timing$Node):170 -> a
-    3:3:void report(int,com.android.tools.r8.utils.Timing$Node):170:170 -> a
-    4:4:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    4:4:void report(int,com.android.tools.r8.utils.Timing$Node):171 -> a
-    5:5:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    5:5:void report(int,com.android.tools.r8.utils.Timing$Node):171 -> a
+    1:1:void <clinit>():109:109 -> <clinit>
+    1:1:void <init>(java.lang.String,boolean):119:119 -> <init>
+    2:14:void <init>(java.lang.String,boolean):113:125 -> <init>
+    1:1:void report(int,com.android.tools.r8.utils.Timing$Node):160:160 -> a
+    2:2:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    2:2:void report(int,com.android.tools.r8.utils.Timing$Node):160 -> a
+    3:3:void report(int,com.android.tools.r8.utils.Timing$Node):160:160 -> a
+    4:4:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    4:4:void report(int,com.android.tools.r8.utils.Timing$Node):161 -> a
+    5:5:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    5:5:void report(int,com.android.tools.r8.utils.Timing$Node):161 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    6:6:void report(int,com.android.tools.r8.utils.Timing$Node):171:171 -> a
-    7:8:void com.android.tools.r8.utils.Timing$Node.printPrefix(int):204:205 -> a
-    7:8:void report(int,com.android.tools.r8.utils.Timing$Node):174 -> a
-    9:9:void report(int,com.android.tools.r8.utils.Timing$Node):175:175 -> a
-    10:10:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):165:165 -> a
-    10:10:void report(int,com.android.tools.r8.utils.Timing$Node):175 -> a
+    6:6:void report(int,com.android.tools.r8.utils.Timing$Node):161:161 -> a
+    7:8:void com.android.tools.r8.utils.Timing$Node.printPrefix(int):194:195 -> a
+    7:8:void report(int,com.android.tools.r8.utils.Timing$Node):164 -> a
+    9:9:void report(int,com.android.tools.r8.utils.Timing$Node):165:165 -> a
+    10:10:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):155:155 -> a
+    10:10:void report(int,com.android.tools.r8.utils.Timing$Node):165 -> a
     11:11:void report(int,com.android.tools.r8.utils.Timing$Node):0:0 -> a
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":45,"2":46,"3":47}}
-    45:45:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):166:166 -> a
-    45:45:void report(int,com.android.tools.r8.utils.Timing$Node):175 -> a
-    46:46:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):166:166 -> a
-    46:46:void report(int,com.android.tools.r8.utils.Timing$Node):175 -> a
-    47:47:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):166:166 -> a
-    47:47:void report(int,com.android.tools.r8.utils.Timing$Node):175 -> a
-    12:12:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    12:12:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):166 -> a
-    12:12:void report(int,com.android.tools.r8.utils.Timing$Node):175 -> a
-    13:13:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    13:13:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):166 -> a
+    45:45:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):156:156 -> a
+    45:45:void report(int,com.android.tools.r8.utils.Timing$Node):165 -> a
+    46:46:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):156:156 -> a
+    46:46:void report(int,com.android.tools.r8.utils.Timing$Node):165 -> a
+    47:47:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):156:156 -> a
+    47:47:void report(int,com.android.tools.r8.utils.Timing$Node):165 -> a
+    12:12:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    12:12:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):156 -> a
+    12:12:void report(int,com.android.tools.r8.utils.Timing$Node):165 -> a
+    13:13:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    13:13:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):156 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    13:13:void report(int,com.android.tools.r8.utils.Timing$Node):175 -> a
-    14:14:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):166:166 -> a
-    14:14:void report(int,com.android.tools.r8.utils.Timing$Node):175 -> a
-    15:24:void report(int,com.android.tools.r8.utils.Timing$Node):175:184 -> a
-    25:25:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    25:25:void report(int,com.android.tools.r8.utils.Timing$Node):185 -> a
+    13:13:void report(int,com.android.tools.r8.utils.Timing$Node):165 -> a
+    14:14:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):156:156 -> a
+    14:14:void report(int,com.android.tools.r8.utils.Timing$Node):165 -> a
+    15:24:void report(int,com.android.tools.r8.utils.Timing$Node):165:174 -> a
+    25:25:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    25:25:void report(int,com.android.tools.r8.utils.Timing$Node):175 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    26:26:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    26:26:void report(int,com.android.tools.r8.utils.Timing$Node):187 -> a
-    27:27:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    27:27:void report(int,com.android.tools.r8.utils.Timing$Node):189 -> a
-    28:28:void report(int,com.android.tools.r8.utils.Timing$Node):189:189 -> a
-    29:30:void com.android.tools.r8.utils.Timing$Node.printPrefix(int):204:205 -> a
-    29:30:void report(int,com.android.tools.r8.utils.Timing$Node):190 -> a
-    31:31:void report(int,com.android.tools.r8.utils.Timing$Node):191:191 -> a
+    26:26:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    26:26:void report(int,com.android.tools.r8.utils.Timing$Node):177 -> a
+    27:27:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    27:27:void report(int,com.android.tools.r8.utils.Timing$Node):179 -> a
+    28:28:void report(int,com.android.tools.r8.utils.Timing$Node):179:179 -> a
+    29:30:void com.android.tools.r8.utils.Timing$Node.printPrefix(int):194:195 -> a
+    29:30:void report(int,com.android.tools.r8.utils.Timing$Node):180 -> a
+    31:31:void report(int,com.android.tools.r8.utils.Timing$Node):181:181 -> a
     32:32:void report(int,com.android.tools.r8.utils.Timing$Node):0:0 -> a
       # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":48,"2":49,"3":50}}
-    48:48:void report(int,com.android.tools.r8.utils.Timing$Node):191:191 -> a
-    49:49:void report(int,com.android.tools.r8.utils.Timing$Node):191:191 -> a
-    50:50:void report(int,com.android.tools.r8.utils.Timing$Node):191:191 -> a
-    33:33:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    33:33:void report(int,com.android.tools.r8.utils.Timing$Node):193 -> a
-    34:34:void report(int,com.android.tools.r8.utils.Timing$Node):193:193 -> a
-    35:35:java.lang.String com.android.tools.r8.utils.Timing.prettyTime(long):338:338 -> a
+    48:48:void report(int,com.android.tools.r8.utils.Timing$Node):181:181 -> a
+    49:49:void report(int,com.android.tools.r8.utils.Timing$Node):181:181 -> a
+    50:50:void report(int,com.android.tools.r8.utils.Timing$Node):181:181 -> a
+    33:33:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    33:33:void report(int,com.android.tools.r8.utils.Timing$Node):183 -> a
+    34:34:void report(int,com.android.tools.r8.utils.Timing$Node):183:183 -> a
+    35:35:java.lang.String com.android.tools.r8.utils.Timing.prettyTime(long):328:328 -> a
     35:35:java.lang.String com.android.tools.r8.utils.Timing.access$300(long):25 -> a
-    35:35:void report(int,com.android.tools.r8.utils.Timing$Node):195 -> a
-    36:36:void report(int,com.android.tools.r8.utils.Timing$Node):195:195 -> a
-    37:44:void report(int,com.android.tools.r8.utils.Timing$Node):191:198 -> a
-    51:51:void lambda$report$0(int,com.android.tools.r8.utils.Timing$Node,com.android.tools.r8.utils.Timing$Node):198:198 -> a
-    52:64:void printMemory(int):210:222 -> a
-    65:65:long com.android.tools.r8.utils.Timing$MemInfo.usedDelta(com.android.tools.r8.utils.Timing$MemInfo):115:115 -> a
-    65:65:void printMemory(int):224 -> a
-    66:66:void printMemory(int):224:224 -> a
-    67:67:void printMemory(int):217:217 -> a
-    1:1:java.lang.String toString():161:161 -> toString
-    2:2:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> toString
-    2:2:java.lang.String toString():161 -> toString
-    3:3:java.lang.String toString():161:161 -> toString
-    4:4:java.lang.String com.android.tools.r8.utils.Timing.prettyTime(long):338:338 -> toString
+    35:35:void report(int,com.android.tools.r8.utils.Timing$Node):185 -> a
+    36:36:void report(int,com.android.tools.r8.utils.Timing$Node):185:185 -> a
+    37:44:void report(int,com.android.tools.r8.utils.Timing$Node):181:188 -> a
+    51:51:void lambda$report$0(int,com.android.tools.r8.utils.Timing$Node,com.android.tools.r8.utils.Timing$Node):188:188 -> a
+    52:64:void printMemory(int):200:212 -> a
+    65:65:long com.android.tools.r8.utils.Timing$MemInfo.usedDelta(com.android.tools.r8.utils.Timing$MemInfo):105:105 -> a
+    65:65:void printMemory(int):214 -> a
+    66:66:void printMemory(int):214:214 -> a
+    67:67:void printMemory(int):207:207 -> a
+    1:1:java.lang.String toString():151:151 -> toString
+    2:2:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> toString
+    2:2:java.lang.String toString():151 -> toString
+    3:3:java.lang.String toString():151:151 -> toString
+    4:4:java.lang.String com.android.tools.r8.utils.Timing.prettyTime(long):328:328 -> toString
     4:4:java.lang.String com.android.tools.r8.utils.Timing.access$300(long):25 -> toString
-    4:4:java.lang.String toString():161 -> toString
-    5:5:java.lang.String toString():161:161 -> toString
-com.android.tools.r8.utils.Timing$TimingMerger -> com.android.tools.r8.internal.PY:
+    4:4:java.lang.String toString():151 -> toString
+    5:5:java.lang.String toString():151:151 -> toString
+com.android.tools.r8.utils.Timing$TimingMerger -> com.android.tools.r8.internal.QY:
     boolean $assertionsDisabled -> e
     com.android.tools.r8.utils.Timing$Node slowest -> d
     int taskCount -> c
     com.android.tools.r8.utils.Timing$Node parent -> a
     com.android.tools.r8.utils.Timing$Node merged -> b
-    1:1:void <clinit>():230:230 -> <clinit>
-    1:1:void <init>(java.lang.String,int,com.android.tools.r8.utils.Timing,com.android.tools.r8.utils.Timing$1):230:230 -> <init>
-    2:2:void <init>(java.lang.String,int,com.android.tools.r8.utils.Timing):237:237 -> <init>
-    3:9:void <init>(java.lang.String,int,com.android.tools.r8.utils.Timing):234:240 -> <init>
-    1:1:com.android.tools.r8.utils.Timing$Node access$1000(com.android.tools.r8.utils.Timing$TimingMerger):230:230 -> a
-    2:18:void add(java.util.Collection):291:307 -> a
-    19:23:void lambda$add$1(com.android.tools.r8.utils.Timing$TimingMerger$Item,boolean,java.util.Deque,java.lang.String,com.android.tools.r8.utils.Timing$Node):309:313 -> a
-    24:24:com.android.tools.r8.utils.Timing$Node lambda$add$0(boolean,java.lang.String):310:310 -> a
-    25:26:void end():320:321 -> a
-    1:1:int access$900(com.android.tools.r8.utils.Timing$TimingMerger):230:230 -> b
-com.android.tools.r8.utils.Timing$TimingMerger$1 -> com.android.tools.r8.internal.NY:
+    1:1:void <clinit>():220:220 -> <clinit>
+    1:1:void <init>(java.lang.String,int,com.android.tools.r8.utils.Timing,com.android.tools.r8.utils.Timing$1):220:220 -> <init>
+    2:2:void <init>(java.lang.String,int,com.android.tools.r8.utils.Timing):227:227 -> <init>
+    3:9:void <init>(java.lang.String,int,com.android.tools.r8.utils.Timing):224:230 -> <init>
+    1:1:com.android.tools.r8.utils.Timing$Node access$1000(com.android.tools.r8.utils.Timing$TimingMerger):220:220 -> a
+    2:18:void add(java.util.Collection):281:297 -> a
+    19:23:void lambda$add$1(com.android.tools.r8.utils.Timing$TimingMerger$Item,boolean,java.util.Deque,java.lang.String,com.android.tools.r8.utils.Timing$Node):299:303 -> a
+    24:24:com.android.tools.r8.utils.Timing$Node lambda$add$0(boolean,java.lang.String):300:300 -> a
+    25:26:void end():310:311 -> a
+    1:1:int access$900(com.android.tools.r8.utils.Timing$TimingMerger):220:220 -> b
+com.android.tools.r8.utils.Timing$TimingMerger$1 -> com.android.tools.r8.internal.OY:
     boolean $assertionsDisabled -> k
     int val$numberOfThreads -> i
     com.android.tools.r8.utils.Timing$TimingMerger this$0 -> j
-    1:1:void <clinit>():240:240 -> <clinit>
-    1:1:void <init>(com.android.tools.r8.utils.Timing$TimingMerger,java.lang.String,boolean,int):240:240 -> <init>
-    1:1:void report(int,com.android.tools.r8.utils.Timing$Node):243:243 -> a
-    2:2:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    2:2:void report(int,com.android.tools.r8.utils.Timing$Node):243 -> a
-    3:3:void report(int,com.android.tools.r8.utils.Timing$Node):243:243 -> a
-    4:5:void com.android.tools.r8.utils.Timing$Node.printPrefix(int):204:205 -> a
-    4:5:void report(int,com.android.tools.r8.utils.Timing$Node):244 -> a
-    6:10:void report(int,com.android.tools.r8.utils.Timing$Node):245:249 -> a
-    11:11:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    11:11:void report(int,com.android.tools.r8.utils.Timing$Node):249 -> a
+    1:1:void <clinit>():230:230 -> <clinit>
+    1:1:void <init>(com.android.tools.r8.utils.Timing$TimingMerger,java.lang.String,boolean,int):230:230 -> <init>
+    1:1:void report(int,com.android.tools.r8.utils.Timing$Node):233:233 -> a
+    2:2:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    2:2:void report(int,com.android.tools.r8.utils.Timing$Node):233 -> a
+    3:3:void report(int,com.android.tools.r8.utils.Timing$Node):233:233 -> a
+    4:5:void com.android.tools.r8.utils.Timing$Node.printPrefix(int):194:195 -> a
+    4:5:void report(int,com.android.tools.r8.utils.Timing$Node):234 -> a
+    6:10:void report(int,com.android.tools.r8.utils.Timing$Node):235:239 -> a
+    11:11:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    11:11:void report(int,com.android.tools.r8.utils.Timing$Node):239 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    12:12:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    12:12:void report(int,com.android.tools.r8.utils.Timing$Node):250 -> a
-    13:14:void report(int,com.android.tools.r8.utils.Timing$Node):250:251 -> a
+    12:12:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    12:12:void report(int,com.android.tools.r8.utils.Timing$Node):240 -> a
+    13:14:void report(int,com.android.tools.r8.utils.Timing$Node):240:241 -> a
     15:15:void report(int,com.android.tools.r8.utils.Timing$Node):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":569,"2":570,"3":571}}
-    569:569:void report(int,com.android.tools.r8.utils.Timing$Node):251:251 -> a
-    570:570:void report(int,com.android.tools.r8.utils.Timing$Node):251:251 -> a
-    571:571:void report(int,com.android.tools.r8.utils.Timing$Node):251:251 -> a
-    266:273:void report(int,com.android.tools.r8.utils.Timing$Node):251:251 -> a
-    281:288:void report(int,com.android.tools.r8.utils.Timing$Node):259:266 -> a
-    289:290:void com.android.tools.r8.utils.Timing$Node.printPrefix(int):204:205 -> a
-    289:290:void report(int,com.android.tools.r8.utils.Timing$Node):267 -> a
-    291:291:void report(int,com.android.tools.r8.utils.Timing$Node):268:268 -> a
-    292:292:void report(int,com.android.tools.r8.utils.Timing$Node):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":588,"2":589,"3":590}}
-    588:588:void report(int,com.android.tools.r8.utils.Timing$Node):268:268 -> a
-    589:589:void report(int,com.android.tools.r8.utils.Timing$Node):268:268 -> a
-    590:590:void report(int,com.android.tools.r8.utils.Timing$Node):268:268 -> a
-    560:560:void report(int,com.android.tools.r8.utils.Timing$Node):268:268 -> a
-    561:561:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):165:165 -> a
-    561:561:void report(int,com.android.tools.r8.utils.Timing$Node):268 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":549,"2":550,"3":551}}
+    549:549:void report(int,com.android.tools.r8.utils.Timing$Node):241:241 -> a
+    550:550:void report(int,com.android.tools.r8.utils.Timing$Node):241:241 -> a
+    551:551:void report(int,com.android.tools.r8.utils.Timing$Node):241:241 -> a
+    256:263:void report(int,com.android.tools.r8.utils.Timing$Node):241:241 -> a
+    271:278:void report(int,com.android.tools.r8.utils.Timing$Node):249:256 -> a
+    279:280:void com.android.tools.r8.utils.Timing$Node.printPrefix(int):194:195 -> a
+    279:280:void report(int,com.android.tools.r8.utils.Timing$Node):257 -> a
+    281:281:void report(int,com.android.tools.r8.utils.Timing$Node):258:258 -> a
+    282:282:void report(int,com.android.tools.r8.utils.Timing$Node):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":568,"2":569,"3":570}}
+    568:568:void report(int,com.android.tools.r8.utils.Timing$Node):258:258 -> a
+    569:569:void report(int,com.android.tools.r8.utils.Timing$Node):258:258 -> a
+    570:570:void report(int,com.android.tools.r8.utils.Timing$Node):258:258 -> a
+    540:540:void report(int,com.android.tools.r8.utils.Timing$Node):258:258 -> a
+    541:541:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):155:155 -> a
+    541:541:void report(int,com.android.tools.r8.utils.Timing$Node):258 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    562:562:void report(int,com.android.tools.r8.utils.Timing$Node):268:268 -> a
-    563:563:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):166:166 -> a
-    563:563:void report(int,com.android.tools.r8.utils.Timing$Node):268 -> a
-    564:564:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    564:564:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):166 -> a
-    564:564:void report(int,com.android.tools.r8.utils.Timing$Node):268 -> a
-    565:565:long com.android.tools.r8.utils.Timing$Node.duration():156:156 -> a
-    565:565:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):166 -> a
+    542:542:void report(int,com.android.tools.r8.utils.Timing$Node):258:258 -> a
+    543:543:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):156:156 -> a
+    543:543:void report(int,com.android.tools.r8.utils.Timing$Node):258 -> a
+    544:544:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    544:544:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):156 -> a
+    544:544:void report(int,com.android.tools.r8.utils.Timing$Node):258 -> a
+    545:545:long com.android.tools.r8.utils.Timing$Node.duration():146:146 -> a
+    545:545:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):156 -> a
       # {"id":"com.android.tools.r8.rewriteFrame","conditions":["throws(Ljava/lang/NullPointerException;)"],"actions":["removeInnerFrames(1)"]}
-    565:565:void report(int,com.android.tools.r8.utils.Timing$Node):268 -> a
-    566:566:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):166:166 -> a
-    566:566:void report(int,com.android.tools.r8.utils.Timing$Node):268 -> a
-    567:568:void report(int,com.android.tools.r8.utils.Timing$Node):268:269 -> a
-    591:591:void lambda$report$0(int,java.lang.String,com.android.tools.r8.utils.Timing$Node):264:264 -> a
-    1:1:void lambda$report$1(int,java.lang.String,com.android.tools.r8.utils.Timing$Node):269:269 -> b
+    545:545:void report(int,com.android.tools.r8.utils.Timing$Node):258 -> a
+    546:546:java.lang.String com.android.tools.r8.utils.Timing$Node.toString(com.android.tools.r8.utils.Timing$Node):156:156 -> a
+    546:546:void report(int,com.android.tools.r8.utils.Timing$Node):258 -> a
+    547:548:void report(int,com.android.tools.r8.utils.Timing$Node):258:259 -> a
+    571:571:void lambda$report$0(int,java.lang.String,com.android.tools.r8.utils.Timing$Node):254:254 -> a
+    1:1:void lambda$report$1(int,java.lang.String,com.android.tools.r8.utils.Timing$Node):259:259 -> b
     1:1:java.lang.String toString():0:0 -> toString
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":277,"2":278,"3":279}}
-    277:277:java.lang.String toString():275:275 -> toString
-    278:278:java.lang.String toString():275:275 -> toString
-    279:279:java.lang.String toString():275:275 -> toString
-    276:276:java.lang.String toString():275:275 -> toString
-com.android.tools.r8.utils.Timing$TimingMerger$Item -> com.android.tools.r8.internal.OY:
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":267,"2":268,"3":269}}
+    267:267:java.lang.String toString():265:265 -> toString
+    268:268:java.lang.String toString():265:265 -> toString
+    269:269:java.lang.String toString():265:265 -> toString
+    266:266:java.lang.String toString():265:265 -> toString
+com.android.tools.r8.utils.Timing$TimingMerger$Item -> com.android.tools.r8.internal.PY:
     com.android.tools.r8.utils.Timing$Node mergeTarget -> a
     com.android.tools.r8.utils.Timing$Node mergeSource -> b
-    1:3:void <init>(com.android.tools.r8.utils.Timing$Node,com.android.tools.r8.utils.Timing$Node):284:286 -> <init>
-com.android.tools.r8.utils.Timing$TimingScope -> com.android.tools.r8.internal.QY:
-    java.lang.Object apply() -> a
+    1:3:void <init>(com.android.tools.r8.utils.Timing$Node,com.android.tools.r8.utils.Timing$Node):274:276 -> <init>
 com.android.tools.r8.utils.TraversalContinuation -> com.android.tools.r8.internal.mZ:
     1:1:void <init>():10:10 -> <init>
     com.android.tools.r8.utils.TraversalContinuation$Break asBreak() -> a
@@ -126105,81 +126108,85 @@
     1:2:com.android.tools.r8.utils.WorkList newIdentityWorkList(java.lang.Object):40:41 -> f
     3:4:java.lang.Object next():128:129 -> f
     1:2:java.lang.Object removeSeen():133:134 -> g
-com.android.tools.r8.utils.ZipUtils -> com.android.tools.r8.utils.C:
+com.android.tools.r8.utils.ZipUtils -> com.android.tools.r8.utils.D:
     boolean $assertionsDisabled -> a
     int $r8$clinit -> b
-    1:1:void <clinit>():44:44 -> <clinit>
-    boolean lambda$unzip$1(java.util.zip.ZipEntry) -> a
-    1:12:void writeResourcesToZip(java.util.List,java.util.Set,com.android.tools.r8.com.google.common.io.Closer,java.util.zip.ZipOutputStream):52:63 -> a
-    13:13:void iter(java.lang.String,com.android.tools.r8.utils.ZipUtils$OnEntryHandler):72:72 -> a
-    14:20:void iter(java.nio.file.Path,com.android.tools.r8.utils.ZipUtils$OnEntryHandler):76:82 -> a
-    21:25:void iter(java.nio.file.Path,com.android.tools.r8.utils.ZipUtils$OnEntryHandler):80:84 -> a
-    26:34:void iter(java.nio.file.Path,com.android.tools.r8.utils.ZipUtils$OnEntryHandler):76:84 -> a
-    35:35:void $closeResource(java.lang.Throwable,java.lang.AutoCloseable):84:84 -> a
-    36:39:byte[] readSingleEntry(java.nio.file.Path,java.lang.String):88:88 -> a
-    41:41:byte[] readSingleEntry(java.nio.file.Path,java.lang.String):90:90 -> a
-    42:42:boolean lambda$zip$0(java.nio.file.Path):96:96 -> a
-    43:48:void zip(java.util.zip.ZipOutputStream,java.nio.file.Path,java.util.Collection):111:116 -> a
-    49:49:void zip(java.util.zip.ZipOutputStream,java.nio.file.Path,java.util.Collection):115:115 -> a
-    50:58:void zip(java.util.zip.ZipOutputStream,java.nio.file.Path,java.util.Collection):114:122 -> a
-    59:61:java.util.List unzip(java.nio.file.Path,java.nio.file.Path):131:133 -> a
-    62:62:java.util.List unzip(java.lang.String,java.io.File):137:137 -> a
-    63:65:java.util.List unzip(java.lang.String,java.io.File,java.util.function.Predicate):142:144 -> a
-    66:76:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):145:155 -> a
-    77:77:long com.android.tools.r8.com.google.common.io.ByteStreams.copy(java.io.InputStream,java.io.OutputStream):104:104 -> a
-    77:77:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):155 -> a
-    78:78:java.lang.Object com.android.tools.r8.com.google.common.base.Preconditions.checkNotNull(java.lang.Object):880:880 -> a
-    78:78:long com.android.tools.r8.com.google.common.io.ByteStreams.copy(java.io.InputStream,java.io.OutputStream):104 -> a
-    78:78:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):155 -> a
-    79:79:byte[] com.android.tools.r8.com.google.common.io.ByteStreams.createBuffer():59:59 -> a
-    79:79:long com.android.tools.r8.com.google.common.io.ByteStreams.copy(java.io.InputStream,java.io.OutputStream):106 -> a
-    79:79:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):155 -> a
-    80:80:long com.android.tools.r8.com.google.common.io.ByteStreams.copy(java.io.InputStream,java.io.OutputStream):109:109 -> a
-    80:80:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):155 -> a
-    81:82:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):156:157 -> a
-    83:83:long com.android.tools.r8.com.google.common.io.ByteStreams.copy(java.io.InputStream,java.io.OutputStream):113:113 -> a
-    83:83:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):155 -> a
-    84:86:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):154:156 -> a
-    87:87:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):149:149 -> a
-    88:88:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):0:0 -> a
-      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":91,"2":92,"3":93,"4":94,"5":95,"6":96}}
-    91:91:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):149:149 -> a
-    92:92:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):149:149 -> a
-    93:93:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):149:149 -> a
-    94:94:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):149:149 -> a
-    95:95:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):149:149 -> a
-    96:96:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):149:149 -> a
-    89:89:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String):22:22 -> a
-    89:89:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):149 -> a
-    90:90:void lambda$unzip$3(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):149:149 -> a
-    97:97:void writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,byte[],int):166:166 -> a
-    98:110:void writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,com.android.tools.r8.ByteDataView,int):172:184 -> a
-    98:110:void writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,byte[],int):166 -> a
-    111:118:boolean isClassFile(java.lang.String):193:200 -> a
-    119:119:java.lang.String zipEntryNameForClass(java.lang.Class):253:253 -> a
-    boolean lambda$unzip$2(java.util.zip.ZipEntry) -> b
-    1:4:void zip(java.nio.file.Path,java.nio.file.Path):94:97 -> b
-    5:9:void zip(java.nio.file.Path,java.nio.file.Path,java.util.Collection):103:103 -> b
-    5:9:void zip(java.nio.file.Path,java.nio.file.Path):98 -> b
-    12:12:void zip(java.nio.file.Path,java.nio.file.Path,java.util.Collection):106:106 -> b
-    12:12:void zip(java.nio.file.Path,java.nio.file.Path):98 -> b
-com.android.tools.r8.utils.ZipUtils$OnEntryHandler -> com.android.tools.r8.utils.C$a:
+    1:1:void <clinit>():45:45 -> <clinit>
+    boolean lambda$unzip$3(java.util.zip.ZipEntry) -> a
+    1:12:void writeResourcesToZip(java.util.List,java.util.Set,com.android.tools.r8.com.google.common.io.Closer,java.util.zip.ZipOutputStream):53:64 -> a
+    13:13:void iter(java.lang.String,com.android.tools.r8.utils.ZipUtils$OnEntryHandler):73:73 -> a
+    14:20:void iter(java.nio.file.Path,com.android.tools.r8.utils.ZipUtils$OnEntryHandler):77:83 -> a
+    21:25:void iter(java.nio.file.Path,com.android.tools.r8.utils.ZipUtils$OnEntryHandler):81:85 -> a
+    26:34:void iter(java.nio.file.Path,com.android.tools.r8.utils.ZipUtils$OnEntryHandler):77:85 -> a
+    35:35:void $closeResource(java.lang.Throwable,java.lang.AutoCloseable):85:85 -> a
+    36:42:java.nio.file.Path map(java.nio.file.Path,java.nio.file.Path,java.util.function.BiFunction):91:97 -> a
+    43:43:void lambda$map$0(com.android.tools.r8.utils.ZipUtils$ZipBuilder,java.util.function.BiFunction,java.util.zip.ZipEntry,java.io.InputStream):95:95 -> a
+    44:52:java.nio.file.Path filter(java.nio.file.Path,java.nio.file.Path,java.util.function.Predicate):102:110 -> a
+    53:54:void lambda$filter$1(java.util.function.Predicate,com.android.tools.r8.utils.ZipUtils$ZipBuilder,java.util.zip.ZipEntry,java.io.InputStream):106:107 -> a
+    55:58:byte[] readSingleEntry(java.nio.file.Path,java.lang.String):114:114 -> a
+    60:60:byte[] readSingleEntry(java.nio.file.Path,java.lang.String):116:116 -> a
+    61:61:boolean lambda$zip$2(java.nio.file.Path):122:122 -> a
+    62:67:void zip(java.util.zip.ZipOutputStream,java.nio.file.Path,java.util.Collection):137:142 -> a
+    68:68:void zip(java.util.zip.ZipOutputStream,java.nio.file.Path,java.util.Collection):141:141 -> a
+    69:77:void zip(java.util.zip.ZipOutputStream,java.nio.file.Path,java.util.Collection):140:148 -> a
+    78:80:java.util.List unzip(java.nio.file.Path,java.nio.file.Path):157:159 -> a
+    81:81:java.util.List unzip(java.lang.String,java.io.File):163:163 -> a
+    82:84:java.util.List unzip(java.lang.String,java.io.File,java.util.function.Predicate):168:170 -> a
+    85:95:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):171:181 -> a
+    96:96:long com.android.tools.r8.com.google.common.io.ByteStreams.copy(java.io.InputStream,java.io.OutputStream):104:104 -> a
+    96:96:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):181 -> a
+    97:97:java.lang.Object com.android.tools.r8.com.google.common.base.Preconditions.checkNotNull(java.lang.Object):880:880 -> a
+    97:97:long com.android.tools.r8.com.google.common.io.ByteStreams.copy(java.io.InputStream,java.io.OutputStream):104 -> a
+    97:97:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):181 -> a
+    98:98:byte[] com.android.tools.r8.com.google.common.io.ByteStreams.createBuffer():59:59 -> a
+    98:98:long com.android.tools.r8.com.google.common.io.ByteStreams.copy(java.io.InputStream,java.io.OutputStream):106 -> a
+    98:98:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):181 -> a
+    99:99:long com.android.tools.r8.com.google.common.io.ByteStreams.copy(java.io.InputStream,java.io.OutputStream):109:109 -> a
+    99:99:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):181 -> a
+    100:101:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):182:183 -> a
+    102:102:long com.android.tools.r8.com.google.common.io.ByteStreams.copy(java.io.InputStream,java.io.OutputStream):113:113 -> a
+    102:102:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):181 -> a
+    103:105:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):180:182 -> a
+    106:106:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):175:175 -> a
+    107:107:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):0:0 -> a
+      # {"id":"com.android.tools.r8.outlineCallsite","positions":{"1":110,"2":111,"3":112,"4":113,"5":114,"6":115}}
+    110:110:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):175:175 -> a
+    111:111:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):175:175 -> a
+    112:112:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):175:175 -> a
+    113:113:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):175:175 -> a
+    114:114:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):175:175 -> a
+    115:115:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):175:175 -> a
+    108:108:void com.android.tools.r8.errors.CompilationError.<init>(java.lang.String):22:22 -> a
+    108:108:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):175 -> a
+    109:109:void lambda$unzip$5(java.util.function.Predicate,java.nio.file.Path,java.util.List,java.util.zip.ZipEntry,java.io.InputStream):175:175 -> a
+    116:116:void writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,byte[],int):192:192 -> a
+    117:129:void writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,com.android.tools.r8.ByteDataView,int):198:210 -> a
+    117:129:void writeToZipStream(java.util.zip.ZipOutputStream,java.lang.String,byte[],int):192 -> a
+    130:137:boolean isClassFile(java.lang.String):219:226 -> a
+    138:138:java.lang.String zipEntryNameForClass(java.lang.Class):279:279 -> a
+    boolean lambda$unzip$4(java.util.zip.ZipEntry) -> b
+    1:4:void zip(java.nio.file.Path,java.nio.file.Path):120:123 -> b
+    5:9:void zip(java.nio.file.Path,java.nio.file.Path,java.util.Collection):129:129 -> b
+    5:9:void zip(java.nio.file.Path,java.nio.file.Path):124 -> b
+    12:12:void zip(java.nio.file.Path,java.nio.file.Path,java.util.Collection):132:132 -> b
+    12:12:void zip(java.nio.file.Path,java.nio.file.Path):124 -> b
+com.android.tools.r8.utils.ZipUtils$OnEntryHandler -> com.android.tools.r8.utils.D$a:
     void onEntry(java.util.zip.ZipEntry,java.io.InputStream) -> a
-com.android.tools.r8.utils.ZipUtils$ZipBuilder -> com.android.tools.r8.utils.C$b:
+com.android.tools.r8.utils.ZipUtils$ZipBuilder -> com.android.tools.r8.utils.D$b:
     java.util.zip.ZipOutputStream stream -> b
     java.nio.file.Path zipFile -> a
-    1:3:void <init>(java.nio.file.Path):207:209 -> <init>
-    1:1:com.android.tools.r8.utils.ZipUtils$ZipBuilder builder(java.nio.file.Path):213:213 -> a
-    2:7:com.android.tools.r8.utils.ZipUtils$ZipBuilder addFilesRelative(java.nio.file.Path,java.util.Collection):218:223 -> a
-    8:8:com.android.tools.r8.utils.ZipUtils$ZipBuilder addFilesRelative(java.nio.file.Path,java.util.Collection):222:222 -> a
-    9:17:com.android.tools.r8.utils.ZipUtils$ZipBuilder addFilesRelative(java.nio.file.Path,java.util.Collection):221:229 -> a
-    18:18:com.android.tools.r8.utils.ZipUtils$ZipBuilder addFilesRelative(java.nio.file.Path,java.nio.file.Path[]):235:235 -> a
-    19:22:com.android.tools.r8.utils.ZipUtils$ZipBuilder addBytes(java.lang.String,byte[]):239:242 -> a
-    23:24:java.nio.file.Path build():247:248 -> a
-com.android.tools.r8.utils.classhierarchy.MethodOverridesCollector -> com.android.tools.r8.internal.VE:
+    1:3:void <init>(java.nio.file.Path):233:235 -> <init>
+    1:1:com.android.tools.r8.utils.ZipUtils$ZipBuilder builder(java.nio.file.Path):239:239 -> a
+    2:7:com.android.tools.r8.utils.ZipUtils$ZipBuilder addFilesRelative(java.nio.file.Path,java.util.Collection):244:249 -> a
+    8:8:com.android.tools.r8.utils.ZipUtils$ZipBuilder addFilesRelative(java.nio.file.Path,java.util.Collection):248:248 -> a
+    9:17:com.android.tools.r8.utils.ZipUtils$ZipBuilder addFilesRelative(java.nio.file.Path,java.util.Collection):247:255 -> a
+    18:18:com.android.tools.r8.utils.ZipUtils$ZipBuilder addFilesRelative(java.nio.file.Path,java.nio.file.Path[]):261:261 -> a
+    19:22:com.android.tools.r8.utils.ZipUtils$ZipBuilder addBytes(java.lang.String,byte[]):265:268 -> a
+    23:24:java.nio.file.Path build():273:274 -> a
+com.android.tools.r8.utils.classhierarchy.MethodOverridesCollector -> com.android.tools.r8.internal.WE:
     1:31:com.android.tools.r8.utils.collections.ProgramMethodSet findAllMethodsAndOverridesThatMatches(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ImmediateProgramSubtypingInfo,java.util.Collection,java.util.function.Predicate):36:66 -> a
     32:36:void lambda$findAllMethodsAndOverridesThatMatches$0(java.util.function.Predicate,com.android.tools.r8.graph.DexProgramClass,com.android.tools.r8.utils.collections.ProgramMethodSet,com.android.tools.r8.utils.collections.ProgramMethodSet,com.android.tools.r8.graph.ProgramMethod):42:46 -> a
-com.android.tools.r8.utils.classhierarchy.MethodOverridesCollector$InterfaceMethodToClassSiblingPropagator -> com.android.tools.r8.internal.TE:
+com.android.tools.r8.utils.classhierarchy.MethodOverridesCollector$InterfaceMethodToClassSiblingPropagator -> com.android.tools.r8.internal.UE:
     com.android.tools.r8.utils.collections.ProgramMethodSet classRootMethods -> f
     java.util.Map interfaceMethodsOfInterest -> g
     1:1:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ImmediateProgramSubtypingInfo,com.android.tools.r8.utils.collections.ProgramMethodSet,com.android.tools.r8.utils.collections.ProgramMethodSet):81:81 -> <init>
@@ -126199,7 +126206,7 @@
     21:21:com.android.tools.r8.graph.MethodResolutionResult com.android.tools.r8.graph.AppInfoWithClassHierarchy.resolveMethodOnClass(com.android.tools.r8.graph.DexMethodSignature,com.android.tools.r8.graph.DexClass):783:783 -> k
     21:21:void visit(com.android.tools.r8.graph.DexProgramClass):114 -> k
     22:33:void visit(com.android.tools.r8.graph.DexProgramClass):115:126 -> k
-com.android.tools.r8.utils.classhierarchy.MethodOverridesCollector$TopDownClassHierarchyPropagator -> com.android.tools.r8.internal.UE:
+com.android.tools.r8.utils.classhierarchy.MethodOverridesCollector$TopDownClassHierarchyPropagator -> com.android.tools.r8.internal.VE:
     com.android.tools.r8.utils.collections.ProgramMethodSet result -> g
     java.util.Map methodsOfInterest -> f
     1:1:void <init>(com.android.tools.r8.graph.AppView,com.android.tools.r8.graph.ImmediateProgramSubtypingInfo,com.android.tools.r8.utils.collections.ProgramMethodSet,com.android.tools.r8.utils.collections.ProgramMethodSet):164:164 -> <init>
@@ -126570,7 +126577,7 @@
     1:3:void <init>():41:43 -> <init>
     1:1:com.android.tools.r8.utils.collections.ImmutableInt2ReferenceSortedMap$Builder put(int,java.lang.Object):46:46 -> a
     2:2:com.android.tools.r8.utils.collections.ImmutableInt2ReferenceSortedMap build():51:51 -> a
-com.android.tools.r8.utils.collections.LongLivedClassSetBuilder -> com.android.tools.r8.internal.fD:
+com.android.tools.r8.utils.collections.LongLivedClassSetBuilder -> com.android.tools.r8.internal.gD:
     boolean $assertionsDisabled -> f
     1:1:void <clinit>():16:16 -> <clinit>
     1:1:void <init>(com.android.tools.r8.graph.GraphLens,java.util.function.IntFunction,java.util.function.IntFunction):23:23 -> <init>
@@ -126591,7 +126598,7 @@
     87:87:java.util.Set build(com.android.tools.r8.graph.AppView):70:70 -> a
     88:88:java.util.Set build(com.android.tools.r8.graph.AppView):70:70 -> a
     85:85:java.util.Set build(com.android.tools.r8.graph.AppView):70:70 -> a
-com.android.tools.r8.utils.collections.LongLivedCollectionBuilder -> com.android.tools.r8.internal.gD:
+com.android.tools.r8.utils.collections.LongLivedCollectionBuilder -> com.android.tools.r8.internal.hD:
     java.util.function.IntFunction factoryForBuilder -> b
     java.lang.Object backing -> d
     boolean $assertionsDisabled -> e
@@ -126599,7 +126606,7 @@
     com.android.tools.r8.graph.GraphLens appliedGraphLens -> c
     1:1:void <clinit>():10:10 -> <clinit>
     1:5:void <init>(com.android.tools.r8.graph.GraphLens,java.util.function.IntFunction,java.util.function.IntFunction):27:31 -> <init>
-com.android.tools.r8.utils.collections.LongLivedProgramMethodMapBuilder -> com.android.tools.r8.internal.hD:
+com.android.tools.r8.utils.collections.LongLivedProgramMethodMapBuilder -> com.android.tools.r8.internal.iD:
     boolean $assertionsDisabled -> f
     1:1:void <clinit>():23:23 -> <clinit>
     1:1:void <init>(com.android.tools.r8.graph.GraphLens,java.util.function.IntFunction,java.util.function.IntFunction):30:30 -> <init>
@@ -126626,7 +126633,7 @@
     32:32:com.android.tools.r8.utils.collections.ProgramMethodMap build(com.android.tools.r8.graph.AppView,java.util.function.Function):92 -> a
     33:34:com.android.tools.r8.utils.collections.ProgramMethodMap build(com.android.tools.r8.graph.AppView,java.util.function.Function):94:95 -> a
     35:40:void lambda$build$2(com.android.tools.r8.graph.AppView,com.android.tools.r8.utils.collections.ProgramMethodMap,java.util.function.Function,com.android.tools.r8.graph.DexMethod,java.lang.Object):97:102 -> a
-com.android.tools.r8.utils.collections.LongLivedProgramMethodSetBuilder -> com.android.tools.r8.internal.iD:
+com.android.tools.r8.utils.collections.LongLivedProgramMethodSetBuilder -> com.android.tools.r8.internal.jD:
     java.util.function.IntFunction factoryForBuilder -> b
     java.util.Set methods -> d
     boolean $assertionsDisabled -> e
@@ -126680,11 +126687,11 @@
     1:13:com.android.tools.r8.utils.collections.LongLivedProgramMethodSetBuilder rewrittenWithLens(com.android.tools.r8.graph.GraphLens):143:155 -> c
     1:4:boolean verifyIsRewrittenWithNewerLens(com.android.tools.r8.graph.GraphLens):180:183 -> d
     5:5:boolean verifyIsRewrittenWithNewerLens(com.android.tools.r8.graph.GraphLens):182:182 -> d
-com.android.tools.r8.utils.collections.MutableBidirectionalManyToOneMap -> com.android.tools.r8.internal.rG:
+com.android.tools.r8.utils.collections.MutableBidirectionalManyToOneMap -> com.android.tools.r8.internal.sG:
     void put(java.lang.Iterable,java.lang.Object) -> a
-com.android.tools.r8.utils.collections.MutableBidirectionalManyToOneRepresentativeMap -> com.android.tools.r8.internal.sG:
-com.android.tools.r8.utils.collections.MutableBidirectionalOneToManyRepresentativeMap -> com.android.tools.r8.internal.tG:
-com.android.tools.r8.utils.collections.ProgramFieldSet -> com.android.tools.r8.internal.iN:
+com.android.tools.r8.utils.collections.MutableBidirectionalManyToOneRepresentativeMap -> com.android.tools.r8.internal.tG:
+com.android.tools.r8.utils.collections.MutableBidirectionalOneToManyRepresentativeMap -> com.android.tools.r8.internal.uG:
+com.android.tools.r8.utils.collections.ProgramFieldSet -> com.android.tools.r8.internal.jN:
     java.util.Map backing -> b
     com.android.tools.r8.utils.collections.ProgramFieldSet EMPTY -> c
     boolean $assertionsDisabled -> d
@@ -126698,7 +126705,7 @@
     1:1:com.android.tools.r8.utils.collections.ProgramFieldSet empty():34:34 -> b
     2:2:boolean contains(com.android.tools.r8.graph.ProgramField):60:60 -> b
     1:1:java.util.Iterator iterator():73:73 -> iterator
-com.android.tools.r8.utils.collections.ProgramMemberMap -> com.android.tools.r8.internal.kN:
+com.android.tools.r8.utils.collections.ProgramMemberMap -> com.android.tools.r8.internal.lN:
     java.util.Map backing -> a
     1:2:void <init>(java.util.function.Supplier):20:21 -> <init>
     3:4:void <init>(java.util.Map):24:25 -> <init>
@@ -126717,7 +126724,7 @@
     15:15:void removeIf(java.util.function.BiPredicate):75:75 -> a
     1:1:java.lang.Object get(com.android.tools.r8.graph.ProgramMember):49:49 -> b
     com.android.tools.r8.com.google.common.base.Equivalence$Wrapper wrap(com.android.tools.r8.graph.ProgramMember) -> c
-com.android.tools.r8.utils.collections.ProgramMethodMap -> com.android.tools.r8.internal.mN:
+com.android.tools.r8.utils.collections.ProgramMethodMap -> com.android.tools.r8.internal.nN:
     com.android.tools.r8.utils.collections.ProgramMethodMap EMPTY -> b
     1:1:void <clinit>():18:18 -> <clinit>
     1:1:void <init>(java.util.function.Supplier):21:21 -> <init>
@@ -126729,7 +126736,7 @@
     2:2:com.android.tools.r8.com.google.common.base.Equivalence$Wrapper wrap(com.android.tools.r8.graph.ProgramMember):16 -> c
     3:3:com.android.tools.r8.utils.collections.ProgramMethodMap createConcurrent():37:37 -> c
     1:1:com.android.tools.r8.utils.collections.ProgramMethodMap empty():42:42 -> d
-com.android.tools.r8.utils.collections.ProgramMethodMultiset -> com.android.tools.r8.internal.nN:
+com.android.tools.r8.utils.collections.ProgramMethodMultiset -> com.android.tools.r8.internal.oN:
     com.android.tools.r8.com.google.common.collect.Multiset backing -> a
     1:2:void <init>(com.android.tools.r8.com.google.common.collect.Multiset):22:23 -> <init>
     1:1:com.android.tools.r8.utils.collections.ProgramMethodMultiset createConcurrent():27:27 -> a
@@ -126742,7 +126749,7 @@
     7:7:boolean lambda$removeIf$1(java.util.function.Predicate,com.android.tools.r8.com.google.common.base.Equivalence$Wrapper):47:47 -> a
     8:8:boolean removeIf(java.util.function.Predicate):47:47 -> a
     1:1:int size():51:51 -> b
-com.android.tools.r8.utils.collections.ProgramMethodSet -> com.android.tools.r8.internal.oN:
+com.android.tools.r8.utils.collections.ProgramMethodSet -> com.android.tools.r8.internal.pN:
     com.android.tools.r8.utils.collections.ProgramMethodSet EMPTY -> e
     1:1:void <clinit>():23:23 -> <clinit>
     1:1:void <init>(java.util.function.Supplier):26:26 -> <init>
@@ -126770,7 +126777,7 @@
     1:1:com.android.tools.r8.utils.collections.ProgramMethodSet createLinked():66:66 -> e
     1:1:com.android.tools.r8.utils.collections.ProgramMethodSet empty():70:70 -> f
     1:1:com.android.tools.r8.utils.collections.ProgramMethodSet create(int):40:40 -> h
-com.android.tools.r8.utils.collections.SortedProgramMethodSet -> com.android.tools.r8.internal.EV:
+com.android.tools.r8.utils.collections.SortedProgramMethodSet -> com.android.tools.r8.internal.FV:
     1:1:void <clinit>():25:25 -> <clinit>
     1:1:void <init>(java.util.function.Supplier):29:29 -> <init>
     1:1:com.android.tools.r8.utils.collections.ProgramMethodSet rewrittenWithLens(com.android.tools.r8.graph.DexDefinitionSupplier,com.android.tools.r8.graph.GraphLens):23:23 -> a
@@ -127098,7 +127105,7 @@
     5:5:com.android.tools.r8.utils.structural.StructuralSpecification withCustomItemIterator(java.util.function.Function,com.android.tools.r8.utils.structural.StructuralItem$CompareToAccept,com.android.tools.r8.utils.structural.StructuralItem$HashingAccept):86 -> b
     1:3:com.android.tools.r8.utils.structural.HashingVisitorWithTypeEquivalence$ItemSpecification com.android.tools.r8.utils.structural.HashingVisitorWithTypeEquivalence$ItemSpecification.withShortArray(java.util.function.Function):143:145 -> i
     1:3:com.android.tools.r8.utils.structural.StructuralSpecification withShortArray(java.util.function.Function):86 -> i
-com.android.tools.r8.utils.structural.Ordered -> com.android.tools.r8.internal.eL:
+com.android.tools.r8.utils.structural.Ordered -> com.android.tools.r8.internal.fL:
     1:1:void <clinit>():7:7 -> <clinit>
     1:2:boolean isEqualTo(java.lang.Object):16:17 -> a
     3:3:com.android.tools.r8.utils.structural.Ordered maxIgnoreNull(com.android.tools.r8.utils.structural.Ordered,com.android.tools.r8.utils.structural.Ordered):45:45 -> a
@@ -127110,13 +127117,13 @@
     2:2:boolean isLessThan(java.lang.Object):49:49 -> c
     1:1:boolean isGreaterThanOrEqualTo(java.lang.Object):61:61 -> d
     1:1:boolean isLessThanOrEqualTo(java.lang.Object):53:53 -> e
-com.android.tools.r8.utils.structural.Ordered$1 -> com.android.tools.r8.internal.dL:
+com.android.tools.r8.utils.structural.Ordered$1 -> com.android.tools.r8.internal.eL:
     boolean $assertionsDisabled -> a
     1:1:void <clinit>():16:16 -> <clinit>
-com.android.tools.r8.utils.structural.RepresentativeMap -> com.android.tools.r8.internal.YS:
+com.android.tools.r8.utils.structural.RepresentativeMap -> com.android.tools.r8.internal.ZS:
     com.android.tools.r8.graph.DexType getRepresentative(com.android.tools.r8.graph.DexType) -> a
-com.android.tools.r8.utils.structural.StructuralAcceptor -> com.android.tools.r8.internal.BX:
-com.android.tools.r8.utils.structural.StructuralItem -> com.android.tools.r8.internal.DX:
+com.android.tools.r8.utils.structural.StructuralAcceptor -> com.android.tools.r8.internal.CX:
+com.android.tools.r8.utils.structural.StructuralItem -> com.android.tools.r8.internal.EX:
     com.android.tools.r8.utils.structural.StructuralItem self() -> E
     1:1:int compareTo(com.android.tools.r8.utils.structural.StructuralItem):28:28 -> a
     2:2:int compareWithTypeEquivalenceTo(com.android.tools.r8.utils.structural.StructuralItem,com.android.tools.r8.utils.structural.RepresentativeMap):39:39 -> a
@@ -127128,13 +127135,13 @@
     8:8:void acceptHashing(com.android.tools.r8.utils.structural.HashingVisitor):76:76 -> a
     1:1:int compareTo(java.lang.Object):7:7 -> compareTo
     com.android.tools.r8.utils.structural.StructuralMapping getStructuralMapping() -> n
-com.android.tools.r8.utils.structural.StructuralItem$CompareToAccept -> com.android.tools.r8.internal.CX:
+com.android.tools.r8.utils.structural.StructuralItem$CompareToAccept -> com.android.tools.r8.internal.DX:
     int acceptCompareTo(java.lang.Object,java.lang.Object,com.android.tools.r8.utils.structural.CompareToVisitor) -> a
-com.android.tools.r8.utils.structural.StructuralItem$HashingAccept -> com.android.tools.r8.internal.DX$a:
+com.android.tools.r8.utils.structural.StructuralItem$HashingAccept -> com.android.tools.r8.internal.EX$a:
     void acceptHashing(java.lang.Object,com.android.tools.r8.utils.structural.HashingVisitor) -> a
-com.android.tools.r8.utils.structural.StructuralMapping -> com.android.tools.r8.internal.EX:
+com.android.tools.r8.utils.structural.StructuralMapping -> com.android.tools.r8.internal.FX:
     void apply(com.android.tools.r8.utils.structural.StructuralSpecification) -> a
-com.android.tools.r8.utils.structural.StructuralSpecification -> com.android.tools.r8.internal.FX:
+com.android.tools.r8.utils.structural.StructuralSpecification -> com.android.tools.r8.internal.GX:
     1:1:void <init>():18:18 -> <init>
     boolean lambda$withCustomItem$0(java.lang.Object) -> a
     com.android.tools.r8.utils.structural.StructuralSpecification self() -> a
@@ -127170,7 +127177,7 @@
     void insertCastsForOperandsIfNeeded(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.GraphLens$MethodLookupResult,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.code.InstructionListIterator) -> a
     void insertCastsForOperandsIfNeeded(com.android.tools.r8.ir.code.Return,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.code.InstructionListIterator) -> a
     void processWorklist() -> a
-com.android.tools.r8.verticalclassmerging.InterfaceTypeToClassTypeLensCodeRewriterHelper -> com.android.tools.r8.internal.fu:
+com.android.tools.r8.verticalclassmerging.InterfaceTypeToClassTypeLensCodeRewriterHelper -> com.android.tools.r8.internal.gu:
     1:1:void <init>():40:40 -> <init>
     void insertCastsForOperandsIfNeeded(com.android.tools.r8.ir.code.FieldPut,com.android.tools.r8.ir.code.FieldPut,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.code.InstructionListIterator) -> a
     void insertCastsForOperandsIfNeeded(com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.ir.code.InvokeMethod,com.android.tools.r8.graph.GraphLens$MethodLookupResult,com.android.tools.r8.ir.code.BasicBlockIterator,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.ir.code.InstructionListIterator) -> a
@@ -127183,7 +127190,7 @@
     7:7:boolean lambda$create$0(com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):48:48 -> a
     8:8:boolean com.android.tools.r8.graph.GraphLens.isVerticalClassMergerLens():0:0 -> a
     8:8:boolean lambda$create$0(com.android.tools.r8.graph.GraphLens,com.android.tools.r8.graph.GraphLens$NonIdentityGraphLens):48 -> a
-com.android.tools.r8.verticalclassmerging.InterfaceTypeToClassTypeLensCodeRewriterHelperImpl -> com.android.tools.r8.internal.hu:
+com.android.tools.r8.verticalclassmerging.InterfaceTypeToClassTypeLensCodeRewriterHelperImpl -> com.android.tools.r8.internal.iu:
     java.util.Map worklist -> c
     com.android.tools.r8.graph.AppView appView -> a
     com.android.tools.r8.ir.code.IRCode code -> b
@@ -127243,7 +127250,7 @@
     125:125:com.android.tools.r8.utils.OptionalBool needsCastForOperand(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,boolean):255:255 -> a
     126:126:com.android.tools.r8.utils.OptionalBool needsCastForOperand(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,boolean):250:250 -> a
     127:127:com.android.tools.r8.utils.OptionalBool needsCastForOperand(com.android.tools.r8.ir.code.Value,com.android.tools.r8.ir.code.BasicBlock,com.android.tools.r8.graph.DexType,com.android.tools.r8.graph.DexType,boolean):245:245 -> a
-com.android.tools.r8.verticalclassmerging.InterfaceTypeToClassTypeLensCodeRewriterHelperImpl$WorklistItem -> com.android.tools.r8.internal.gu:
+com.android.tools.r8.verticalclassmerging.InterfaceTypeToClassTypeLensCodeRewriterHelperImpl$WorklistItem -> com.android.tools.r8.internal.hu:
     com.android.tools.r8.graph.DexType rewrittenType -> c
     com.android.tools.r8.graph.DexType originalType -> b
     int operandIndex -> a
