class android.hardware.location.GeofenceHardwareImpl$Reaper implements android.os.IBinder$DeathRecipient
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: android.hardware.location.GeofenceHardwareImpl$Reaper
  super_class: java.lang.Object
{
  private android.hardware.location.IGeofenceHardwareMonitorCallback mMonitorCallback;
    descriptor: Landroid/hardware/location/IGeofenceHardwareMonitorCallback;
    flags: (0x0002) ACC_PRIVATE

  private android.hardware.location.IGeofenceHardwareCallback mCallback;
    descriptor: Landroid/hardware/location/IGeofenceHardwareCallback;
    flags: (0x0002) ACC_PRIVATE

  private int mMonitoringType;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  final android.hardware.location.GeofenceHardwareImpl this$0;
    descriptor: Landroid/hardware/location/GeofenceHardwareImpl;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(android.hardware.location.GeofenceHardwareImpl, android.hardware.location.IGeofenceHardwareCallback, int);
    descriptor: (Landroid/hardware/location/GeofenceHardwareImpl;Landroid/hardware/location/IGeofenceHardwareCallback;I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
        start local 2 // android.hardware.location.IGeofenceHardwareCallback c
        start local 3 // int monitoringType
         0: .line 844
            aload 0 /* this */
            aload 1
            putfield android.hardware.location.GeofenceHardwareImpl$Reaper.this$0:Landroid/hardware/location/GeofenceHardwareImpl;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 845
            aload 0 /* this */
            aload 2 /* c */
            putfield android.hardware.location.GeofenceHardwareImpl$Reaper.mCallback:Landroid/hardware/location/IGeofenceHardwareCallback;
         2: .line 846
            aload 0 /* this */
            iload 3 /* monitoringType */
            putfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitoringType:I
         3: .line 847
            return
        end local 3 // int monitoringType
        end local 2 // android.hardware.location.IGeofenceHardwareCallback c
        end local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Landroid/hardware/location/GeofenceHardwareImpl$Reaper;
            0    4     2               c  Landroid/hardware/location/IGeofenceHardwareCallback;
            0    4     3  monitoringType  I
    MethodParameters:
                Name  Flags
      this$0          final
      c               
      monitoringType  

  void <init>(android.hardware.location.GeofenceHardwareImpl, android.hardware.location.IGeofenceHardwareMonitorCallback, int);
    descriptor: (Landroid/hardware/location/GeofenceHardwareImpl;Landroid/hardware/location/IGeofenceHardwareMonitorCallback;I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
        start local 2 // android.hardware.location.IGeofenceHardwareMonitorCallback c
        start local 3 // int monitoringType
         0: .line 849
            aload 0 /* this */
            aload 1
            putfield android.hardware.location.GeofenceHardwareImpl$Reaper.this$0:Landroid/hardware/location/GeofenceHardwareImpl;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 850
            aload 0 /* this */
            aload 2 /* c */
            putfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitorCallback:Landroid/hardware/location/IGeofenceHardwareMonitorCallback;
         2: .line 851
            aload 0 /* this */
            iload 3 /* monitoringType */
            putfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitoringType:I
         3: .line 852
            return
        end local 3 // int monitoringType
        end local 2 // android.hardware.location.IGeofenceHardwareMonitorCallback c
        end local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Landroid/hardware/location/GeofenceHardwareImpl$Reaper;
            0    4     2               c  Landroid/hardware/location/IGeofenceHardwareMonitorCallback;
            0    4     3  monitoringType  I
    MethodParameters:
                Name  Flags
      this$0          final
      c               
      monitoringType  

  public void binderDied();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
         0: .line 857
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mCallback:Landroid/hardware/location/IGeofenceHardwareCallback;
            ifnull 5
         1: .line 858
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.this$0:Landroid/hardware/location/GeofenceHardwareImpl;
            getfield android.hardware.location.GeofenceHardwareImpl.mGeofenceHandler:Landroid/os/Handler;
            bipush 6
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mCallback:Landroid/hardware/location/IGeofenceHardwareCallback;
            invokevirtual android.os.Handler.obtainMessage:(ILjava/lang/Object;)Landroid/os/Message;
            astore 1 /* m */
        start local 1 // android.os.Message m
         2: .line 859
            aload 1 /* m */
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitoringType:I
            putfield android.os.Message.arg1:I
         3: .line 860
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.this$0:Landroid/hardware/location/GeofenceHardwareImpl;
            getfield android.hardware.location.GeofenceHardwareImpl.mGeofenceHandler:Landroid/os/Handler;
            aload 1 /* m */
            invokevirtual android.os.Handler.sendMessage:(Landroid/os/Message;)Z
            pop
         4: .line 861
            goto 9
        end local 1 // android.os.Message m
      StackMap locals:
      StackMap stack:
         5: aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitorCallback:Landroid/hardware/location/IGeofenceHardwareMonitorCallback;
            ifnull 9
         6: .line 862
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.this$0:Landroid/hardware/location/GeofenceHardwareImpl;
            getfield android.hardware.location.GeofenceHardwareImpl.mCallbacksHandler:Landroid/os/Handler;
            iconst_4
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitorCallback:Landroid/hardware/location/IGeofenceHardwareMonitorCallback;
            invokevirtual android.os.Handler.obtainMessage:(ILjava/lang/Object;)Landroid/os/Message;
            astore 1 /* m */
        start local 1 // android.os.Message m
         7: .line 863
            aload 1 /* m */
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitoringType:I
            putfield android.os.Message.arg1:I
         8: .line 864
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.this$0:Landroid/hardware/location/GeofenceHardwareImpl;
            getfield android.hardware.location.GeofenceHardwareImpl.mCallbacksHandler:Landroid/os/Handler;
            aload 1 /* m */
            invokevirtual android.os.Handler.sendMessage:(Landroid/os/Message;)Z
            pop
        end local 1 // android.os.Message m
         9: .line 866
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.this$0:Landroid/hardware/location/GeofenceHardwareImpl;
            getfield android.hardware.location.GeofenceHardwareImpl.mReaperHandler:Landroid/os/Handler;
            iconst_3
            aload 0 /* this */
            invokevirtual android.os.Handler.obtainMessage:(ILjava/lang/Object;)Landroid/os/Message;
            astore 2 /* reaperMessage */
        start local 2 // android.os.Message reaperMessage
        10: .line 867
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.this$0:Landroid/hardware/location/GeofenceHardwareImpl;
            getfield android.hardware.location.GeofenceHardwareImpl.mReaperHandler:Landroid/os/Handler;
            aload 2 /* reaperMessage */
            invokevirtual android.os.Handler.sendMessage:(Landroid/os/Message;)Z
            pop
        11: .line 868
            return
        end local 2 // android.os.Message reaperMessage
        end local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   12     0           this  Landroid/hardware/location/GeofenceHardwareImpl$Reaper;
            2    5     1              m  Landroid/os/Message;
            7    9     1              m  Landroid/os/Message;
           10   12     2  reaperMessage  Landroid/os/Message;

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
         0: .line 872
            bipush 17
            istore 1 /* result */
        start local 1 // int result
         1: .line 873
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mCallback:Landroid/hardware/location/IGeofenceHardwareCallback;
            ifnull 2
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mCallback:Landroid/hardware/location/IGeofenceHardwareCallback;
            invokeinterface android.hardware.location.IGeofenceHardwareCallback.asBinder:()Landroid/os/IBinder;
            invokevirtual java.lang.Object.hashCode:()I
            goto 3
      StackMap locals: android.hardware.location.GeofenceHardwareImpl$Reaper int
      StackMap stack: int
         2: iconst_0
      StackMap locals: android.hardware.location.GeofenceHardwareImpl$Reaper int
      StackMap stack: int int
         3: iadd
            istore 1 /* result */
         4: .line 874
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitorCallback:Landroid/hardware/location/IGeofenceHardwareMonitorCallback;
            ifnull 6
         5: .line 875
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitorCallback:Landroid/hardware/location/IGeofenceHardwareMonitorCallback;
            invokeinterface android.hardware.location.IGeofenceHardwareMonitorCallback.asBinder:()Landroid/os/IBinder;
            invokevirtual java.lang.Object.hashCode:()I
            goto 7
      StackMap locals:
      StackMap stack: int
         6: iconst_0
         7: .line 874
      StackMap locals: android.hardware.location.GeofenceHardwareImpl$Reaper int
      StackMap stack: int int
            iadd
            istore 1 /* result */
         8: .line 876
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitoringType:I
            iadd
            istore 1 /* result */
         9: .line 877
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Landroid/hardware/location/GeofenceHardwareImpl$Reaper;
            1   10     1  result  I

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
        start local 1 // java.lang.Object obj
         0: .line 882
            aload 1 /* obj */
            ifnonnull 1
            iconst_0
            ireturn
         1: .line 883
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            aload 0 /* this */
            if_acmpne 2
            iconst_1
            ireturn
         2: .line 885
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            checkcast android.hardware.location.GeofenceHardwareImpl$Reaper
            astore 2 /* rhs */
        start local 2 // android.hardware.location.GeofenceHardwareImpl$Reaper rhs
         3: .line 886
            aload 0 /* this */
            aload 2 /* rhs */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mCallback:Landroid/hardware/location/IGeofenceHardwareCallback;
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mCallback:Landroid/hardware/location/IGeofenceHardwareCallback;
            invokevirtual android.hardware.location.GeofenceHardwareImpl$Reaper.binderEquals:(Landroid/os/IInterface;Landroid/os/IInterface;)Z
            ifeq 7
         4: .line 887
            aload 0 /* this */
            aload 2 /* rhs */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitorCallback:Landroid/hardware/location/IGeofenceHardwareMonitorCallback;
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitorCallback:Landroid/hardware/location/IGeofenceHardwareMonitorCallback;
            invokevirtual android.hardware.location.GeofenceHardwareImpl$Reaper.binderEquals:(Landroid/os/IInterface;Landroid/os/IInterface;)Z
            ifeq 7
         5: .line 888
            aload 2 /* rhs */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitoringType:I
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitoringType:I
            if_icmpne 7
         6: .line 886
            iconst_1
            ireturn
      StackMap locals: android.hardware.location.GeofenceHardwareImpl$Reaper
      StackMap stack:
         7: iconst_0
            ireturn
        end local 2 // android.hardware.location.GeofenceHardwareImpl$Reaper rhs
        end local 1 // java.lang.Object obj
        end local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Landroid/hardware/location/GeofenceHardwareImpl$Reaper;
            0    8     1   obj  Ljava/lang/Object;
            3    8     2   rhs  Landroid/hardware/location/GeofenceHardwareImpl$Reaper;
    MethodParameters:
      Name  Flags
      obj   

  private boolean binderEquals(android.os.IInterface, android.os.IInterface);
    descriptor: (Landroid/os/IInterface;Landroid/os/IInterface;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
        start local 1 // android.os.IInterface left
        start local 2 // android.os.IInterface right
         0: .line 896
            aload 1 /* left */
            ifnonnull 3
         1: .line 897
            aload 2 /* right */
            ifnonnull 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 899
      StackMap locals:
      StackMap stack:
            aload 2 /* right */
            ifnonnull 4
            iconst_0
            goto 6
      StackMap locals:
      StackMap stack:
         4: aload 1 /* left */
            invokeinterface android.os.IInterface.asBinder:()Landroid/os/IBinder;
            aload 2 /* right */
            invokeinterface android.os.IInterface.asBinder:()Landroid/os/IBinder;
            if_acmpne 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: ireturn
        end local 2 // android.os.IInterface right
        end local 1 // android.os.IInterface left
        end local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Landroid/hardware/location/GeofenceHardwareImpl$Reaper;
            0    7     1   left  Landroid/os/IInterface;
            0    7     2  right  Landroid/os/IInterface;
    MethodParameters:
       Name  Flags
      left   
      right  

  private boolean unlinkToDeath();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
         0: .line 907
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitorCallback:Landroid/hardware/location/IGeofenceHardwareMonitorCallback;
            ifnull 2
         1: .line 908
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mMonitorCallback:Landroid/hardware/location/IGeofenceHardwareMonitorCallback;
            invokeinterface android.hardware.location.IGeofenceHardwareMonitorCallback.asBinder:()Landroid/os/IBinder;
            aload 0 /* this */
            iconst_0
            invokeinterface android.os.IBinder.unlinkToDeath:(Landroid/os/IBinder$DeathRecipient;I)Z
            ireturn
         2: .line 909
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mCallback:Landroid/hardware/location/IGeofenceHardwareCallback;
            ifnull 4
         3: .line 910
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mCallback:Landroid/hardware/location/IGeofenceHardwareCallback;
            invokeinterface android.hardware.location.IGeofenceHardwareCallback.asBinder:()Landroid/os/IBinder;
            aload 0 /* this */
            iconst_0
            invokeinterface android.os.IBinder.unlinkToDeath:(Landroid/os/IBinder$DeathRecipient;I)Z
            ireturn
         4: .line 912
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Landroid/hardware/location/GeofenceHardwareImpl$Reaper;

  private boolean callbackEquals(android.hardware.location.IGeofenceHardwareCallback);
    descriptor: (Landroid/hardware/location/IGeofenceHardwareCallback;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
        start local 1 // android.hardware.location.IGeofenceHardwareCallback cb
         0: .line 916
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mCallback:Landroid/hardware/location/IGeofenceHardwareCallback;
            ifnull 1
            aload 0 /* this */
            getfield android.hardware.location.GeofenceHardwareImpl$Reaper.mCallback:Landroid/hardware/location/IGeofenceHardwareCallback;
            invokeinterface android.hardware.location.IGeofenceHardwareCallback.asBinder:()Landroid/os/IBinder;
            aload 1 /* cb */
            invokeinterface android.hardware.location.IGeofenceHardwareCallback.asBinder:()Landroid/os/IBinder;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // android.hardware.location.IGeofenceHardwareCallback cb
        end local 0 // android.hardware.location.GeofenceHardwareImpl$Reaper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/hardware/location/GeofenceHardwareImpl$Reaper;
            0    2     1    cb  Landroid/hardware/location/IGeofenceHardwareCallback;
    MethodParameters:
      Name  Flags
      cb    
}
SourceFile: "GeofenceHardwareImpl.java"
NestHost: android.hardware.location.GeofenceHardwareImpl
InnerClasses:
  Reaper = android.hardware.location.GeofenceHardwareImpl$Reaper of android.hardware.location.GeofenceHardwareImpl
  public abstract DeathRecipient = android.os.IBinder$DeathRecipient of android.os.IBinder