androidx.concurrent.futures.AbstractResolvableFuture$SafeAtomicHelper -> s0:
# {"id":"sourceFile","fileName":"AbstractResolvableFuture.java"}
    java.util.concurrent.atomic.AtomicReferenceFieldUpdater waiterNextUpdater -> A
    java.util.concurrent.atomic.AtomicReferenceFieldUpdater waitersUpdater -> B
    java.util.concurrent.atomic.AtomicReferenceFieldUpdater listenersUpdater -> C
    java.util.concurrent.atomic.AtomicReferenceFieldUpdater valueUpdater -> D
    java.util.concurrent.atomic.AtomicReferenceFieldUpdater waiterThreadUpdater -> z
    1:3:void androidx.concurrent.futures.AbstractResolvableFuture$AtomicHelper.<init>():1069:1069 -> <init>
    1:3:void androidx.concurrent.futures.AbstractResolvableFuture$AtomicHelper.<init>(androidx.concurrent.futures.AbstractResolvableFuture$1):1069 -> <init>
    1:3:void <init>(java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater):1105 -> <init>
    4:5:void <init>(java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater):1106:1106 -> <init>
    6:7:void <init>(java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater):1107:1107 -> <init>
    8:9:void <init>(java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater):1108:1108 -> <init>
    10:11:void <init>(java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater):1109:1109 -> <init>
    12:14:void <init>(java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater,java.util.concurrent.atomic.AtomicReferenceFieldUpdater):1110:1110 -> <init>
    1:6:void putNext(androidx.concurrent.futures.AbstractResolvableFuture$Waiter,androidx.concurrent.futures.AbstractResolvableFuture$Waiter):1120:1120 -> U
      # {"id":"com.android.tools.r8.residualsignature","signature":"(Lu0;Lu0;)V"}
    1:6:void putThread(androidx.concurrent.futures.AbstractResolvableFuture$Waiter,java.lang.Thread):1115:1115 -> V
      # {"id":"com.android.tools.r8.residualsignature","signature":"(Lu0;Ljava/lang/Thread;)V"}
    1:20:boolean java.util.concurrent.atomic.AtomicReferenceFieldUpdater.compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object):0:0 -> w
    1:20:boolean casListeners(androidx.concurrent.futures.AbstractResolvableFuture,androidx.concurrent.futures.AbstractResolvableFuture$Listener,androidx.concurrent.futures.AbstractResolvableFuture$Listener):1130 -> w
      # {"id":"com.android.tools.r8.residualsignature","signature":"(Lv0;Lr0;)Z"}
    1:18:boolean java.util.concurrent.atomic.AtomicReferenceFieldUpdater.compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object):0:0 -> x
    1:18:boolean casValue(androidx.concurrent.futures.AbstractResolvableFuture,java.lang.Object,java.lang.Object):1135 -> x
      # {"id":"com.android.tools.r8.residualsignature","signature":"(Lv0;Ljava/lang/Object;Ljava/lang/Object;)Z"}
    1:18:boolean java.util.concurrent.atomic.AtomicReferenceFieldUpdater.compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object):0:0 -> y
    1:18:boolean casWaiters(androidx.concurrent.futures.AbstractResolvableFuture,androidx.concurrent.futures.AbstractResolvableFuture$Waiter,androidx.concurrent.futures.AbstractResolvableFuture$Waiter):1125 -> y
      # {"id":"com.android.tools.r8.residualsignature","signature":"(Lv0;Lu0;Lu0;)Z"}
