Class #13            -
  Class descriptor  : 'Lcom/valentinedesigns/chromalink/AudioTransport;'
  Access flags      : 0x0010 (FINAL)
  Superclass        : 'Ljava/lang/Object;'
  Interfaces        -
  Static fields     -
  Instance fields   -
    #0              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'audibleEpoch'
      type          : 'I'
      access        : 0x0002 (PRIVATE)
    #1              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'audibleLength'
      type          : 'I'
      access        : 0x0002 (PRIVATE)
    #2              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'audibleOutcome'
      type          : 'J'
      access        : 0x0002 (PRIVATE)
    #3              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'audibleSong'
      type          : 'J'
      access        : 0x0002 (PRIVATE)
    #4              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'epoch'
      type          : 'I'
      access        : 0x0002 (PRIVATE)
    #5              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'epochCounter'
      type          : 'I'
      access        : 0x0002 (PRIVATE)
    #6              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'loss'
      type          : 'Z'
      access        : 0x0002 (PRIVATE)
    #7              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'outcome'
      type          : 'J'
      access        : 0x0002 (PRIVATE)
    #8              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'pending'
      type          : 'Ljava/util/ArrayDeque;'
      access        : 0x0012 (PRIVATE FINAL)
    #9              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'queued'
      type          : 'J'
      access        : 0x0002 (PRIVATE)
    #10              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'song'
      type          : 'J'
      access        : 0x0002 (PRIVATE)
    #11              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'songLength'
      type          : 'I'
      access        : 0x0002 (PRIVATE)
  Direct methods    -
    #0              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10000 (CONSTRUCTOR)
      code          -
      registers     : 2
      ins           : 1
      outs          : 1
      insns size    : 16 16-bit code units
00ee08:                                        |[00ee08] com.valentinedesigns.chromalink.AudioTransport.<init>:()V
00ee18: 7010 5006 0100                         |0000: invoke-direct {v1}, Ljava/lang/Object;.<init>:()V // method@0650
00ee1e: 2200 5b01                              |0003: new-instance v0, Ljava/util/ArrayDeque; // type@015b
00ee22: 7010 7e06 0000                         |0005: invoke-direct {v0}, Ljava/util/ArrayDeque;.<init>:()V // method@067e
00ee28: 5b10 8900                              |0008: iput-object v0, v1, Lcom/valentinedesigns/chromalink/AudioTransport;.pending:Ljava/util/ArrayDeque; // field@0089
00ee2c: 1210                                   |000a: const/4 v0, #int 1 // #1
00ee2e: 5910 8c00                              |000b: iput v0, v1, Lcom/valentinedesigns/chromalink/AudioTransport;.songLength:I // field@008c
00ee32: 5910 8200                              |000d: iput v0, v1, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleLength:I // field@0082
00ee36: 0e00                                   |000f: return-void
      catches       : (none)
      positions     :
        0x0000 line=11
        0x0003 line=22
        0x000a line=24
      locals        :
        0x0000 - 0x0010 reg=1 this Lcom/valentinedesigns/chromalink/AudioTransport;

  Virtual methods   -
    #0              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'acknowledge'
      type          : '(J)V'
      access        : 0x0000 ()
      code          -
      registers     : 10
      ins           : 3
      outs          : 4
      insns size    : 101 16-bit code units
