class com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist
  super_class: java.lang.Object
{
  private boolean isLive;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private volatile boolean isLiveWaiting;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile boolean isLiveStop;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private long targetDuration;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private java.net.URI playlistURI;
    descriptor: Ljava/net/URI;
    flags: (0x0002) ACC_PRIVATE

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

  private java.util.List<java.lang.String> mediaFiles;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/lang/String;>;

  private java.util.List<java.lang.Double> mediaFilesStartTimes;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/lang/Double;>;

  private java.util.List<java.lang.Boolean> mediaFilesDiscontinuities;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/lang/Boolean;>;

  private boolean needBaseURI;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String baseURI;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private double duration;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

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

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

  private boolean sequenceNumberUpdated;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean forceDiscontinuity;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  final com.sun.media.jfxmedia.locator.HLSConnectionHolder this$0;
    descriptor: Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private void <init>(com.sun.media.jfxmedia.locator.HLSConnectionHolder, boolean, int);
    descriptor: (Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;ZI)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
        start local 2 // boolean isLive
        start local 3 // int targetDuration
         0: .line 661
            aload 0 /* this */
            aload 1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 644
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLive:Z
         2: .line 645
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveWaiting:Z
         3: .line 646
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveStop:Z
         4: .line 647
            aload 0 /* this */
            lconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.targetDuration:J
         5: .line 648
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.playlistURI:Ljava/net/URI;
         6: .line 649
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.lock:Ljava/lang/Object;
         7: .line 650
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
         8: .line 651
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesStartTimes:Ljava/util/List;
         9: .line 652
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesDiscontinuities:Ljava/util/List;
        10: .line 653
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.needBaseURI:Z
        11: .line 654
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.baseURI:Ljava/lang/String;
        12: .line 655
            aload 0 /* this */
            dconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.duration:D
        13: .line 656
            aload 0 /* this */
            iconst_m1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumber:I
        14: .line 657
            aload 0 /* this */
            iconst_m1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumberStart:I
        15: .line 658
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumberUpdated:Z
        16: .line 659
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.forceDiscontinuity:Z
        17: .line 662
            aload 0 /* this */
            iload 2 /* isLive */
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLive:Z
        18: .line 663
            aload 0 /* this */
            iload 3 /* targetDuration */
            sipush 1000
            imul
            i2l
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.targetDuration:J
        19: .line 665
            iload 2 /* isLive */
            ifeq 21
        20: .line 666
            aload 0 /* this */
            ldc -1.0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.duration:D
        21: .line 668
      StackMap locals: com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist com.sun.media.jfxmedia.locator.HLSConnectionHolder int int
      StackMap stack:
            return
        end local 3 // int targetDuration
        end local 2 // boolean isLive
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   22     0            this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
            0   22     2          isLive  Z
            0   22     3  targetDuration  I
    MethodParameters:
                Name  Flags
      this$0          final
      isLive          
      targetDuration  

  private void <init>(com.sun.media.jfxmedia.locator.HLSConnectionHolder, java.net.URI);
    descriptor: (Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;Ljava/net/URI;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
        start local 2 // java.net.URI uri
         0: .line 670
            aload 0 /* this */
            aload 1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 644
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLive:Z
         2: .line 645
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveWaiting:Z
         3: .line 646
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveStop:Z
         4: .line 647
            aload 0 /* this */
            lconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.targetDuration:J
         5: .line 648
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.playlistURI:Ljava/net/URI;
         6: .line 649
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.lock:Ljava/lang/Object;
         7: .line 650
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
         8: .line 651
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesStartTimes:Ljava/util/List;
         9: .line 652
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesDiscontinuities:Ljava/util/List;
        10: .line 653
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.needBaseURI:Z
        11: .line 654
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.baseURI:Ljava/lang/String;
        12: .line 655
            aload 0 /* this */
            dconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.duration:D
        13: .line 656
            aload 0 /* this */
            iconst_m1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumber:I
        14: .line 657
            aload 0 /* this */
            iconst_m1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumberStart:I
        15: .line 658
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumberUpdated:Z
        16: .line 659
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.forceDiscontinuity:Z
        17: .line 671
            aload 0 /* this */
            aload 2 /* uri */
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.playlistURI:Ljava/net/URI;
        18: .line 672
            return
        end local 2 // java.net.URI uri
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
            0   19     2   uri  Ljava/net/URI;
    MethodParameters:
        Name  Flags
      this$0  final
      uri     

  private void update(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
        start local 1 // java.lang.String nextMediaFile
         0: .line 675
            new com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser
            dup
            invokespecial com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser.<init>:()V
            astore 2 /* parser */
        start local 2 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser parser
         1: .line 676
            aload 2 /* parser */
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.playlistURI:Ljava/net/URI;
            invokevirtual com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser.load:(Ljava/net/URI;)V
         2: .line 678
            aload 0 /* this */
            aload 2 /* parser */
            invokevirtual com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser.isLivePlaylist:()Z
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLive:Z
         3: .line 679
            aload 0 /* this */
            aload 2 /* parser */
            invokevirtual com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser.getTargetDuration:()I
            sipush 1000
            imul
            i2l
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.targetDuration:J
         4: .line 681
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLive:Z
            ifeq 6
         5: .line 682
            aload 0 /* this */
            ldc -1.0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.duration:D
         6: .line 685
      StackMap locals: com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser
      StackMap stack:
            aload 0 /* this */
            aload 2 /* parser */
            invokevirtual com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser.getSequenceNumber:()I
            invokevirtual com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.setSequenceNumber:(I)Z
            ifeq 10
         7: .line 686
            goto 9
         8: .line 687
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* parser */
            invokevirtual com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser.getString:()Ljava/lang/String;
            aload 2 /* parser */
            invokevirtual com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser.getDouble:()Ljava/lang/Double;
            invokevirtual java.lang.Double.doubleValue:()D
            aload 2 /* parser */
            invokevirtual com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser.getBoolean:()Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokevirtual com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.addMediaFile:(Ljava/lang/String;DZ)V
         9: .line 686
      StackMap locals:
      StackMap stack:
            aload 2 /* parser */
            invokevirtual com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser.hasNext:()Z
            ifne 8
        10: .line 691
      StackMap locals:
      StackMap stack:
            aload 1 /* nextMediaFile */
            ifnull 24
        11: .line 692
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.lock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
        12: .line 693
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        13: goto 19
        14: .line 694
      StackMap locals: java.lang.Object int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            iload 4 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* mediaFile */
        start local 5 // java.lang.String mediaFile
        15: .line 695
            aload 1 /* nextMediaFile */
            aload 5 /* mediaFile */
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 18
        16: .line 696
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            iload 4 /* i */
            iconst_1
            isub
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
        17: .line 697
            goto 20
        end local 5 // java.lang.String mediaFile
        18: .line 693
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 4 /* i */
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 14
        end local 4 // int i
        20: .line 692
      StackMap locals:
      StackMap stack:
            aload 3
            monitorexit
        21: goto 24
      StackMap locals:
      StackMap stack: java.lang.Throwable
        22: aload 3
            monitorexit
        23: athrow
        24: .line 702
      StackMap locals:
      StackMap stack:
            return
        end local 2 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser parser
        end local 1 // java.lang.String nextMediaFile
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   25     0           this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
            0   25     1  nextMediaFile  Ljava/lang/String;
            1   25     2         parser  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$PlaylistParser;
           13   20     4              i  I
           15   18     5      mediaFile  Ljava/lang/String;
      Exception table:
        from    to  target  type
          12    21      22  any
          22    23      22  any
    MethodParameters:
               Name  Flags
      nextMediaFile  

  private boolean isLive();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
         0: .line 705
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLive:Z
            ireturn
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;

  private long getTargetDuration();
    descriptor: ()J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
         0: .line 709
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.targetDuration:J
            lreturn
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;

  private void setPlaylistURI(java.net.URI);
    descriptor: (Ljava/net/URI;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
        start local 1 // java.net.URI uri
         0: .line 713
            aload 0 /* this */
            aload 1 /* uri */
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.playlistURI:Ljava/net/URI;
         1: .line 714
            return
        end local 1 // java.net.URI uri
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
            0    2     1   uri  Ljava/net/URI;
    MethodParameters:
      Name  Flags
      uri   

  private void addMediaFile(java.lang.String, double, boolean);
    descriptor: (Ljava/lang/String;DZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
        start local 1 // java.lang.String URI
        start local 2 // double duration
        start local 4 // boolean isDiscontinuity
         0: .line 717
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.lock:Ljava/lang/Object;
            dup
            astore 5
            monitorenter
         1: .line 719
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.needBaseURI:Z
            ifeq 3
         2: .line 720
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.playlistURI:Ljava/net/URI;
            invokevirtual java.net.URI.toString:()Ljava/lang/String;
            aload 1 /* URI */
            invokevirtual com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.setBaseURI:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 723
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLive:Z
            ifeq 21
         4: .line 724
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumberUpdated:Z
            ifeq 18
         5: .line 725
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            aload 1 /* URI */
            invokeinterface java.util.List.indexOf:(Ljava/lang/Object;)I
            istore 6 /* index */
        start local 6 // int index
         6: .line 726
            iload 6 /* index */
            iconst_m1
            if_icmpeq 17
         7: .line 727
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         8: goto 16
         9: .line 728
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            pop
        10: .line 729
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesDiscontinuities:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            pop
        11: .line 730
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
            iconst_m1
            if_icmpne 13
        12: .line 731
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.forceDiscontinuity:Z
        13: .line 733
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
            iflt 15
        14: .line 734
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            dup
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
            iconst_1
            isub
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
        15: .line 727
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 7 /* i */
            iload 6 /* index */
            if_icmplt 9
        end local 7 // int i
        17: .line 738
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumberUpdated:Z
        end local 6 // int index
        18: .line 741
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            aload 1 /* URI */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifeq 21
        19: .line 742
            aload 5
            monitorexit
        20: return
        21: .line 746
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            aload 1 /* URI */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        22: .line 747
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesDiscontinuities:Ljava/util/List;
            iload 4 /* isDiscontinuity */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        23: .line 749
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLive:Z
            ifeq 27
        24: .line 750
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveWaiting:Z
            ifeq 29
        25: .line 751
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.liveSemaphore:Ljava/util/concurrent/Semaphore;
            invokevirtual java.util.concurrent.Semaphore.release:()V
        26: .line 753
            goto 29
        27: .line 754
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesStartTimes:Ljava/util/List;
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.duration:D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        28: .line 755
            aload 0 /* this */
            dup
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.duration:D
            dload 2 /* duration */
            dadd
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.duration:D
        29: .line 717
      StackMap locals:
      StackMap stack:
            aload 5
            monitorexit
        30: goto 33
      StackMap locals:
      StackMap stack: java.lang.Throwable
        31: aload 5
            monitorexit
        32: athrow
        33: .line 758
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean isDiscontinuity
        end local 2 // double duration
        end local 1 // java.lang.String URI
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   34     0             this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
            0   34     1              URI  Ljava/lang/String;
            0   34     2         duration  D
            0   34     4  isDiscontinuity  Z
            6   18     6            index  I
            8   17     7                i  I
      Exception table:
        from    to  target  type
           1    20      31  any
          21    30      31  any
          31    32      31  any
    MethodParameters:
                 Name  Flags
      URI              
      duration         
      isDiscontinuity  

  private java.lang.String getNextMediaFile();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
         0: .line 761
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLive:Z
            ifeq 20
         1: .line 762
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         2: .line 763
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
            iconst_1
            iadd
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 3
            iconst_1
            goto 4
      StackMap locals: com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist java.lang.Object
      StackMap stack: com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist
         3: iconst_0
      StackMap locals: com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist java.lang.Object
      StackMap stack: com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist int
         4: putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveWaiting:Z
         5: .line 762
            aload 1
            monitorexit
         6: goto 9
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: aload 1
            monitorexit
         8: athrow
         9: .line 765
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveWaiting:Z
            ifeq 18
        10: .line 767
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.liveSemaphore:Ljava/util/concurrent/Semaphore;
            invokevirtual java.util.concurrent.Semaphore.acquire:()V
        11: .line 768
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveWaiting:Z
        12: .line 769
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveStop:Z
            ifeq 18
        13: .line 770
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveStop:Z
        14: .line 771
            aconst_null
            areturn
        15: .line 773
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
            pop
        16: .line 774
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveWaiting:Z
        17: .line 775
            aconst_null
            areturn
        18: .line 778
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.isPlaylistClosed:Z
            ifeq 20
        19: .line 779
            aconst_null
            areturn
        20: .line 783
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
        21: .line 784
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            dup
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
            iconst_1
            iadd
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
        22: .line 785
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmpge 28
        23: .line 786
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.baseURI:Ljava/lang/String;
            ifnull 26
        24: .line 787
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.baseURI:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1
            monitorexit
        25: areturn
        26: .line 789
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            aload 1
            monitorexit
        27: areturn
        28: .line 792
      StackMap locals:
      StackMap stack:
            aload 1
            monitorexit
        29: aconst_null
            areturn
        30: .line 783
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
        31: athrow
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   32     0  this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
      Exception table:
        from    to  target  type
           2     6       7  any
           7     8       7  any
          10    14      15  Class java.lang.InterruptedException
          21    25      30  any
          26    27      30  any
          28    29      30  any
          30    31      30  any

  private double getDuration();
    descriptor: ()D
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
         0: .line 798
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.duration:D
            dreturn
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;

  private void setForceDiscontinuity(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
        start local 1 // boolean value
         0: .line 802
            aload 0 /* this */
            iload 1 /* value */
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.forceDiscontinuity:Z
         1: .line 803
            return
        end local 1 // boolean value
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
            0    2     1  value  Z
    MethodParameters:
       Name  Flags
      value  

  private boolean isCurrentMediaFileDiscontinuity();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
         0: .line 806
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.forceDiscontinuity:Z
            ifeq 3
         1: .line 807
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.forceDiscontinuity:Z
         2: .line 808
            iconst_1
            ireturn
         3: .line 810
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesDiscontinuities:Ljava/util/List;
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;

  private double seek(long);
    descriptor: (J)D
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
        start local 1 // long time
         0: .line 815
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.lock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         1: .line 816
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLive:Z
            ifeq 9
         2: .line 817
            lload 1 /* time */
            lconst_0
            lcmp
            ifne 28
         3: .line 818
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            iconst_m1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
         4: .line 819
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveWaiting:Z
            ifeq 7
         5: .line 820
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLiveStop:Z
         6: .line 821
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.liveSemaphore:Ljava/util/concurrent/Semaphore;
            invokevirtual java.util.concurrent.Semaphore.release:()V
         7: .line 823
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 3
            monitorexit
         8: dconst_0
            dreturn
         9: .line 826
      StackMap locals:
      StackMap stack:
            lload 1 /* time */
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.targetDuration:J
            ldc 2000
            ldiv
            ladd
            lstore 1 /* time */
        10: .line 828
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesStartTimes:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 4 /* mediaFileStartTimeSize */
        start local 4 // int mediaFileStartTimeSize
        11: .line 830
            iconst_0
            istore 5 /* index */
        start local 5 // int index
        12: goto 27
        13: .line 831
      StackMap locals: int int
      StackMap stack:
            lload 1 /* time */
            l2d
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesStartTimes:Ljava/util/List;
            iload 5 /* index */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Double
            invokevirtual java.lang.Double.doubleValue:()D
            dcmpl
            iflt 26
        14: .line 832
            iload 5 /* index */
            iconst_1
            iadd
            iload 4 /* mediaFileStartTimeSize */
            if_icmpge 19
        15: .line 833
            lload 1 /* time */
            l2d
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesStartTimes:Ljava/util/List;
            iload 5 /* index */
            iconst_1
            iadd
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Double
            invokevirtual java.lang.Double.doubleValue:()D
            dcmpg
            ifge 26
        16: .line 834
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            iload 5 /* index */
            iconst_1
            isub
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
        17: .line 835
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesStartTimes:Ljava/util/List;
            iload 5 /* index */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Double
            invokevirtual java.lang.Double.doubleValue:()D
            aload 3
            monitorexit
        18: dreturn
        19: .line 838
      StackMap locals:
      StackMap stack:
            lload 1 /* time */
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.targetDuration:J
            ldc 2000
            ldiv
            lsub
            l2d
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.duration:D
            dcmpg
            ifge 23
        20: .line 839
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            iload 5 /* index */
            iconst_1
            isub
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.mediaFileIndex:I
        21: .line 840
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFilesStartTimes:Ljava/util/List;
            iload 5 /* index */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.Double
            invokevirtual java.lang.Double.doubleValue:()D
            aload 3
            monitorexit
        22: dreturn
        23: .line 841
      StackMap locals:
      StackMap stack:
            lload 1 /* time */
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.targetDuration:J
            ldc 2000
            ldiv
            lsub
            l2d
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.duration:D
            invokestatic java.lang.Double.compare:(DD)I
            ifne 26
        24: .line 842
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.duration:D
            aload 3
            monitorexit
        25: dreturn
        26: .line 830
      StackMap locals:
      StackMap stack:
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        27: iload 5 /* index */
            iload 4 /* mediaFileStartTimeSize */
            if_icmplt 13
        end local 5 // int index
        end local 4 // int mediaFileStartTimeSize
        28: .line 815
      StackMap locals:
      StackMap stack:
            aload 3
            monitorexit
        29: goto 32
      StackMap locals:
      StackMap stack: java.lang.Throwable
        30: aload 3
            monitorexit
        31: athrow
        32: .line 850
      StackMap locals:
      StackMap stack:
            ldc -1.0
            dreturn
        end local 1 // long time
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   33     0                    this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
            0   33     1                    time  J
           11   28     4  mediaFileStartTimeSize  I
           12   28     5                   index  I
      Exception table:
        from    to  target  type
           1     8      30  any
           9    18      30  any
          19    22      30  any
          23    25      30  any
          26    29      30  any
          30    31      30  any
    MethodParameters:
      Name  Flags
      time  

  private int getMimeType();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
         0: .line 854
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 855
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifle 8
         2: .line 856
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic com.sun.media.jfxmedia.locator.HLSConnectionHolder.stripParameters:(Ljava/lang/String;)Ljava/lang/String;
            ldc ".ts"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 5
         3: .line 857
            aload 1
            monitorexit
         4: iconst_1
            ireturn
         5: .line 858
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic com.sun.media.jfxmedia.locator.HLSConnectionHolder.stripParameters:(Ljava/lang/String;)Ljava/lang/String;
            ldc ".mp3"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 8
         6: .line 859
            aload 1
            monitorexit
         7: iconst_2
            ireturn
         8: .line 854
      StackMap locals:
      StackMap stack:
            aload 1
            monitorexit
         9: goto 12
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: aload 1
            monitorexit
        11: athrow
        12: .line 864
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
      Exception table:
        from    to  target  type
           1     4      10  any
           5     7      10  any
           8     9      10  any
          10    11      10  any

  private java.lang.String getMediaFileExtension();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
         0: .line 868
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 869
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifle 7
         2: .line 870
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.mediaFiles:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic com.sun.media.jfxmedia.locator.HLSConnectionHolder.stripParameters:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* mediaFile */
        start local 2 // java.lang.String mediaFile
         3: .line 871
            aload 2 /* mediaFile */
            ldc "."
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            istore 3 /* index */
        start local 3 // int index
         4: .line 872
            iload 3 /* index */
            iconst_m1
            if_icmpeq 7
         5: .line 873
            aload 2 /* mediaFile */
            iload 3 /* index */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            aload 1
            monitorexit
         6: areturn
        end local 3 // int index
        end local 2 // java.lang.String mediaFile
         7: .line 868
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 1
            monitorexit
        10: athrow
        11: .line 878
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
            3    7     2  mediaFile  Ljava/lang/String;
            4    7     3      index  I
      Exception table:
        from    to  target  type
           1     6       9  any
           7     8       9  any
           9    10       9  any

  private boolean setSequenceNumber(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
        start local 1 // int value
         0: .line 882
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumberStart:I
            iconst_m1
            if_icmpne 3
         1: .line 883
            aload 0 /* this */
            iload 1 /* value */
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumberStart:I
         2: .line 884
            goto 8
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumber:I
            iload 1 /* value */
            if_icmpeq 7
         4: .line 885
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumberUpdated:Z
         5: .line 886
            aload 0 /* this */
            iload 1 /* value */
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.sequenceNumber:I
         6: .line 887
            goto 8
         7: .line 888
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         8: .line 891
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // int value
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
            0    9     1  value  I
    MethodParameters:
       Name  Flags
      value  

  private void close();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
         0: .line 895
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.isLive:Z
            ifeq 3
         1: .line 896
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            iconst_1
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.isPlaylistClosed:Z
         2: .line 897
            aload 0 /* this */
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.this$0:Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder;
            getfield com.sun.media.jfxmedia.locator.HLSConnectionHolder.liveSemaphore:Ljava/util/concurrent/Semaphore;
            invokevirtual java.util.concurrent.Semaphore.release:()V
         3: .line 899
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;

  private void setBaseURI(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
        start local 1 // java.lang.String playlistURI
        start local 2 // java.lang.String URI
         0: .line 902
            aload 2 /* URI */
            ldc "http://"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 2
            aload 2 /* URI */
            ldc "https://"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 2
         1: .line 903
            aload 0 /* this */
            aload 1 /* playlistURI */
            iconst_0
            aload 1 /* playlistURI */
            ldc "/"
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.baseURI:Ljava/lang/String;
         2: .line 905
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist.needBaseURI:Z
         3: .line 906
            return
        end local 2 // java.lang.String URI
        end local 1 // java.lang.String playlistURI
        end local 0 // com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/sun/media/jfxmedia/locator/HLSConnectionHolder$Playlist;
            0    4     1  playlistURI  Ljava/lang/String;
            0    4     2          URI  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      playlistURI  
      URI          
}
SourceFile: "HLSConnectionHolder.java"
NestHost: com.sun.media.jfxmedia.locator.HLSConnectionHolder
InnerClasses:
  private Playlist = com.sun.media.jfxmedia.locator.HLSConnectionHolder$Playlist of com.sun.media.jfxmedia.locator.HLSConnectionHolder
  private PlaylistParser = com.sun.media.jfxmedia.locator.HLSConnectionHolder$PlaylistParser of com.sun.media.jfxmedia.locator.HLSConnectionHolder