class android.media.SubtitleTrack$CueList
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: android.media.SubtitleTrack$CueList
  super_class: java.lang.Object
{
  private static final java.lang.String TAG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "CueList"

  private java.util.SortedMap<java.lang.Long, java.util.Vector<android.media.SubtitleTrack$Cue>> mCues;
    descriptor: Ljava/util/SortedMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/SortedMap<Ljava/lang/Long;Ljava/util/Vector<Landroid/media/SubtitleTrack$Cue;>;>;

  public boolean DEBUG;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  private boolean addEvent(android.media.SubtitleTrack$Cue, long);
    descriptor: (Landroid/media/SubtitleTrack$Cue;J)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // android.media.SubtitleTrack$CueList this
        start local 1 // android.media.SubtitleTrack$Cue cue
        start local 2 // long timeMs
         0: .line 401
            aload 0 /* this */
            getfield android.media.SubtitleTrack$CueList.mCues:Ljava/util/SortedMap;
            lload 2 /* timeMs */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.SortedMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Vector
            astore 4 /* cues */
        start local 4 // java.util.Vector cues
         1: .line 402
            aload 4 /* cues */
            ifnonnull 5
         2: .line 403
            new java.util.Vector
            dup
            iconst_2
            invokespecial java.util.Vector.<init>:(I)V
            astore 4 /* cues */
         3: .line 404
            aload 0 /* this */
            getfield android.media.SubtitleTrack$CueList.mCues:Ljava/util/SortedMap;
            lload 2 /* timeMs */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aload 4 /* cues */
            invokeinterface java.util.SortedMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 405
            goto 7
      StackMap locals: java.util.Vector
      StackMap stack:
         5: aload 4 /* cues */
            aload 1 /* cue */
            invokevirtual java.util.Vector.contains:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 407
            iconst_0
            ireturn
         7: .line 410
      StackMap locals:
      StackMap stack:
            aload 4 /* cues */
            aload 1 /* cue */
            invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
            pop
         8: .line 411
            iconst_1
            ireturn
        end local 4 // java.util.Vector cues
        end local 2 // long timeMs
        end local 1 // android.media.SubtitleTrack$Cue cue
        end local 0 // android.media.SubtitleTrack$CueList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Landroid/media/SubtitleTrack$CueList;
            0    9     1     cue  Landroid/media/SubtitleTrack$Cue;
            0    9     2  timeMs  J
            1    9     4    cues  Ljava/util/Vector<Landroid/media/SubtitleTrack$Cue;>;
    MethodParameters:
        Name  Flags
      cue     
      timeMs  

  private void removeEvent(android.media.SubtitleTrack$Cue, long);
    descriptor: (Landroid/media/SubtitleTrack$Cue;J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // android.media.SubtitleTrack$CueList this
        start local 1 // android.media.SubtitleTrack$Cue cue
        start local 2 // long timeMs
         0: .line 415
            aload 0 /* this */
            getfield android.media.SubtitleTrack$CueList.mCues:Ljava/util/SortedMap;
            lload 2 /* timeMs */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.SortedMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Vector
            astore 4 /* cues */
        start local 4 // java.util.Vector cues
         1: .line 416
            aload 4 /* cues */
            ifnull 5
         2: .line 417
            aload 4 /* cues */
            aload 1 /* cue */
            invokevirtual java.util.Vector.remove:(Ljava/lang/Object;)Z
            pop
         3: .line 418
            aload 4 /* cues */
            invokevirtual java.util.Vector.size:()I
            ifne 5
         4: .line 419
            aload 0 /* this */
            getfield android.media.SubtitleTrack$CueList.mCues:Ljava/util/SortedMap;
            lload 2 /* timeMs */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.SortedMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 422
      StackMap locals: java.util.Vector
      StackMap stack:
            return
        end local 4 // java.util.Vector cues
        end local 2 // long timeMs
        end local 1 // android.media.SubtitleTrack$Cue cue
        end local 0 // android.media.SubtitleTrack$CueList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Landroid/media/SubtitleTrack$CueList;
            0    6     1     cue  Landroid/media/SubtitleTrack$Cue;
            0    6     2  timeMs  J
            1    6     4    cues  Ljava/util/Vector<Landroid/media/SubtitleTrack$Cue;>;
    MethodParameters:
        Name  Flags
      cue     
      timeMs  

  public void add(android.media.SubtitleTrack$Cue);
    descriptor: (Landroid/media/SubtitleTrack$Cue;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=2
        start local 0 // android.media.SubtitleTrack$CueList this
        start local 1 // android.media.SubtitleTrack$Cue cue
         0: .line 426
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mStartTimeMs:J
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mEndTimeMs:J
            lcmp
            iflt 2
         1: .line 427
            return
         2: .line 429
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cue */
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mStartTimeMs:J
            invokevirtual android.media.SubtitleTrack$CueList.addEvent:(Landroid/media/SubtitleTrack$Cue;J)Z
            ifne 4
         3: .line 430
            return
         4: .line 433
      StackMap locals:
      StackMap stack:
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mStartTimeMs:J
            lstore 2 /* lastTimeMs */
        start local 2 // long lastTimeMs
         5: .line 434
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mInnerTimesMs:[J
            ifnull 13
         6: .line 435
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mInnerTimesMs:[J
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 12
      StackMap locals: android.media.SubtitleTrack$CueList android.media.SubtitleTrack$Cue long top top int int long[]
      StackMap stack:
         7: aload 8
            iload 6
            laload
            lstore 4 /* timeMs */
        start local 4 // long timeMs
         8: .line 436
            lload 4 /* timeMs */
            lload 2 /* lastTimeMs */
            lcmp
            ifle 11
            lload 4 /* timeMs */
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mEndTimeMs:J
            lcmp
            ifge 11
         9: .line 437
            aload 0 /* this */
            aload 1 /* cue */
            lload 4 /* timeMs */
            invokevirtual android.media.SubtitleTrack$CueList.addEvent:(Landroid/media/SubtitleTrack$Cue;J)Z
            pop
        10: .line 438
            lload 4 /* timeMs */
            lstore 2 /* lastTimeMs */
        end local 4 // long timeMs
        11: .line 435
      StackMap locals:
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        12: iload 6
            iload 7
            if_icmplt 7
        13: .line 443
      StackMap locals: android.media.SubtitleTrack$CueList android.media.SubtitleTrack$Cue long
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cue */
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mEndTimeMs:J
            invokevirtual android.media.SubtitleTrack$CueList.addEvent:(Landroid/media/SubtitleTrack$Cue;J)Z
            pop
        14: .line 444
            return
        end local 2 // long lastTimeMs
        end local 1 // android.media.SubtitleTrack$Cue cue
        end local 0 // android.media.SubtitleTrack$CueList this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Landroid/media/SubtitleTrack$CueList;
            0   15     1         cue  Landroid/media/SubtitleTrack$Cue;
            5   15     2  lastTimeMs  J
            8   11     4      timeMs  J
    MethodParameters:
      Name  Flags
      cue   

  public void remove(android.media.SubtitleTrack$Cue);
    descriptor: (Landroid/media/SubtitleTrack$Cue;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // android.media.SubtitleTrack$CueList this
        start local 1 // android.media.SubtitleTrack$Cue cue
         0: .line 447
            aload 0 /* this */
            aload 1 /* cue */
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mStartTimeMs:J
            invokevirtual android.media.SubtitleTrack$CueList.removeEvent:(Landroid/media/SubtitleTrack$Cue;J)V
         1: .line 448
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mInnerTimesMs:[J
            ifnull 7
         2: .line 449
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mInnerTimesMs:[J
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 6
      StackMap locals: android.media.SubtitleTrack$CueList android.media.SubtitleTrack$Cue top top int int long[]
      StackMap stack:
         3: aload 6
            iload 4
            laload
            lstore 2 /* timeMs */
        start local 2 // long timeMs
         4: .line 450
            aload 0 /* this */
            aload 1 /* cue */
            lload 2 /* timeMs */
            invokevirtual android.media.SubtitleTrack$CueList.removeEvent:(Landroid/media/SubtitleTrack$Cue;J)V
        end local 2 // long timeMs
         5: .line 449
            iinc 4 1
      StackMap locals:
      StackMap stack:
         6: iload 4
            iload 5
            if_icmplt 3
         7: .line 453
      StackMap locals: android.media.SubtitleTrack$CueList android.media.SubtitleTrack$Cue
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cue */
            aload 1 /* cue */
            getfield android.media.SubtitleTrack$Cue.mEndTimeMs:J
            invokevirtual android.media.SubtitleTrack$CueList.removeEvent:(Landroid/media/SubtitleTrack$Cue;J)V
         8: .line 454
            return
        end local 1 // android.media.SubtitleTrack$Cue cue
        end local 0 // android.media.SubtitleTrack$CueList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Landroid/media/SubtitleTrack$CueList;
            0    9     1     cue  Landroid/media/SubtitleTrack$Cue;
            4    5     2  timeMs  J
    MethodParameters:
      Name  Flags
      cue   

  public java.lang.Iterable<android.util.Pair<java.lang.Long, android.media.SubtitleTrack$Cue>> entriesBetween(long, long);
    descriptor: (JJ)Ljava/lang/Iterable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // android.media.SubtitleTrack$CueList this
        start local 1 // long lastTimeMs
        start local 3 // long timeMs
         0: .line 458
            new android.media.SubtitleTrack$CueList$1
            dup
            aload 0 /* this */
            lload 1 /* lastTimeMs */
            lload 3 /* timeMs */
            invokespecial android.media.SubtitleTrack$CueList$1.<init>:(Landroid/media/SubtitleTrack$CueList;JJ)V
            areturn
        end local 3 // long timeMs
        end local 1 // long lastTimeMs
        end local 0 // android.media.SubtitleTrack$CueList this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/SubtitleTrack$CueList;
            0    1     1  lastTimeMs  J
            0    1     3      timeMs  J
    Signature: (JJ)Ljava/lang/Iterable<Landroid/util/Pair<Ljava/lang/Long;Landroid/media/SubtitleTrack$Cue;>;>;
    MethodParameters:
            Name  Flags
      lastTimeMs  final
      timeMs      final

  public long nextTimeAfter(long);
    descriptor: (J)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // android.media.SubtitleTrack$CueList this
        start local 1 // long timeMs
         0: .line 473
            aconst_null
            astore 3 /* tail */
        start local 3 // java.util.SortedMap tail
         1: .line 475
            aload 0 /* this */
            getfield android.media.SubtitleTrack$CueList.mCues:Ljava/util/SortedMap;
            lload 1 /* timeMs */
            lconst_1
            ladd
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.SortedMap.tailMap:(Ljava/lang/Object;)Ljava/util/SortedMap;
            astore 3 /* tail */
         2: .line 476
            aload 3 /* tail */
            ifnull 5
         3: .line 477
            aload 3 /* tail */
            invokeinterface java.util.SortedMap.firstKey:()Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
         4: lreturn
         5: .line 479
      StackMap locals: java.util.SortedMap
      StackMap stack:
            ldc -1
            lreturn
         6: .line 481
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            pop
         7: .line 482
            ldc -1
            lreturn
         8: .line 483
      StackMap locals:
      StackMap stack: java.util.NoSuchElementException
            pop
         9: .line 484
            ldc -1
            lreturn
        end local 3 // java.util.SortedMap tail
        end local 1 // long timeMs
        end local 0 // android.media.SubtitleTrack$CueList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Landroid/media/SubtitleTrack$CueList;
            0   10     1  timeMs  J
            1   10     3    tail  Ljava/util/SortedMap<Ljava/lang/Long;Ljava/util/Vector<Landroid/media/SubtitleTrack$Cue;>;>;
      Exception table:
        from    to  target  type
           1     4       6  Class java.lang.IllegalArgumentException
           1     4       8  Class java.util.NoSuchElementException
    MethodParameters:
        Name  Flags
      timeMs  

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.media.SubtitleTrack$CueList this
         0: .line 573
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 398
            aload 0 /* this */
            iconst_0
            putfield android.media.SubtitleTrack$CueList.DEBUG:Z
         2: .line 574
            aload 0 /* this */
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            putfield android.media.SubtitleTrack$CueList.mCues:Ljava/util/SortedMap;
         3: .line 575
            return
        end local 0 // android.media.SubtitleTrack$CueList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/media/SubtitleTrack$CueList;
}
SourceFile: "SubtitleTrack.java"
NestHost: android.media.SubtitleTrack
InnerClasses:
  public Cue = android.media.SubtitleTrack$Cue of android.media.SubtitleTrack
  CueList = android.media.SubtitleTrack$CueList of android.media.SubtitleTrack
  android.media.SubtitleTrack$CueList$1
  EntryIterator = android.media.SubtitleTrack$CueList$EntryIterator of android.media.SubtitleTrack$CueList