00ee38:                                        |[00ee38] com.valentinedesigns.chromalink.AudioTransport.acknowledge:(J)V
00ee48: 5370 8a00                              |0000: iget-wide v0, v7, Lcom/valentinedesigns/chromalink/AudioTransport;.queued:J // field@008a
00ee4c: 7140 4906 9810                         |0002: invoke-static {v8, v9, v0, v1}, Ljava/lang/Math;.min:(JJ)J // method@0649
00ee52: 0b08                                   |0005: move-result-wide v8
00ee54: 1600 0000                              |0006: const-wide/16 v0, #int 0 // #0
00ee58: 7140 4506 1098                         |0008: invoke-static {v0, v1, v8, v9}, Ljava/lang/Math;.max:(JJ)J // method@0645
00ee5e: 0b08                                   |000b: move-result-wide v8
00ee60: 5470 8900                              |000c: iget-object v0, v7, Lcom/valentinedesigns/chromalink/AudioTransport;.pending:Ljava/util/ArrayDeque; // field@0089
00ee64: 6e10 8206 0000                         |000e: invoke-virtual {v0}, Ljava/util/ArrayDeque;.isEmpty:()Z // method@0682
00ee6a: 0a00                                   |0011: move-result v0
00ee6c: 3900 5200                              |0012: if-nez v0, 0064 // +0052
00ee70: 5470 8900                              |0014: iget-object v0, v7, Lcom/valentinedesigns/chromalink/AudioTransport;.pending:Ljava/util/ArrayDeque; // field@0089
00ee74: 6e10 8306 0000                         |0016: invoke-virtual {v0}, Ljava/util/ArrayDeque;.peekFirst:()Ljava/lang/Object; // method@0683
00ee7a: 0c00                                   |0019: move-result-object v0
00ee7c: 1f00 9500                              |001a: check-cast v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block; // type@0095
00ee80: 5301 8000                              |001c: iget-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.start:J // field@0080
00ee84: 3101 0801                              |001e: cmp-long v1, v8, v1
00ee88: 3b01 0300                              |0020: if-gez v1, 0023 // +0003
00ee8c: 2842                                   |0022: goto 0064 // +0042
00ee8e: 5201 7a00                              |0023: iget v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.frames:I // field@007a
00ee92: 8111                                   |0025: int-to-long v1, v1
00ee94: 5303 8000                              |0026: iget-wide v3, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.start:J // field@0080
00ee98: 9c03 0803                              |0028: sub-long v3, v8, v3
00ee9c: 7140 4906 2143                         |002a: invoke-static {v1, v2, v3, v4}, Ljava/lang/Math;.min:(JJ)J // method@0649
00eea2: 0b01                                   |002d: move-result-wide v1
00eea4: 5203 7900                              |002e: iget v3, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.epoch:I // field@0079
00eea8: 5973 8100                              |0030: iput v3, v7, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleEpoch:I // field@0081
00eeac: 5203 7b00                              |0032: iget v3, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.length:I // field@007b
00eeb0: 5973 8200                              |0034: iput v3, v7, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleLength:I // field@0082
00eeb4: 5503 7f00                              |0036: iget-boolean v3, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.songRuns:Z // field@007f
00eeb8: 3803 0e00                              |0038: if-eqz v3, 0046 // +000e
00eebc: 5503 7c00                              |003a: iget-boolean v3, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.loss:Z // field@007c
00eec0: 3903 0a00                              |003c: if-nez v3, 0046 // +000a
00eec4: 5303 7e00                              |003e: iget-wide v3, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.song:J // field@007e
00eec8: bb13                                   |0040: add-long/2addr v3, v1
00eeca: 5205 7b00                              |0041: iget v5, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.length:I // field@007b
00eece: 8155                                   |0043: int-to-long v5, v5
00eed0: bf53                                   |0044: rem-long/2addr v3, v5
00eed2: 2803                                   |0045: goto 0048 // +0003
00eed4: 5303 7e00                              |0046: iget-wide v3, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.song:J // field@007e
00eed8: 5a73 8400                              |0048: iput-wide v3, v7, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleSong:J // field@0084
00eedc: 5503 7c00                              |004a: iget-boolean v3, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.loss:Z // field@007c
00eee0: 3803 0600                              |004c: if-eqz v3, 0052 // +0006
00eee4: 5303 7d00                              |004e: iget-wide v3, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.outcome:J // field@007d
00eee8: bb13                                   |0050: add-long/2addr v3, v1
00eeea: 2803                                   |0051: goto 0054 // +0003
00eeec: 5303 7d00                              |0052: iget-wide v3, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.outcome:J // field@007d
00eef0: 5a73 8300                              |0054: iput-wide v3, v7, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleOutcome:J // field@0083
00eef4: 5200 7a00                              |0056: iget v0, v0, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.frames:I // field@007a
00eef8: 8103                                   |0058: int-to-long v3, v0
00eefa: 3100 0103                              |0059: cmp-long v0, v1, v3
00eefe: 3b00 0300                              |005b: if-gez v0, 005e // +0003
00ef02: 2807                                   |005d: goto 0064 // +0007
00ef04: 5470 8900                              |005e: iget-object v0, v7, Lcom/valentinedesigns/chromalink/AudioTransport;.pending:Ljava/util/ArrayDeque; // field@0089
00ef08: 6e10 8506 0000                         |0060: invoke-virtual {v0}, Ljava/util/ArrayDeque;.removeFirst:()Ljava/lang/Object; // method@0685
00ef0e: 28a9                                   |0063: goto 000c // -0057
00ef10: 0e00                                   |0064: return-void
      catches       : (none)
      positions     :
        0x0000 line=67
        0x000c line=68
        0x0014 line=69
        0x001c line=70
        0x0023 line=71
        0x002e line=72
        0x0036 line=73
        0x004a line=74
        0x0056 line=75
        0x005e line=76
        0x0063 line=77
        0x0064 line=78
      locals        :
        0x0000 - 0x0065 reg=7 this Lcom/valentinedesigns/chromalink/AudioTransport;
        0x0000 - 0x0065 reg=8 (null) J

    #1              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'audibleSongEpoch'
      type          : '()I'
      access        : 0x0000 ()
      code          -
      registers     : 2
      ins           : 1
      outs          : 0
      insns size    : 3 16-bit code units
