public class android.widget.VideoView2 extends android.media.update.ViewGroupHelper<android.media.update.VideoView2Provider>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.widget.VideoView2
  super_class: android.media.update.ViewGroupHelper
{
  public static final int VIEW_TYPE_SURFACEVIEW;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

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

  public void <init>(android.content.Context);
    descriptor: (Landroid/content/Context;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.content.Context context
         0: .line 132
            aload 0 /* this */
            aload 1 /* context */
            aconst_null
            invokespecial android.widget.VideoView2.<init>:(Landroid/content/Context;Landroid/util/AttributeSet;)V
         1: .line 133
            return
        end local 1 // android.content.Context context
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Landroid/widget/VideoView2;
            0    2     1  context  Landroid/content/Context;
    MethodParameters:
         Name  Flags
      context  

  public void <init>(android.content.Context, android.util.AttributeSet);
    descriptor: (Landroid/content/Context;Landroid/util/AttributeSet;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.content.Context context
        start local 2 // android.util.AttributeSet attrs
         0: .line 136
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* attrs */
            iconst_0
            invokespecial android.widget.VideoView2.<init>:(Landroid/content/Context;Landroid/util/AttributeSet;I)V
         1: .line 137
            return
        end local 2 // android.util.AttributeSet attrs
        end local 1 // android.content.Context context
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Landroid/widget/VideoView2;
            0    2     1  context  Landroid/content/Context;
            0    2     2    attrs  Landroid/util/AttributeSet;
    MethodParameters:
         Name  Flags
      context  
      attrs    

  public void <init>(android.content.Context, android.util.AttributeSet, int);
    descriptor: (Landroid/content/Context;Landroid/util/AttributeSet;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.content.Context context
        start local 2 // android.util.AttributeSet attrs
        start local 3 // int defStyleAttr
         0: .line 140
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* attrs */
            iload 3 /* defStyleAttr */
            iconst_0
            invokespecial android.widget.VideoView2.<init>:(Landroid/content/Context;Landroid/util/AttributeSet;II)V
         1: .line 141
            return
        end local 3 // int defStyleAttr
        end local 2 // android.util.AttributeSet attrs
        end local 1 // android.content.Context context
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Landroid/widget/VideoView2;
            0    2     1       context  Landroid/content/Context;
            0    2     2         attrs  Landroid/util/AttributeSet;
            0    2     3  defStyleAttr  I
    MethodParameters:
              Name  Flags
      context       
      attrs         
      defStyleAttr  

  public void <init>(android.content.Context, android.util.AttributeSet, int, int);
    descriptor: (Landroid/content/Context;Landroid/util/AttributeSet;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.content.Context context
        start local 2 // android.util.AttributeSet attrs
        start local 3 // int defStyleAttr
        start local 4 // int defStyleRes
         0: .line 146
            aload 0 /* this */
            aload 2 /* attrs */
            iload 3 /* defStyleAttr */
            iload 4 /* defStyleRes */
            invokedynamic createProvider(Landroid/util/AttributeSet;II)Landroid/media/update/ViewGroupHelper$ProviderCreator;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Landroid/media/update/ViewGroupHelper;Landroid/media/update/ViewGroupProvider;Landroid/media/update/ViewGroupProvider;)Landroid/media/update/ViewGroupProvider;
                  android/widget/VideoView2.lambda$0(Landroid/util/AttributeSet;IILandroid/media/update/ViewGroupHelper;Landroid/media/update/ViewGroupProvider;Landroid/media/update/ViewGroupProvider;)Landroid/media/update/VideoView2Provider; (6)
                  (Landroid/media/update/ViewGroupHelper;Landroid/media/update/ViewGroupProvider;Landroid/media/update/ViewGroupProvider;)Landroid/media/update/VideoView2Provider;
         1: .line 150
            aload 1 /* context */
            aload 2 /* attrs */
            iload 3 /* defStyleAttr */
            iload 4 /* defStyleRes */
            invokespecial android.media.update.ViewGroupHelper.<init>:(Landroid/media/update/ViewGroupHelper$ProviderCreator;Landroid/content/Context;Landroid/util/AttributeSet;II)V
         2: .line 151
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 2 /* attrs */
            iload 3 /* defStyleAttr */
            iload 4 /* defStyleRes */
            invokeinterface android.media.update.VideoView2Provider.initialize:(Landroid/util/AttributeSet;II)V
         3: .line 152
            return
        end local 4 // int defStyleRes
        end local 3 // int defStyleAttr
        end local 2 // android.util.AttributeSet attrs
        end local 1 // android.content.Context context
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Landroid/widget/VideoView2;
            0    4     1       context  Landroid/content/Context;
            0    4     2         attrs  Landroid/util/AttributeSet;
            0    4     3  defStyleAttr  I
            0    4     4   defStyleRes  I
    MethodParameters:
              Name  Flags
      context       
      attrs         
      defStyleAttr  
      defStyleRes   

  public void setMediaControlView2(android.widget.MediaControlView2, long);
    descriptor: (Landroid/widget/MediaControlView2;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.widget.MediaControlView2 mediaControlView
        start local 2 // long intervalMs
         0: .line 162
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 1 /* mediaControlView */
            lload 2 /* intervalMs */
            invokeinterface android.media.update.VideoView2Provider.setMediaControlView2_impl:(Landroid/widget/MediaControlView2;J)V
         1: .line 163
            return
        end local 2 // long intervalMs
        end local 1 // android.widget.MediaControlView2 mediaControlView
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Landroid/widget/VideoView2;
            0    2     1  mediaControlView  Landroid/widget/MediaControlView2;
            0    2     2        intervalMs  J
    MethodParameters:
                  Name  Flags
      mediaControlView  
      intervalMs        

  public android.widget.MediaControlView2 getMediaControlView2();
    descriptor: ()Landroid/widget/MediaControlView2;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.widget.VideoView2 this
         0: .line 170
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            invokeinterface android.media.update.VideoView2Provider.getMediaControlView2_impl:()Landroid/widget/MediaControlView2;
            areturn
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/widget/VideoView2;

  public void setMediaMetadata(android.media.MediaMetadata2);
    descriptor: (Landroid/media/MediaMetadata2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.media.MediaMetadata2 metadata
         0: .line 181
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 1 /* metadata */
            invokeinterface android.media.update.VideoView2Provider.setMediaMetadata_impl:(Landroid/media/MediaMetadata2;)V
         1: .line 182
            return
        end local 1 // android.media.MediaMetadata2 metadata
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Landroid/widget/VideoView2;
            0    2     1  metadata  Landroid/media/MediaMetadata2;
    MethodParameters:
          Name  Flags
      metadata  

  public android.media.MediaMetadata2 getMediaMetadata();
    descriptor: ()Landroid/media/MediaMetadata2;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.widget.VideoView2 this
         0: .line 192
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            invokeinterface android.media.update.VideoView2Provider.getMediaMetadata_impl:()Landroid/media/MediaMetadata2;
            areturn
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/widget/VideoView2;

  public android.media.session.MediaController getMediaController();
    descriptor: ()Landroid/media/session/MediaController;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.widget.VideoView2 this
         0: .line 206
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            invokeinterface android.media.update.VideoView2Provider.getMediaController_impl:()Landroid/media/session/MediaController;
            areturn
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/widget/VideoView2;

  public android.media.SessionToken2 getMediaSessionToken();
    descriptor: ()Landroid/media/SessionToken2;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.widget.VideoView2 this
         0: .line 217
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            invokeinterface android.media.update.VideoView2Provider.getMediaSessionToken_impl:()Landroid/media/SessionToken2;
            areturn
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/widget/VideoView2;

  public void setSubtitleEnabled(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // boolean enable
         0: .line 227
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            iload 1 /* enable */
            invokeinterface android.media.update.VideoView2Provider.setSubtitleEnabled_impl:(Z)V
         1: .line 228
            return
        end local 1 // boolean enable
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Landroid/widget/VideoView2;
            0    2     1  enable  Z
    MethodParameters:
        Name  Flags
      enable  

  public boolean isSubtitleEnabled();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.widget.VideoView2 this
         0: .line 236
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            invokeinterface android.media.update.VideoView2Provider.isSubtitleEnabled_impl:()Z
            ireturn
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/widget/VideoView2;

  public void setSpeed(float);
    descriptor: (F)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // float speed
         0: .line 250
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            fload 1 /* speed */
            invokeinterface android.media.update.VideoView2Provider.setSpeed_impl:(F)V
         1: .line 251
            return
        end local 1 // float speed
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Landroid/widget/VideoView2;
            0    2     1  speed  F
    MethodParameters:
       Name  Flags
      speed  

  public void setAudioFocusRequest(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // int focusGain
         0: .line 269
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            iload 1 /* focusGain */
            invokeinterface android.media.update.VideoView2Provider.setAudioFocusRequest_impl:(I)V
         1: .line 270
            return
        end local 1 // int focusGain
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Landroid/widget/VideoView2;
            0    2     1  focusGain  I
    MethodParameters:
           Name  Flags
      focusGain  

  public void setAudioAttributes(android.media.AudioAttributes);
    descriptor: (Landroid/media/AudioAttributes;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.media.AudioAttributes attributes
         0: .line 278
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 1 /* attributes */
            invokeinterface android.media.update.VideoView2Provider.setAudioAttributes_impl:(Landroid/media/AudioAttributes;)V
         1: .line 279
            return
        end local 1 // android.media.AudioAttributes attributes
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Landroid/widget/VideoView2;
            0    2     1  attributes  Landroid/media/AudioAttributes;
    MethodParameters:
            Name  Flags
      attributes  

  public void setVideoPath(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // java.lang.String path
         0: .line 289
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 1 /* path */
            invokeinterface android.media.update.VideoView2Provider.setVideoPath_impl:(Ljava/lang/String;)V
         1: .line 290
            return
        end local 1 // java.lang.String path
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/widget/VideoView2;
            0    2     1  path  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      path  

  public void setVideoUri(android.net.Uri);
    descriptor: (Landroid/net/Uri;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.net.Uri uri
         0: .line 300
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 1 /* uri */
            invokeinterface android.media.update.VideoView2Provider.setVideoUri_impl:(Landroid/net/Uri;)V
         1: .line 301
            return
        end local 1 // android.net.Uri uri
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/widget/VideoView2;
            0    2     1   uri  Landroid/net/Uri;
    MethodParameters:
      Name  Flags
      uri   

  public void setVideoUri(android.net.Uri, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Landroid/net/Uri;Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.net.Uri uri
        start local 2 // java.util.Map headers
         0: .line 316
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 1 /* uri */
            aload 2 /* headers */
            invokeinterface android.media.update.VideoView2Provider.setVideoUri_impl:(Landroid/net/Uri;Ljava/util/Map;)V
         1: .line 317
            return
        end local 2 // java.util.Map headers
        end local 1 // android.net.Uri uri
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Landroid/widget/VideoView2;
            0    2     1      uri  Landroid/net/Uri;
            0    2     2  headers  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    Signature: (Landroid/net/Uri;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)V
    MethodParameters:
         Name  Flags
      uri      
      headers  

  public void setMediaItem(android.media.MediaItem2);
    descriptor: (Landroid/media/MediaItem2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.media.MediaItem2 mediaItem
         0: .line 326
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 1 /* mediaItem */
            invokeinterface android.media.update.VideoView2Provider.setMediaItem_impl:(Landroid/media/MediaItem2;)V
         1: .line 327
            return
        end local 1 // android.media.MediaItem2 mediaItem
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Landroid/widget/VideoView2;
            0    2     1  mediaItem  Landroid/media/MediaItem2;
    MethodParameters:
           Name  Flags
      mediaItem  

  public void setDataSource(android.media.DataSourceDesc);
    descriptor: (Landroid/media/DataSourceDesc;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.media.DataSourceDesc dataSource
         0: .line 335
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 1 /* dataSource */
            invokeinterface android.media.update.VideoView2Provider.setDataSource_impl:(Landroid/media/DataSourceDesc;)V
         1: .line 336
            return
        end local 1 // android.media.DataSourceDesc dataSource
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Landroid/widget/VideoView2;
            0    2     1  dataSource  Landroid/media/DataSourceDesc;
    MethodParameters:
            Name  Flags
      dataSource  

  public void setViewType(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // int viewType
         0: .line 348
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            iload 1 /* viewType */
            invokeinterface android.media.update.VideoView2Provider.setViewType_impl:(I)V
         1: .line 349
            return
        end local 1 // int viewType
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Landroid/widget/VideoView2;
            0    2     1  viewType  I
    MethodParameters:
          Name  Flags
      viewType  

  public int getViewType();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.widget.VideoView2 this
         0: .line 358
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            invokeinterface android.media.update.VideoView2Provider.getViewType_impl:()I
            ireturn
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/widget/VideoView2;

  public void setCustomActions(java.util.List<android.media.session.PlaybackState$CustomAction>, java.util.concurrent.Executor, android.widget.VideoView2$OnCustomActionListener);
    descriptor: (Ljava/util/List;Ljava/util/concurrent/Executor;Landroid/widget/VideoView2$OnCustomActionListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // android.widget.VideoView2 this
        start local 1 // java.util.List actionList
        start local 2 // java.util.concurrent.Executor executor
        start local 3 // android.widget.VideoView2$OnCustomActionListener listener
         0: .line 373
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 1 /* actionList */
            aload 2 /* executor */
            aload 3 /* listener */
            invokeinterface android.media.update.VideoView2Provider.setCustomActions_impl:(Ljava/util/List;Ljava/util/concurrent/Executor;Landroid/widget/VideoView2$OnCustomActionListener;)V
         1: .line 374
            return
        end local 3 // android.widget.VideoView2$OnCustomActionListener listener
        end local 2 // java.util.concurrent.Executor executor
        end local 1 // java.util.List actionList
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Landroid/widget/VideoView2;
            0    2     1  actionList  Ljava/util/List<Landroid/media/session/PlaybackState$CustomAction;>;
            0    2     2    executor  Ljava/util/concurrent/Executor;
            0    2     3    listener  Landroid/widget/VideoView2$OnCustomActionListener;
    Signature: (Ljava/util/List<Landroid/media/session/PlaybackState$CustomAction;>;Ljava/util/concurrent/Executor;Landroid/widget/VideoView2$OnCustomActionListener;)V
    MethodParameters:
            Name  Flags
      actionList  
      executor    
      listener    

  public void setOnViewTypeChangedListener(android.widget.VideoView2$OnViewTypeChangedListener);
    descriptor: (Landroid/widget/VideoView2$OnViewTypeChangedListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.widget.VideoView2$OnViewTypeChangedListener l
         0: .line 384
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 1 /* l */
            invokeinterface android.media.update.VideoView2Provider.setOnViewTypeChangedListener_impl:(Landroid/widget/VideoView2$OnViewTypeChangedListener;)V
         1: .line 385
            return
        end local 1 // android.widget.VideoView2$OnViewTypeChangedListener l
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/widget/VideoView2;
            0    2     1     l  Landroid/widget/VideoView2$OnViewTypeChangedListener;
    RuntimeInvisibleAnnotations: 
      com.android.internal.annotations.VisibleForTesting()
    MethodParameters:
      Name  Flags
      l     

  public void setFullScreenRequestListener(android.widget.VideoView2$OnFullScreenRequestListener);
    descriptor: (Landroid/widget/VideoView2$OnFullScreenRequestListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.VideoView2 this
        start local 1 // android.widget.VideoView2$OnFullScreenRequestListener l
         0: .line 393
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            aload 1 /* l */
            invokeinterface android.media.update.VideoView2Provider.setFullScreenRequestListener_impl:(Landroid/widget/VideoView2$OnFullScreenRequestListener;)V
         1: .line 394
            return
        end local 1 // android.widget.VideoView2$OnFullScreenRequestListener l
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/widget/VideoView2;
            0    2     1     l  Landroid/widget/VideoView2$OnFullScreenRequestListener;
    MethodParameters:
      Name  Flags
      l     

  protected void onLayout(boolean, int, int, int, int);
    descriptor: (ZIIII)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // android.widget.VideoView2 this
        start local 1 // boolean changed
        start local 2 // int l
        start local 3 // int t
        start local 4 // int r
        start local 5 // int b
         0: .line 445
            aload 0 /* this */
            getfield android.widget.VideoView2.mProvider:Landroid/media/update/ViewGroupProvider;
            checkcast android.media.update.VideoView2Provider
            iload 1 /* changed */
            iload 2 /* l */
            iload 3 /* t */
            iload 4 /* r */
            iload 5 /* b */
            invokeinterface android.media.update.VideoView2Provider.onLayout_impl:(ZIIII)V
         1: .line 446
            return
        end local 5 // int b
        end local 4 // int r
        end local 3 // int t
        end local 2 // int l
        end local 1 // boolean changed
        end local 0 // android.widget.VideoView2 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Landroid/widget/VideoView2;
            0    2     1  changed  Z
            0    2     2        l  I
            0    2     3        t  I
            0    2     4        r  I
            0    2     5        b  I
    MethodParameters:
         Name  Flags
      changed  
      l        
      t        
      r        
      b        

  private static android.media.update.VideoView2Provider lambda$0(android.util.AttributeSet, int, int, android.media.update.ViewGroupHelper, android.media.update.ViewGroupProvider, android.media.update.ViewGroupProvider);
    descriptor: (Landroid/util/AttributeSet;IILandroid/media/update/ViewGroupHelper;Landroid/media/update/ViewGroupProvider;Landroid/media/update/ViewGroupProvider;)Landroid/media/update/VideoView2Provider;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=7, locals=6, args_size=6
        start local 3 // android.media.update.ViewGroupHelper instance
        start local 4 // android.media.update.ViewGroupProvider superProvider
        start local 5 // android.media.update.ViewGroupProvider privateProvider
         0: .line 147
            invokestatic android.media.update.ApiLoader.getProvider:()Landroid/media/update/StaticProvider;
         1: .line 148
            aload 3 /* instance */
            checkcast android.widget.VideoView2
            aload 4 /* superProvider */
            aload 5 /* privateProvider */
         2: .line 149
            aload 0
            iload 1
            iload 2
         3: .line 147
            invokeinterface android.media.update.StaticProvider.createVideoView2:(Landroid/widget/VideoView2;Landroid/media/update/ViewGroupProvider;Landroid/media/update/ViewGroupProvider;Landroid/util/AttributeSet;II)Landroid/media/update/VideoView2Provider;
         4: .line 149
            areturn
        end local 5 // android.media.update.ViewGroupProvider privateProvider
        end local 4 // android.media.update.ViewGroupProvider superProvider
        end local 3 // android.media.update.ViewGroupHelper instance
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     3         instance  Landroid/media/update/ViewGroupHelper<Landroid/media/update/VideoView2Provider;>;
            0    5     4    superProvider  Landroid/media/update/ViewGroupProvider;
            0    5     5  privateProvider  Landroid/media/update/ViewGroupProvider;
}
Signature: Landroid/media/update/ViewGroupHelper<Landroid/media/update/VideoView2Provider;>;
SourceFile: "VideoView2.java"
NestMembers:
  android.widget.VideoView2$OnCustomActionListener  android.widget.VideoView2$OnFullScreenRequestListener  android.widget.VideoView2$OnViewTypeChangedListener  android.widget.VideoView2$ViewType
InnerClasses:
  public final CustomAction = android.media.session.PlaybackState$CustomAction of android.media.session.PlaybackState
  public abstract ProviderCreator = android.media.update.ViewGroupHelper$ProviderCreator of android.media.update.ViewGroupHelper
  public abstract OnCustomActionListener = android.widget.VideoView2$OnCustomActionListener of android.widget.VideoView2
  public abstract OnFullScreenRequestListener = android.widget.VideoView2$OnFullScreenRequestListener of android.widget.VideoView2
  public abstract OnViewTypeChangedListener = android.widget.VideoView2$OnViewTypeChangedListener of android.widget.VideoView2
  public abstract ViewType = android.widget.VideoView2$ViewType of android.widget.VideoView2
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles