public class android.net.wifi.aware.WifiAwareManager
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.net.wifi.aware.WifiAwareManager
  super_class: java.lang.Object
{
  private static final java.lang.String TAG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "WifiAwareManager"

  private static final boolean DBG;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final boolean VDBG;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final java.lang.String ACTION_WIFI_AWARE_STATE_CHANGED;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.net.wifi.aware.action.WIFI_AWARE_STATE_CHANGED"

  public static final int WIFI_AWARE_DATA_PATH_ROLE_INITIATOR;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int WIFI_AWARE_DATA_PATH_ROLE_RESPONDER;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private final android.content.Context mContext;
    descriptor: Landroid/content/Context;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final android.net.wifi.aware.IWifiAwareManager mService;
    descriptor: Landroid/net/wifi/aware/IWifiAwareManager;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.Object mLock;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(android.content.Context, android.net.wifi.aware.IWifiAwareManager);
    descriptor: (Landroid/content/Context;Landroid/net/wifi/aware/IWifiAwareManager;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // android.content.Context context
        start local 2 // android.net.wifi.aware.IWifiAwareManager service
         0: .line 172
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 169
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield android.net.wifi.aware.WifiAwareManager.mLock:Ljava/lang/Object;
         2: .line 173
            aload 0 /* this */
            aload 1 /* context */
            putfield android.net.wifi.aware.WifiAwareManager.mContext:Landroid/content/Context;
         3: .line 174
            aload 0 /* this */
            aload 2 /* service */
            putfield android.net.wifi.aware.WifiAwareManager.mService:Landroid/net/wifi/aware/IWifiAwareManager;
         4: .line 175
            return
        end local 2 // android.net.wifi.aware.IWifiAwareManager service
        end local 1 // android.content.Context context
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Landroid/net/wifi/aware/WifiAwareManager;
            0    5     1  context  Landroid/content/Context;
            0    5     2  service  Landroid/net/wifi/aware/IWifiAwareManager;
    MethodParameters:
         Name  Flags
      context  
      service  

  public boolean isAvailable();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // android.net.wifi.aware.WifiAwareManager this
         0: .line 187
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mService:Landroid/net/wifi/aware/IWifiAwareManager;
            invokeinterface android.net.wifi.aware.IWifiAwareManager.isUsageEnabled:()Z
         1: ireturn
         2: .line 188
      StackMap locals:
      StackMap stack: android.os.RemoteException
            astore 1 /* e */
        start local 1 // android.os.RemoteException e
         3: .line 189
            aload 1 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 1 // android.os.RemoteException e
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/net/wifi/aware/WifiAwareManager;
            3    4     1     e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class android.os.RemoteException

  public android.net.wifi.aware.Characteristics getCharacteristics();
    descriptor: ()Landroid/net/wifi/aware/Characteristics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // android.net.wifi.aware.WifiAwareManager this
         0: .line 201
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mService:Landroid/net/wifi/aware/IWifiAwareManager;
            invokeinterface android.net.wifi.aware.IWifiAwareManager.getCharacteristics:()Landroid/net/wifi/aware/Characteristics;
         1: areturn
         2: .line 202
      StackMap locals:
      StackMap stack: android.os.RemoteException
            astore 1 /* e */
        start local 1 // android.os.RemoteException e
         3: .line 203
            aload 1 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 1 // android.os.RemoteException e
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/net/wifi/aware/WifiAwareManager;
            3    4     1     e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class android.os.RemoteException

  public void attach(android.net.wifi.aware.AttachCallback, android.os.Handler);
    descriptor: (Landroid/net/wifi/aware/AttachCallback;Landroid/os/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // android.net.wifi.aware.AttachCallback attachCallback
        start local 2 // android.os.Handler handler
         0: .line 226
            aload 0 /* this */
            aload 2 /* handler */
            aconst_null
            aload 1 /* attachCallback */
            aconst_null
            invokevirtual android.net.wifi.aware.WifiAwareManager.attach:(Landroid/os/Handler;Landroid/net/wifi/aware/ConfigRequest;Landroid/net/wifi/aware/AttachCallback;Landroid/net/wifi/aware/IdentityChangedListener;)V
         1: .line 227
            return
        end local 2 // android.os.Handler handler
        end local 1 // android.net.wifi.aware.AttachCallback attachCallback
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Landroid/net/wifi/aware/WifiAwareManager;
            0    2     1  attachCallback  Landroid/net/wifi/aware/AttachCallback;
            0    2     2         handler  Landroid/os/Handler;
    MethodParameters:
                Name  Flags
      attachCallback  
      handler         

  public void attach(android.net.wifi.aware.AttachCallback, android.net.wifi.aware.IdentityChangedListener, android.os.Handler);
    descriptor: (Landroid/net/wifi/aware/AttachCallback;Landroid/net/wifi/aware/IdentityChangedListener;Landroid/os/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // android.net.wifi.aware.AttachCallback attachCallback
        start local 2 // android.net.wifi.aware.IdentityChangedListener identityChangedListener
        start local 3 // android.os.Handler handler
         0: .line 260
            aload 0 /* this */
            aload 3 /* handler */
            aconst_null
            aload 1 /* attachCallback */
            aload 2 /* identityChangedListener */
            invokevirtual android.net.wifi.aware.WifiAwareManager.attach:(Landroid/os/Handler;Landroid/net/wifi/aware/ConfigRequest;Landroid/net/wifi/aware/AttachCallback;Landroid/net/wifi/aware/IdentityChangedListener;)V
         1: .line 261
            return
        end local 3 // android.os.Handler handler
        end local 2 // android.net.wifi.aware.IdentityChangedListener identityChangedListener
        end local 1 // android.net.wifi.aware.AttachCallback attachCallback
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    2     0                     this  Landroid/net/wifi/aware/WifiAwareManager;
            0    2     1           attachCallback  Landroid/net/wifi/aware/AttachCallback;
            0    2     2  identityChangedListener  Landroid/net/wifi/aware/IdentityChangedListener;
            0    2     3                  handler  Landroid/os/Handler;
    MethodParameters:
                         Name  Flags
      attachCallback           
      identityChangedListener  
      handler                  

  public void attach(android.os.Handler, android.net.wifi.aware.ConfigRequest, android.net.wifi.aware.AttachCallback, android.net.wifi.aware.IdentityChangedListener);
    descriptor: (Landroid/os/Handler;Landroid/net/wifi/aware/ConfigRequest;Landroid/net/wifi/aware/AttachCallback;Landroid/net/wifi/aware/IdentityChangedListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=8, args_size=5
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // android.os.Handler handler
        start local 2 // android.net.wifi.aware.ConfigRequest configRequest
        start local 3 // android.net.wifi.aware.AttachCallback attachCallback
        start local 4 // android.net.wifi.aware.IdentityChangedListener identityChangedListener
         0: .line 273
            aload 3 /* attachCallback */
            ifnonnull 2
         1: .line 274
            new java.lang.IllegalArgumentException
            dup
            ldc "Null callback provided"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 277
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mLock:Ljava/lang/Object;
            dup
            astore 5
            monitorenter
         3: .line 278
            aload 1 /* handler */
            ifnonnull 4
            invokestatic android.os.Looper.getMainLooper:()Landroid/os/Looper;
            goto 5
      StackMap locals: java.lang.Object
      StackMap stack:
         4: aload 1 /* handler */
            invokevirtual android.os.Handler.getLooper:()Landroid/os/Looper;
      StackMap locals:
      StackMap stack: android.os.Looper
         5: astore 6 /* looper */
        start local 6 // android.os.Looper looper
         6: .line 281
            new android.os.Binder
            dup
            invokespecial android.os.Binder.<init>:()V
            astore 7 /* binder */
        start local 7 // android.os.Binder binder
         7: .line 282
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mService:Landroid/net/wifi/aware/IWifiAwareManager;
            aload 7 /* binder */
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mContext:Landroid/content/Context;
            invokevirtual android.content.Context.getOpPackageName:()Ljava/lang/String;
         8: .line 283
            new android.net.wifi.aware.WifiAwareManager$WifiAwareEventCallbackProxy
            dup
            aload 0 /* this */
            aload 6 /* looper */
            aload 7 /* binder */
            aload 3 /* attachCallback */
         9: .line 284
            aload 4 /* identityChangedListener */
        10: .line 283
            invokespecial android.net.wifi.aware.WifiAwareManager$WifiAwareEventCallbackProxy.<init>:(Landroid/net/wifi/aware/WifiAwareManager;Landroid/os/Looper;Landroid/os/Binder;Landroid/net/wifi/aware/AttachCallback;Landroid/net/wifi/aware/IdentityChangedListener;)V
        11: .line 284
            aload 2 /* configRequest */
        12: .line 285
            aload 4 /* identityChangedListener */
            ifnull 13
            iconst_1
            goto 14
      StackMap locals: android.net.wifi.aware.WifiAwareManager android.os.Handler android.net.wifi.aware.ConfigRequest android.net.wifi.aware.AttachCallback android.net.wifi.aware.IdentityChangedListener java.lang.Object android.os.Looper android.os.Binder
      StackMap stack: android.net.wifi.aware.IWifiAwareManager android.os.Binder java.lang.String android.net.wifi.aware.WifiAwareManager$WifiAwareEventCallbackProxy android.net.wifi.aware.ConfigRequest
        13: iconst_0
        14: .line 282
      StackMap locals: android.net.wifi.aware.WifiAwareManager android.os.Handler android.net.wifi.aware.ConfigRequest android.net.wifi.aware.AttachCallback android.net.wifi.aware.IdentityChangedListener java.lang.Object android.os.Looper android.os.Binder
      StackMap stack: android.net.wifi.aware.IWifiAwareManager android.os.Binder java.lang.String android.net.wifi.aware.WifiAwareManager$WifiAwareEventCallbackProxy android.net.wifi.aware.ConfigRequest int
            invokeinterface android.net.wifi.aware.IWifiAwareManager.connect:(Landroid/os/IBinder;Ljava/lang/String;Landroid/net/wifi/aware/IWifiAwareEventCallback;Landroid/net/wifi/aware/ConfigRequest;Z)V
        end local 7 // android.os.Binder binder
        15: .line 286
            goto 18
      StackMap locals: android.net.wifi.aware.WifiAwareManager android.os.Handler android.net.wifi.aware.ConfigRequest android.net.wifi.aware.AttachCallback android.net.wifi.aware.IdentityChangedListener java.lang.Object android.os.Looper
      StackMap stack: android.os.RemoteException
        16: astore 7 /* e */
        start local 7 // android.os.RemoteException e
        17: .line 287
            aload 7 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 7 // android.os.RemoteException e
        end local 6 // android.os.Looper looper
        18: .line 277
      StackMap locals:
      StackMap stack:
            aload 5
            monitorexit
        19: goto 22
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: aload 5
            monitorexit
        21: athrow
        22: .line 290
      StackMap locals:
      StackMap stack:
            return
        end local 4 // android.net.wifi.aware.IdentityChangedListener identityChangedListener
        end local 3 // android.net.wifi.aware.AttachCallback attachCallback
        end local 2 // android.net.wifi.aware.ConfigRequest configRequest
        end local 1 // android.os.Handler handler
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   23     0                     this  Landroid/net/wifi/aware/WifiAwareManager;
            0   23     1                  handler  Landroid/os/Handler;
            0   23     2            configRequest  Landroid/net/wifi/aware/ConfigRequest;
            0   23     3           attachCallback  Landroid/net/wifi/aware/AttachCallback;
            0   23     4  identityChangedListener  Landroid/net/wifi/aware/IdentityChangedListener;
            6   18     6                   looper  Landroid/os/Looper;
            7   15     7                   binder  Landroid/os/Binder;
           17   18     7                        e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           6    15      16  Class android.os.RemoteException
           3    19      20  any
          20    21      20  any
    MethodParameters:
                         Name  Flags
      handler                  
      configRequest            
      attachCallback           
      identityChangedListener  

  public void disconnect(int, android.os.Binder);
    descriptor: (ILandroid/os/Binder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // int clientId
        start local 2 // android.os.Binder binder
         0: .line 297
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mService:Landroid/net/wifi/aware/IWifiAwareManager;
            iload 1 /* clientId */
            aload 2 /* binder */
            invokeinterface android.net.wifi.aware.IWifiAwareManager.disconnect:(ILandroid/os/IBinder;)V
         1: .line 298
            goto 4
      StackMap locals:
      StackMap stack: android.os.RemoteException
         2: astore 3 /* e */
        start local 3 // android.os.RemoteException e
         3: .line 299
            aload 3 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 3 // android.os.RemoteException e
         4: .line 301
      StackMap locals:
      StackMap stack:
            return
        end local 2 // android.os.Binder binder
        end local 1 // int clientId
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Landroid/net/wifi/aware/WifiAwareManager;
            0    5     1  clientId  I
            0    5     2    binder  Landroid/os/Binder;
            3    4     3         e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class android.os.RemoteException
    MethodParameters:
          Name  Flags
      clientId  
      binder    

  public void publish(int, android.os.Looper, android.net.wifi.aware.PublishConfig, android.net.wifi.aware.DiscoverySessionCallback);
    descriptor: (ILandroid/os/Looper;Landroid/net/wifi/aware/PublishConfig;Landroid/net/wifi/aware/DiscoverySessionCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=6, args_size=5
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // int clientId
        start local 2 // android.os.Looper looper
        start local 3 // android.net.wifi.aware.PublishConfig publishConfig
        start local 4 // android.net.wifi.aware.DiscoverySessionCallback callback
         0: .line 308
            aload 4 /* callback */
            ifnonnull 2
         1: .line 309
            new java.lang.IllegalArgumentException
            dup
            ldc "Null callback provided"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 313
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mService:Landroid/net/wifi/aware/IWifiAwareManager;
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mContext:Landroid/content/Context;
            invokevirtual android.content.Context.getOpPackageName:()Ljava/lang/String;
            iload 1 /* clientId */
            aload 3 /* publishConfig */
         3: .line 314
            new android.net.wifi.aware.WifiAwareManager$WifiAwareDiscoverySessionCallbackProxy
            dup
            aload 0 /* this */
            aload 2 /* looper */
            iconst_1
            aload 4 /* callback */
         4: .line 315
            iload 1 /* clientId */
         5: .line 314
            invokespecial android.net.wifi.aware.WifiAwareManager$WifiAwareDiscoverySessionCallbackProxy.<init>:(Landroid/net/wifi/aware/WifiAwareManager;Landroid/os/Looper;ZLandroid/net/wifi/aware/DiscoverySessionCallback;I)V
         6: .line 313
            invokeinterface android.net.wifi.aware.IWifiAwareManager.publish:(Ljava/lang/String;ILandroid/net/wifi/aware/PublishConfig;Landroid/net/wifi/aware/IWifiAwareDiscoverySessionCallback;)V
         7: .line 316
            goto 10
      StackMap locals:
      StackMap stack: android.os.RemoteException
         8: astore 5 /* e */
        start local 5 // android.os.RemoteException e
         9: .line 317
            aload 5 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 5 // android.os.RemoteException e
        10: .line 319
      StackMap locals:
      StackMap stack:
            return
        end local 4 // android.net.wifi.aware.DiscoverySessionCallback callback
        end local 3 // android.net.wifi.aware.PublishConfig publishConfig
        end local 2 // android.os.Looper looper
        end local 1 // int clientId
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           this  Landroid/net/wifi/aware/WifiAwareManager;
            0   11     1       clientId  I
            0   11     2         looper  Landroid/os/Looper;
            0   11     3  publishConfig  Landroid/net/wifi/aware/PublishConfig;
            0   11     4       callback  Landroid/net/wifi/aware/DiscoverySessionCallback;
            9   10     5              e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           2     7       8  Class android.os.RemoteException
    MethodParameters:
               Name  Flags
      clientId       
      looper         
      publishConfig  
      callback       

  public void updatePublish(int, int, android.net.wifi.aware.PublishConfig);
    descriptor: (IILandroid/net/wifi/aware/PublishConfig;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // int clientId
        start local 2 // int sessionId
        start local 3 // android.net.wifi.aware.PublishConfig publishConfig
         0: .line 329
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mService:Landroid/net/wifi/aware/IWifiAwareManager;
            iload 1 /* clientId */
            iload 2 /* sessionId */
            aload 3 /* publishConfig */
            invokeinterface android.net.wifi.aware.IWifiAwareManager.updatePublish:(IILandroid/net/wifi/aware/PublishConfig;)V
         1: .line 330
            goto 4
      StackMap locals:
      StackMap stack: android.os.RemoteException
         2: astore 4 /* e */
        start local 4 // android.os.RemoteException e
         3: .line 331
            aload 4 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 4 // android.os.RemoteException e
         4: .line 333
      StackMap locals:
      StackMap stack:
            return
        end local 3 // android.net.wifi.aware.PublishConfig publishConfig
        end local 2 // int sessionId
        end local 1 // int clientId
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Landroid/net/wifi/aware/WifiAwareManager;
            0    5     1       clientId  I
            0    5     2      sessionId  I
            0    5     3  publishConfig  Landroid/net/wifi/aware/PublishConfig;
            3    4     4              e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class android.os.RemoteException
    MethodParameters:
               Name  Flags
      clientId       
      sessionId      
      publishConfig  

  public void subscribe(int, android.os.Looper, android.net.wifi.aware.SubscribeConfig, android.net.wifi.aware.DiscoverySessionCallback);
    descriptor: (ILandroid/os/Looper;Landroid/net/wifi/aware/SubscribeConfig;Landroid/net/wifi/aware/DiscoverySessionCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=6, args_size=5
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // int clientId
        start local 2 // android.os.Looper looper
        start local 3 // android.net.wifi.aware.SubscribeConfig subscribeConfig
        start local 4 // android.net.wifi.aware.DiscoverySessionCallback callback
         0: .line 345
            aload 4 /* callback */
            ifnonnull 2
         1: .line 346
            new java.lang.IllegalArgumentException
            dup
            ldc "Null callback provided"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 350
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mService:Landroid/net/wifi/aware/IWifiAwareManager;
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mContext:Landroid/content/Context;
            invokevirtual android.content.Context.getOpPackageName:()Ljava/lang/String;
            iload 1 /* clientId */
            aload 3 /* subscribeConfig */
         3: .line 351
            new android.net.wifi.aware.WifiAwareManager$WifiAwareDiscoverySessionCallbackProxy
            dup
            aload 0 /* this */
            aload 2 /* looper */
            iconst_0
            aload 4 /* callback */
         4: .line 352
            iload 1 /* clientId */
         5: .line 351
            invokespecial android.net.wifi.aware.WifiAwareManager$WifiAwareDiscoverySessionCallbackProxy.<init>:(Landroid/net/wifi/aware/WifiAwareManager;Landroid/os/Looper;ZLandroid/net/wifi/aware/DiscoverySessionCallback;I)V
         6: .line 350
            invokeinterface android.net.wifi.aware.IWifiAwareManager.subscribe:(Ljava/lang/String;ILandroid/net/wifi/aware/SubscribeConfig;Landroid/net/wifi/aware/IWifiAwareDiscoverySessionCallback;)V
         7: .line 353
            goto 10
      StackMap locals:
      StackMap stack: android.os.RemoteException
         8: astore 5 /* e */
        start local 5 // android.os.RemoteException e
         9: .line 354
            aload 5 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 5 // android.os.RemoteException e
        10: .line 356
      StackMap locals:
      StackMap stack:
            return
        end local 4 // android.net.wifi.aware.DiscoverySessionCallback callback
        end local 3 // android.net.wifi.aware.SubscribeConfig subscribeConfig
        end local 2 // android.os.Looper looper
        end local 1 // int clientId
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0             this  Landroid/net/wifi/aware/WifiAwareManager;
            0   11     1         clientId  I
            0   11     2           looper  Landroid/os/Looper;
            0   11     3  subscribeConfig  Landroid/net/wifi/aware/SubscribeConfig;
            0   11     4         callback  Landroid/net/wifi/aware/DiscoverySessionCallback;
            9   10     5                e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           2     7       8  Class android.os.RemoteException
    MethodParameters:
                 Name  Flags
      clientId         
      looper           
      subscribeConfig  
      callback         

  public void updateSubscribe(int, int, android.net.wifi.aware.SubscribeConfig);
    descriptor: (IILandroid/net/wifi/aware/SubscribeConfig;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // int clientId
        start local 2 // int sessionId
        start local 3 // android.net.wifi.aware.SubscribeConfig subscribeConfig
         0: .line 366
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mService:Landroid/net/wifi/aware/IWifiAwareManager;
            iload 1 /* clientId */
            iload 2 /* sessionId */
            aload 3 /* subscribeConfig */
            invokeinterface android.net.wifi.aware.IWifiAwareManager.updateSubscribe:(IILandroid/net/wifi/aware/SubscribeConfig;)V
         1: .line 367
            goto 4
      StackMap locals:
      StackMap stack: android.os.RemoteException
         2: astore 4 /* e */
        start local 4 // android.os.RemoteException e
         3: .line 368
            aload 4 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 4 // android.os.RemoteException e
         4: .line 370
      StackMap locals:
      StackMap stack:
            return
        end local 3 // android.net.wifi.aware.SubscribeConfig subscribeConfig
        end local 2 // int sessionId
        end local 1 // int clientId
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0             this  Landroid/net/wifi/aware/WifiAwareManager;
            0    5     1         clientId  I
            0    5     2        sessionId  I
            0    5     3  subscribeConfig  Landroid/net/wifi/aware/SubscribeConfig;
            3    4     4                e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class android.os.RemoteException
    MethodParameters:
                 Name  Flags
      clientId         
      sessionId        
      subscribeConfig  

  public void terminateSession(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // int clientId
        start local 2 // int sessionId
         0: .line 380
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mService:Landroid/net/wifi/aware/IWifiAwareManager;
            iload 1 /* clientId */
            iload 2 /* sessionId */
            invokeinterface android.net.wifi.aware.IWifiAwareManager.terminateSession:(II)V
         1: .line 381
            goto 4
      StackMap locals:
      StackMap stack: android.os.RemoteException
         2: astore 3 /* e */
        start local 3 // android.os.RemoteException e
         3: .line 382
            aload 3 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 3 // android.os.RemoteException e
         4: .line 384
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int sessionId
        end local 1 // int clientId
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Landroid/net/wifi/aware/WifiAwareManager;
            0    5     1   clientId  I
            0    5     2  sessionId  I
            3    4     3          e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class android.os.RemoteException
    MethodParameters:
           Name  Flags
      clientId   
      sessionId  

  public void sendMessage(int, int, android.net.wifi.aware.PeerHandle, byte[], int, int);
    descriptor: (IILandroid/net/wifi/aware/PeerHandle;[BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=8, args_size=7
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // int clientId
        start local 2 // int sessionId
        start local 3 // android.net.wifi.aware.PeerHandle peerHandle
        start local 4 // byte[] message
        start local 5 // int messageId
        start local 6 // int retryCount
         0: .line 389
            aload 3 /* peerHandle */
            ifnonnull 4
         1: .line 390
            new java.lang.IllegalArgumentException
            dup
         2: .line 391
            ldc "sendMessage: invalid peerHandle - must be non-null"
         3: .line 390
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 401
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mService:Landroid/net/wifi/aware/IWifiAwareManager;
            iload 1 /* clientId */
            iload 2 /* sessionId */
            aload 3 /* peerHandle */
            getfield android.net.wifi.aware.PeerHandle.peerId:I
            aload 4 /* message */
            iload 5 /* messageId */
         5: .line 402
            iload 6 /* retryCount */
         6: .line 401
            invokeinterface android.net.wifi.aware.IWifiAwareManager.sendMessage:(III[BII)V
         7: .line 403
            goto 10
      StackMap locals:
      StackMap stack: android.os.RemoteException
         8: astore 7 /* e */
        start local 7 // android.os.RemoteException e
         9: .line 404
            aload 7 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 7 // android.os.RemoteException e
        10: .line 406
      StackMap locals:
      StackMap stack:
            return
        end local 6 // int retryCount
        end local 5 // int messageId
        end local 4 // byte[] message
        end local 3 // android.net.wifi.aware.PeerHandle peerHandle
        end local 2 // int sessionId
        end local 1 // int clientId
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Landroid/net/wifi/aware/WifiAwareManager;
            0   11     1    clientId  I
            0   11     2   sessionId  I
            0   11     3  peerHandle  Landroid/net/wifi/aware/PeerHandle;
            0   11     4     message  [B
            0   11     5   messageId  I
            0   11     6  retryCount  I
            9   10     7           e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           4     7       8  Class android.os.RemoteException
    MethodParameters:
            Name  Flags
      clientId    
      sessionId   
      peerHandle  
      message     
      messageId   
      retryCount  

  public android.net.NetworkSpecifier createNetworkSpecifier(int, int, int, android.net.wifi.aware.PeerHandle, byte[], java.lang.String);
    descriptor: (IIILandroid/net/wifi/aware/PeerHandle;[BLjava/lang/String;)Landroid/net/NetworkSpecifier;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=7, args_size=7
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // int clientId
        start local 2 // int role
        start local 3 // int sessionId
        start local 4 // android.net.wifi.aware.PeerHandle peerHandle
        start local 5 // byte[] pmk
        start local 6 // java.lang.String passphrase
         0: .line 418
            iload 2 /* role */
            ifeq 5
         1: .line 419
            iload 2 /* role */
            iconst_1
            if_icmpeq 5
         2: .line 420
            new java.lang.IllegalArgumentException
            dup
         3: .line 421
            ldc "createNetworkSpecifier: Invalid 'role' argument when creating a network specifier"
         4: .line 420
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 424
      StackMap locals:
      StackMap stack:
            iload 2 /* role */
            ifeq 9
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mContext:Landroid/content/Context;
         6: .line 425
            bipush 28
         7: .line 424
            invokestatic android.net.wifi.aware.WifiAwareUtils.isLegacyVersion:(Landroid/content/Context;I)Z
         8: .line 425
            ifne 13
         9: .line 426
      StackMap locals:
      StackMap stack:
            aload 4 /* peerHandle */
            ifnonnull 13
        10: .line 427
            new java.lang.IllegalArgumentException
            dup
        11: .line 428
            ldc "createNetworkSpecifier: Invalid peer handle - cannot be null"
        12: .line 427
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 432
      StackMap locals:
      StackMap stack:
            new android.net.wifi.aware.WifiAwareNetworkSpecifier
            dup
        14: .line 433
            aload 4 /* peerHandle */
            ifnonnull 15
            iconst_1
            goto 16
        15: .line 434
      StackMap locals: android.net.wifi.aware.WifiAwareManager int int int android.net.wifi.aware.PeerHandle byte[] java.lang.String
      StackMap stack: new 13 new 13
            iconst_0
        16: .line 435
      StackMap locals: android.net.wifi.aware.WifiAwareManager int int int android.net.wifi.aware.PeerHandle byte[] java.lang.String
      StackMap stack: new 13 new 13 int
            iload 2 /* role */
        17: .line 436
            iload 1 /* clientId */
        18: .line 437
            iload 3 /* sessionId */
        19: .line 438
            aload 4 /* peerHandle */
            ifnull 20
            aload 4 /* peerHandle */
            getfield android.net.wifi.aware.PeerHandle.peerId:I
            goto 21
      StackMap locals: android.net.wifi.aware.WifiAwareManager int int int android.net.wifi.aware.PeerHandle byte[] java.lang.String
      StackMap stack: new 13 new 13 int int int int
        20: iconst_0
        21: .line 439
      StackMap locals: android.net.wifi.aware.WifiAwareManager int int int android.net.wifi.aware.PeerHandle byte[] java.lang.String
      StackMap stack: new 13 new 13 int int int int int
            aconst_null
        22: .line 440
            aload 5 /* pmk */
        23: .line 441
            aload 6 /* passphrase */
        24: .line 442
            invokestatic android.os.Process.myUid:()I
        25: .line 432
            invokespecial android.net.wifi.aware.WifiAwareNetworkSpecifier.<init>:(IIIII[B[BLjava/lang/String;I)V
            areturn
        end local 6 // java.lang.String passphrase
        end local 5 // byte[] pmk
        end local 4 // android.net.wifi.aware.PeerHandle peerHandle
        end local 3 // int sessionId
        end local 2 // int role
        end local 1 // int clientId
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   26     0        this  Landroid/net/wifi/aware/WifiAwareManager;
            0   26     1    clientId  I
            0   26     2        role  I
            0   26     3   sessionId  I
            0   26     4  peerHandle  Landroid/net/wifi/aware/PeerHandle;
            0   26     5         pmk  [B
            0   26     6  passphrase  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      clientId    
      role        
      sessionId   
      peerHandle  
      pmk         
      passphrase  

  public android.net.NetworkSpecifier createNetworkSpecifier(int, int, byte[], byte[], java.lang.String);
    descriptor: (II[B[BLjava/lang/String;)Landroid/net/NetworkSpecifier;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=6, args_size=6
        start local 0 // android.net.wifi.aware.WifiAwareManager this
        start local 1 // int clientId
        start local 2 // int role
        start local 3 // byte[] peer
        start local 4 // byte[] pmk
        start local 5 // java.lang.String passphrase
         0: .line 454
            iload 2 /* role */
            ifeq 5
         1: .line 455
            iload 2 /* role */
            iconst_1
            if_icmpeq 5
         2: .line 456
            new java.lang.IllegalArgumentException
            dup
         3: .line 457
            ldc "createNetworkSpecifier: Invalid 'role' argument when creating a network specifier"
         4: .line 456
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 460
      StackMap locals:
      StackMap stack:
            iload 2 /* role */
            ifeq 9
            aload 0 /* this */
            getfield android.net.wifi.aware.WifiAwareManager.mContext:Landroid/content/Context;
         6: .line 461
            bipush 28
         7: .line 460
            invokestatic android.net.wifi.aware.WifiAwareUtils.isLegacyVersion:(Landroid/content/Context;I)Z
         8: .line 461
            ifne 13
         9: .line 462
      StackMap locals:
      StackMap stack:
            aload 3 /* peer */
            ifnonnull 13
        10: .line 463
            new java.lang.IllegalArgumentException
            dup
        11: .line 464
            ldc "createNetworkSpecifier: Invalid peer MAC - cannot be null"
        12: .line 463
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 467
      StackMap locals:
      StackMap stack:
            aload 3 /* peer */
            ifnull 15
            aload 3 /* peer */
            arraylength
            bipush 6
            if_icmpeq 15
        14: .line 468
            new java.lang.IllegalArgumentException
            dup
            ldc "createNetworkSpecifier: Invalid peer MAC address"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 471
      StackMap locals:
      StackMap stack:
            new android.net.wifi.aware.WifiAwareNetworkSpecifier
            dup
        16: .line 472
            aload 3 /* peer */
            ifnonnull 17
            iconst_3
            goto 18
        17: .line 473
      StackMap locals: android.net.wifi.aware.WifiAwareManager int int byte[] byte[] java.lang.String
      StackMap stack: new 15 new 15
            iconst_2
        18: .line 474
      StackMap locals: android.net.wifi.aware.WifiAwareManager int int byte[] byte[] java.lang.String
      StackMap stack: new 15 new 15 int
            iload 2 /* role */
        19: .line 475
            iload 1 /* clientId */
        20: .line 476
            iconst_0
        21: .line 477
            iconst_0
        22: .line 478
            aload 3 /* peer */
        23: .line 479
            aload 4 /* pmk */
        24: .line 480
            aload 5 /* passphrase */
        25: .line 481
            invokestatic android.os.Process.myUid:()I
        26: .line 471
            invokespecial android.net.wifi.aware.WifiAwareNetworkSpecifier.<init>:(IIIII[B[BLjava/lang/String;I)V
            areturn
        end local 5 // java.lang.String passphrase
        end local 4 // byte[] pmk
        end local 3 // byte[] peer
        end local 2 // int role
        end local 1 // int clientId
        end local 0 // android.net.wifi.aware.WifiAwareManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   27     0        this  Landroid/net/wifi/aware/WifiAwareManager;
            0   27     1    clientId  I
            0   27     2        role  I
            0   27     3        peer  [B
            0   27     4         pmk  [B
            0   27     5  passphrase  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      clientId    
      role        
      peer        
      pmk         
      passphrase  
}
SourceFile: "WifiAwareManager.java"
NestMembers:
  android.net.wifi.aware.WifiAwareManager$DataPathRole  android.net.wifi.aware.WifiAwareManager$WifiAwareDiscoverySessionCallbackProxy  android.net.wifi.aware.WifiAwareManager$WifiAwareDiscoverySessionCallbackProxy$1  android.net.wifi.aware.WifiAwareManager$WifiAwareEventCallbackProxy  android.net.wifi.aware.WifiAwareManager$WifiAwareEventCallbackProxy$1
InnerClasses:
  public abstract DataPathRole = android.net.wifi.aware.WifiAwareManager$DataPathRole of android.net.wifi.aware.WifiAwareManager
  private WifiAwareDiscoverySessionCallbackProxy = android.net.wifi.aware.WifiAwareManager$WifiAwareDiscoverySessionCallbackProxy of android.net.wifi.aware.WifiAwareManager
  private WifiAwareEventCallbackProxy = android.net.wifi.aware.WifiAwareManager$WifiAwareEventCallbackProxy of android.net.wifi.aware.WifiAwareManager