00ed78:                                        |[00ed78] com.valentinedesigns.chromalink.AudioTransport.audibleSongEpoch:()I
00ed88: 5210 8100                              |0000: iget v0, v1, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleEpoch:I // field@0081
00ed8c: 0f00                                   |0002: return v0
      catches       : (none)
      positions     :
        0x0000 line=32
      locals        :
        0x0000 - 0x0003 reg=1 this Lcom/valentinedesigns/chromalink/AudioTransport;

    #2              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'audibleSongFrame'
      type          : '()J'
      access        : 0x0000 ()
      code          -
      registers     : 3
      ins           : 1
      outs          : 0
      insns size    : 3 16-bit code units
00eda8:                                        |[00eda8] com.valentinedesigns.chromalink.AudioTransport.audibleSongFrame:()J
00edb8: 5320 8400                              |0000: iget-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleSong:J // field@0084
00edbc: 1000                                   |0002: return-wide v0
      catches       : (none)
      positions     :
        0x0000 line=28
      locals        :
        0x0000 - 0x0003 reg=2 this Lcom/valentinedesigns/chromalink/AudioTransport;

    #3              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'beginSong'
      type          : '(I)V'
      access        : 0x0000 ()
      code          -
      registers     : 4
      ins           : 2
      outs          : 2
      insns size    : 30 16-bit code units
00ef14:                                        |[00ef14] com.valentinedesigns.chromalink.AudioTransport.beginSong:(I)V
00ef24: 3d03 1600                              |0000: if-lez v3, 0016 // +0016
00ef28: 5220 8600                              |0002: iget v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.epochCounter:I // field@0086
00ef2c: d800 0001                              |0004: add-int/lit8 v0, v0, #int 1 // #01
00ef30: 5920 8600                              |0006: iput v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.epochCounter:I // field@0086
00ef34: 5920 8500                              |0008: iput v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.epoch:I // field@0085
00ef38: 5923 8c00                              |000a: iput v3, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.songLength:I // field@008c
00ef3c: 1600 0000                              |000c: const-wide/16 v0, #int 0 // #0
00ef40: 5a20 8800                              |000e: iput-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.outcome:J // field@0088
00ef44: 5a20 8b00                              |0010: iput-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.song:J // field@008b
00ef48: 1203                                   |0012: const/4 v3, #int 0 // #0
00ef4a: 5c23 8700                              |0013: iput-boolean v3, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.loss:Z // field@0087
00ef4e: 0e00                                   |0015: return-void
00ef50: 2203 3d01                              |0016: new-instance v3, Ljava/lang/IllegalArgumentException; // type@013d
00ef54: 1a00 3204                              |0018: const-string v0, "Positive song length required" // string@0432
00ef58: 7020 2e06 0300                         |001a: invoke-direct {v3, v0}, Ljava/lang/IllegalArgumentException;.<init>:(Ljava/lang/String;)V // method@062e
00ef5e: 2703                                   |001d: throw v3
      catches       : (none)
      positions     :
        0x0000 line=47
        0x0002 line=48
        0x0015 line=49
        0x0016 line=47
      locals        :
        0x0000 - 0x001e reg=2 this Lcom/valentinedesigns/chromalink/AudioTransport;
        0x0000 - 0x001e reg=3 (null) I

    #4              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'flushAt'
      type          : '(J)V'
      access        : 0x0000 ()
      code          -
      registers     : 3
      ins           : 3
      outs          : 3
      insns size    : 29 16-bit code units
00ef60:                                        |[00ef60] com.valentinedesigns.chromalink.AudioTransport.flushAt:(J)V
00ef70: 6e30 2702 1002                         |0000: invoke-virtual {v0, v1, v2}, Lcom/valentinedesigns/chromalink/AudioTransport;.acknowledge:(J)V // method@0227
00ef76: 5201 8100                              |0003: iget v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleEpoch:I // field@0081
00ef7a: 5901 8500                              |0005: iput v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.epoch:I // field@0085
00ef7e: 5201 8200                              |0007: iget v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleLength:I // field@0082
00ef82: 5901 8c00                              |0009: iput v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.songLength:I // field@008c
00ef86: 5301 8400                              |000b: iget-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleSong:J // field@0084
00ef8a: 5a01 8b00                              |000d: iput-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.song:J // field@008b
00ef8e: 5301 8300                              |000f: iget-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleOutcome:J // field@0083
00ef92: 5a01 8800                              |0011: iput-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.outcome:J // field@0088
00ef96: 5401 8900                              |0013: iget-object v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.pending:Ljava/util/ArrayDeque; // field@0089
00ef9a: 6e10 8106 0100                         |0015: invoke-virtual {v1}, Ljava/util/ArrayDeque;.clear:()V // method@0681
00efa0: 1601 0000                              |0018: const-wide/16 v1, #int 0 // #0
00efa4: 5a01 8a00                              |001a: iput-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.queued:J // field@008a
00efa8: 0e00                                   |001c: return-void
      catches       : (none)
      positions     :
        0x0000 line=82
        0x0013 line=83
        0x001c line=84
      locals        :
        0x0000 - 0x001d reg=0 this Lcom/valentinedesigns/chromalink/AudioTransport;
        0x0000 - 0x001d reg=1 (null) J

    #5              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'isLoss'
      type          : '()Z'
      access        : 0x0000 ()
      code          -
      registers     : 2
      ins           : 1
      outs          : 0
      insns size    : 3 16-bit code units
00ed60:                                        |[00ed60] com.valentinedesigns.chromalink.AudioTransport.isLoss:()Z
00ed70: 5510 8700                              |0000: iget-boolean v0, v1, Lcom/valentinedesigns/chromalink/AudioTransport;.loss:Z // field@0087
00ed74: 0f00                                   |0002: return v0
      catches       : (none)
      positions     :
        0x0000 line=33
      locals        :
        0x0000 - 0x0003 reg=1 this Lcom/valentinedesigns/chromalink/AudioTransport;

    #6              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'outcomeFrame'
      type          : '()J'
      access        : 0x0000 ()
      code          -
      registers     : 3
      ins           : 1
      outs          : 0
      insns size    : 3 16-bit code units
00edc0:                                        |[00edc0] com.valentinedesigns.chromalink.AudioTransport.outcomeFrame:()J
00edd0: 5320 8800                              |0000: iget-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.outcome:J // field@0088
00edd4: 1000                                   |0002: return-wide v0
      catches       : (none)
      positions     :
        0x0000 line=29
      locals        :
        0x0000 - 0x0003 reg=2 this Lcom/valentinedesigns/chromalink/AudioTransport;

    #7              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'queue'
      type          : '(IZ)V'
      access        : 0x0000 ()
      code          -
      registers     : 19
      ins           : 3
      outs          : 12
      insns size    : 69 16-bit code units
00efac:                                        |[00efac] com.valentinedesigns.chromalink.AudioTransport.queue:(IZ)V
00efbc: 0800 1000                              |0000: move-object/from16 v0, v16
00efc0: 020d 1100                              |0002: move/from16 v13, v17
00efc4: 3d0d 3900                              |0004: if-lez v13, 003d // +0039
00efc8: 540e 8900                              |0006: iget-object v14, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.pending:Ljava/util/ArrayDeque; // field@0089
00efcc: 220f 9500                              |0008: new-instance v15, Lcom/valentinedesigns/chromalink/AudioTransport$Block; // type@0095
00efd0: 5302 8a00                              |000a: iget-wide v2, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.queued:J // field@008a
00efd4: 5305 8b00                              |000c: iget-wide v5, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.song:J // field@008b
00efd8: 5307 8800                              |000e: iget-wide v7, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.outcome:J // field@0088
00efdc: 550a 8700                              |0010: iget-boolean v10, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.loss:Z // field@0087
00efe0: 520b 8c00                              |0012: iget v11, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.songLength:I // field@008c
00efe4: 520c 8500                              |0014: iget v12, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.epoch:I // field@0085
00efe8: 07f1                                   |0016: move-object v1, v15
00efea: 0204 1100                              |0017: move/from16 v4, v17
00efee: 0209 1200                              |0019: move/from16 v9, v18
00eff2: 760c 2502 0100                         |001b: invoke-direct/range {v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12}, Lcom/valentinedesigns/chromalink/AudioTransport$Block;.<init>:(JIJJZZII)V // method@0225
00eff8: 6e20 8006 fe00                         |001e: invoke-virtual {v14, v15}, Ljava/util/ArrayDeque;.addLast:(Ljava/lang/Object;)V // method@0680
00effe: 5301 8a00                              |0021: iget-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.queued:J // field@008a
00f002: 81d3                                   |0023: int-to-long v3, v13
00f004: bb31                                   |0024: add-long/2addr v1, v3
00f006: 5a01 8a00                              |0025: iput-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.queued:J // field@008a
00f00a: 5501 8700                              |0027: iget-boolean v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.loss:Z // field@0087
00f00e: 3801 0800                              |0029: if-eqz v1, 0031 // +0008
00f012: 5301 8800                              |002b: iget-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.outcome:J // field@0088
00f016: bb31                                   |002d: add-long/2addr v1, v3
00f018: 5a01 8800                              |002e: iput-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.outcome:J // field@0088
00f01c: 280c                                   |0030: goto 003c // +000c
00f01e: 3812 0b00                              |0031: if-eqz v18, 003c // +000b
00f022: 5301 8b00                              |0033: iget-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.song:J // field@008b
00f026: bb31                                   |0035: add-long/2addr v1, v3
00f028: 5203 8c00                              |0036: iget v3, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.songLength:I // field@008c
00f02c: 8133                                   |0038: int-to-long v3, v3
00f02e: bf31                                   |0039: rem-long/2addr v1, v3
00f030: 5a01 8b00                              |003a: iput-wide v1, v0, Lcom/valentinedesigns/chromalink/AudioTransport;.song:J // field@008b
00f034: 0e00                                   |003c: return-void
00f036: 2201 3d01                              |003d: new-instance v1, Ljava/lang/IllegalArgumentException; // type@013d
00f03a: 1a02 3004                              |003f: const-string v2, "Positive block length required" // string@0430
00f03e: 7020 2e06 2100                         |0041: invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;.<init>:(Ljava/lang/String;)V // method@062e
00f044: 2701                                   |0044: throw v1
      catches       : (none)
      positions     :
        0x0000 line=58
        0x0006 line=59
        0x0021 line=60
        0x0027 line=61
        0x0031 line=62
        0x003c line=63
        0x003d line=58
      locals        :
        0x0000 - 0x0045 reg=16 this Lcom/valentinedesigns/chromalink/AudioTransport;
        0x0000 - 0x0045 reg=17 (null) I
        0x0000 - 0x0045 reg=18 (null) Z

    #8              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'queuedFrames'
      type          : '()J'
      access        : 0x0000 ()
      code          -
      registers     : 3
      ins           : 1
      outs          : 0
      insns size    : 3 16-bit code units
00edd8:                                        |[00edd8] com.valentinedesigns.chromalink.AudioTransport.queuedFrames:()J
00ede8: 5320 8a00                              |0000: iget-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.queued:J // field@008a
00edec: 1000                                   |0002: return-wide v0
      catches       : (none)
      positions     :
        0x0000 line=30
      locals        :
        0x0000 - 0x0003 reg=2 this Lcom/valentinedesigns/chromalink/AudioTransport;

    #9              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'selectSong'
      type          : '()V'
      access        : 0x0000 ()
      code          -
      registers     : 3
      ins           : 1
      outs          : 1
      insns size    : 35 16-bit code units
00f048:                                        |[00f048] com.valentinedesigns.chromalink.AudioTransport.selectSong:()V
00f058: 5420 8900                              |0000: iget-object v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.pending:Ljava/util/ArrayDeque; // field@0089
00f05c: 6e10 8106 0000                         |0002: invoke-virtual {v0}, Ljava/util/ArrayDeque;.clear:()V // method@0681
00f062: 1600 0000                              |0005: const-wide/16 v0, #int 0 // #0
00f066: 5a20 8300                              |0007: iput-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleOutcome:J // field@0083
00f06a: 5a20 8400                              |0009: iput-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleSong:J // field@0084
00f06e: 5a20 8a00                              |000b: iput-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.queued:J // field@008a
00f072: 5a20 8800                              |000d: iput-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.outcome:J // field@0088
00f076: 5a20 8b00                              |000f: iput-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.song:J // field@008b
00f07a: 1200                                   |0011: const/4 v0, #int 0 // #0
00f07c: 5c20 8700                              |0012: iput-boolean v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.loss:Z // field@0087
00f080: 5220 8600                              |0014: iget v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.epochCounter:I // field@0086
00f084: d800 0001                              |0016: add-int/lit8 v0, v0, #int 1 // #01
00f088: 5920 8600                              |0018: iput v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.epochCounter:I // field@0086
00f08c: 5920 8100                              |001a: iput v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleEpoch:I // field@0081
00f090: 5920 8500                              |001c: iput v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.epoch:I // field@0085
00f094: 5220 8c00                              |001e: iget v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.songLength:I // field@008c
00f098: 5920 8200                              |0020: iput v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleLength:I // field@0082
00f09c: 0e00                                   |0022: return-void
      catches       : (none)
      positions     :
        0x0000 line=42
        0x0022 line=43
      locals        :
        0x0000 - 0x0023 reg=2 this Lcom/valentinedesigns/chromalink/AudioTransport;

    #10              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'setLoss'
      type          : '(Z)V'
      access        : 0x0000 ()
      code          -
      registers     : 4
      ins           : 2
      outs          : 0
      insns size    : 14 16-bit code units
00f0a0:                                        |[00f0a0] com.valentinedesigns.chromalink.AudioTransport.setLoss:(Z)V
00f0b0: 5520 8700                              |0000: iget-boolean v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.loss:Z // field@0087
00f0b4: 3330 0300                              |0002: if-ne v0, v3, 0005 // +0003
00f0b8: 0e00                                   |0004: return-void
00f0ba: 5c23 8700                              |0005: iput-boolean v3, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.loss:Z // field@0087
00f0be: 1600 0000                              |0007: const-wide/16 v0, #int 0 // #0
00f0c2: 5a20 8300                              |0009: iput-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleOutcome:J // field@0083
00f0c6: 5a20 8800                              |000b: iput-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.outcome:J // field@0088
00f0ca: 0e00                                   |000d: return-void
      catches       : (none)
      positions     :
        0x0000 line=53
        0x0005 line=54
        0x000d line=55
      locals        :
        0x0000 - 0x000e reg=2 this Lcom/valentinedesigns/chromalink/AudioTransport;
        0x0000 - 0x000e reg=3 (null) Z

    #11              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'setSongLength'
      type          : '(I)V'
      access        : 0x0000 ()
      code          -
      registers     : 6
      ins           : 2
      outs          : 4
      insns size    : 41 16-bit code units
00f0cc:                                        |[00f0cc] com.valentinedesigns.chromalink.AudioTransport.setSongLength:(I)V
00f0dc: 3d05 2100                              |0000: if-lez v5, 0021 // +0021
00f0e0: 5945 8c00                              |0002: iput v5, v4, Lcom/valentinedesigns/chromalink/AudioTransport;.songLength:I // field@008c
00f0e4: 5340 8b00                              |0004: iget-wide v0, v4, Lcom/valentinedesigns/chromalink/AudioTransport;.song:J // field@008b
00f0e8: 5242 8c00                              |0006: iget v2, v4, Lcom/valentinedesigns/chromalink/AudioTransport;.songLength:I // field@008c
00f0ec: 8122                                   |0008: int-to-long v2, v2
00f0ee: 7140 4106 1032                         |0009: invoke-static {v0, v1, v2, v3}, Ljava/lang/Math;.floorMod:(JJ)J // method@0641
00f0f4: 0b00                                   |000c: move-result-wide v0
00f0f6: 5a40 8b00                              |000d: iput-wide v0, v4, Lcom/valentinedesigns/chromalink/AudioTransport;.song:J // field@008b
00f0fa: 5240 8100                              |000f: iget v0, v4, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleEpoch:I // field@0081
00f0fe: 5241 8500                              |0011: iget v1, v4, Lcom/valentinedesigns/chromalink/AudioTransport;.epoch:I // field@0085
00f102: 3310 0d00                              |0013: if-ne v0, v1, 0020 // +000d
00f106: 5945 8200                              |0015: iput v5, v4, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleLength:I // field@0082
00f10a: 5340 8400                              |0017: iget-wide v0, v4, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleSong:J // field@0084
00f10e: 8152                                   |0019: int-to-long v2, v5
00f110: 7140 4106 1032                         |001a: invoke-static {v0, v1, v2, v3}, Ljava/lang/Math;.floorMod:(JJ)J // method@0641
00f116: 0b00                                   |001d: move-result-wide v0
00f118: 5a40 8400                              |001e: iput-wide v0, v4, Lcom/valentinedesigns/chromalink/AudioTransport;.audibleSong:J // field@0084
00f11c: 0e00                                   |0020: return-void
00f11e: 2205 3d01                              |0021: new-instance v5, Ljava/lang/IllegalArgumentException; // type@013d
00f122: 1a00 3204                              |0023: const-string v0, "Positive song length required" // string@0432
00f126: 7020 2e06 0500                         |0025: invoke-direct {v5, v0}, Ljava/lang/IllegalArgumentException;.<init>:(Ljava/lang/String;)V // method@062e
00f12c: 2705                                   |0028: throw v5
      catches       : (none)
      positions     :
        0x0000 line=36
        0x0002 line=37
        0x000f line=38
        0x0020 line=39
        0x0021 line=36
      locals        :
        0x0000 - 0x0029 reg=4 this Lcom/valentinedesigns/chromalink/AudioTransport;
        0x0000 - 0x0029 reg=5 (null) I

    #12              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'songEpoch'
      type          : '()I'
      access        : 0x0000 ()
      code          -
      registers     : 2
      ins           : 1
      outs          : 0
      insns size    : 3 16-bit code units
00ed90:                                        |[00ed90] com.valentinedesigns.chromalink.AudioTransport.songEpoch:()I
00eda0: 5210 8500                              |0000: iget v0, v1, Lcom/valentinedesigns/chromalink/AudioTransport;.epoch:I // field@0085
00eda4: 0f00                                   |0002: return v0
      catches       : (none)
      positions     :
        0x0000 line=31
      locals        :
        0x0000 - 0x0003 reg=1 this Lcom/valentinedesigns/chromalink/AudioTransport;

    #13              : (in Lcom/valentinedesigns/chromalink/AudioTransport;)
      name          : 'songFrame'
      type          : '()J'
      access        : 0x0000 ()
      code          -
      registers     : 3
      ins           : 1
      outs          : 0
      insns size    : 3 16-bit code units
00edf0:                                        |[00edf0] com.valentinedesigns.chromalink.AudioTransport.songFrame:()J
00ee00: 5320 8b00                              |0000: iget-wide v0, v2, Lcom/valentinedesigns/chromalink/AudioTransport;.song:J // field@008b
00ee04: 1000                                   |0002: return-wide v0
      catches       : (none)
      positions     :
        0x0000 line=27
      locals        :
        0x0000 - 0x0003 reg=2 this Lcom/valentinedesigns/chromalink/AudioTransport;

  source_file_idx   : 246 (AudioTransport.java)

Class #14 annotations:
Annotations on class
  VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=Lcom/valentinedesigns/chromalink/BoardTouchController;
  VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=1544 name="Listener"

