Class #16            -
  Class descriptor  : 'Lcom/valentinedesigns/chromalink/CampaignProgress;'
  Access flags      : 0x0011 (PUBLIC FINAL)
  Superclass        : 'Ljava/lang/Object;'
  Interfaces        -
  Static fields     -
    #0              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'BASE_COLOR_MASK'
      type          : 'I'
      access        : 0x0019 (PUBLIC STATIC FINAL)
      value         : 63
    #1              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'COLORS'
      type          : '[I'
      access        : 0x001a (PRIVATE STATIC FINAL)
      value         : null
    #2              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'GOALS'
      type          : '[Ljava/lang/String;'
      access        : 0x001a (PRIVATE STATIC FINAL)
      value         : null
    #3              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'LESSON_COUNT'
      type          : 'I'
      access        : 0x0019 (PUBLIC STATIC FINAL)
      value         : 7
    #4              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'TARGETS'
      type          : '[I'
      access        : 0x001a (PRIVATE STATIC FINAL)
      value         : null
    #5              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'UNIQUE_BLOCKS_ENABLED'
      type          : 'Z'
      access        : 0x0019 (PUBLIC STATIC FINAL)
      value         : false
  Instance fields   -
  Direct methods    -
    #0              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : '<clinit>'
      type          : '()V'
      access        : 0x10008 (STATIC CONSTRUCTOR)
      code          -
      registers     : 8
      ins           : 0
      outs          : 7
      insns size    : 72 16-bit code units
00f618:                                        |[00f618] com.valentinedesigns.chromalink.CampaignProgress.<clinit>:()V
00f628: 1270                                   |0000: const/4 v0, #int 7 // #7
00f62a: 2301 7501                              |0001: new-array v1, v0, [I // type@0175
00f62e: 2601 2100 0000                         |0003: fill-array-data v1, 00000024 // +00000021
00f634: 6901 a500                              |0006: sput-object v1, Lcom/valentinedesigns/chromalink/CampaignProgress;.COLORS:[I // field@00a5
00f638: 2300 7501                              |0008: new-array v0, v0, [I // type@0175
00f63c: 2600 2c00 0000                         |000a: fill-array-data v0, 00000036 // +0000002c
00f642: 6900 a800                              |000d: sput-object v0, Lcom/valentinedesigns/chromalink/CampaignProgress;.TARGETS:[I // field@00a8
00f646: 1a06 4801                              |000f: const-string v6, "Clear 20 blocks" // string@0148
00f64a: 1a07 0b01                              |0011: const-string v7, "Beat I.N.K." // string@010b
00f64e: 1a01 4901                              |0013: const-string v1, "Clear 4 blocks" // string@0149
00f652: 1a02 bf03                              |0015: const-string v2, "Make a 2-step chain" // string@03bf
00f656: 1a03 1701                              |0017: const-string v3, "Break 1 grey block" // string@0117
00f65a: 1a04 4601                              |0019: const-string v4, "Clear 12 blocks" // string@0146
00f65e: 1a05 4701                              |001b: const-string v5, "Clear 16 blocks" // string@0147
00f662: 2507 8001 0100                         |001d: filled-new-array/range {v1, v2, v3, v4, v5, v6, v7}, [Ljava/lang/String; // type@0180
00f668: 0c00                                   |0020: move-result-object v0
00f66a: 6900 a600                              |0021: sput-object v0, Lcom/valentinedesigns/chromalink/CampaignProgress;.GOALS:[Ljava/lang/String; // field@00a6
00f66e: 0e00                                   |0023: return-void
00f670: 0003 0400 0700 0000 0300 0000 0300 ... |0024: array-data (18 units)
00f694: 0003 0400 0700 0000 0400 0000 0200 ... |0036: array-data (18 units)
      catches       : (none)
      positions     :
        0x0000 line=24
        0x0008 line=25
        0x000f line=26
      locals        :

    #1              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10002 (PRIVATE CONSTRUCTOR)
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
00f6b8:                                        |[00f6b8] com.valentinedesigns.chromalink.CampaignProgress.<init>:()V
00f6c8: 7010 5006 0000                         |0000: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@0650
00f6ce: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=31
      locals        :
        0x0000 - 0x0004 reg=0 this Lcom/valentinedesigns/chromalink/CampaignProgress;

    #2              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'availableColorMask'
      type          : '(I)I'
      access        : 0x0009 (PUBLIC STATIC)
      code          -
      registers     : 2
      ins           : 1
      outs          : 2
      insns size    : 19 16-bit code units
00f4e4:                                        |[00f4e4] com.valentinedesigns.chromalink.CampaignProgress.availableColorMask:(I)I
00f4f4: 1260                                   |0000: const/4 v0, #int 6 // #6
00f4f6: 7110 4102 0100                         |0001: invoke-static {v1}, Lcom/valentinedesigns/chromalink/CampaignProgress;.clampCompleted:(I)I // method@0241
00f4fc: 0a01                                   |0004: move-result v1
00f4fe: 7120 4806 1000                         |0005: invoke-static {v0, v1}, Ljava/lang/Math;.min:(II)I // method@0648
00f504: 0a01                                   |0008: move-result v1
00f506: 1230                                   |0009: const/4 v0, #int 3 // #3
00f508: 7120 4406 1000                         |000a: invoke-static {v0, v1}, Ljava/lang/Math;.max:(II)I // method@0644
00f50e: 0a01                                   |000d: move-result v1
00f510: 1210                                   |000e: const/4 v0, #int 1 // #1
00f512: 9801 0001                              |000f: shl-int v1, v0, v1
00f516: b101                                   |0011: sub-int/2addr v1, v0
00f518: 0f01                                   |0012: return v1
      catches       : (none)
      positions     :
        0x0000 line=70
      locals        :
        0x0000 - 0x0013 reg=1 (null) I

    #3              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'clampCompleted'
      type          : '(I)I'
      access        : 0x0009 (PUBLIC STATIC)
      code          -
      registers     : 2
      ins           : 1
      outs          : 2
      insns size    : 11 16-bit code units
00f51c:                                        |[00f51c] com.valentinedesigns.chromalink.CampaignProgress.clampCompleted:(I)I
00f52c: 1270                                   |0000: const/4 v0, #int 7 // #7
00f52e: 7120 4806 1000                         |0001: invoke-static {v0, v1}, Ljava/lang/Math;.min:(II)I // method@0648
00f534: 0a01                                   |0004: move-result v1
00f536: 1200                                   |0005: const/4 v0, #int 0 // #0
00f538: 7120 4406 1000                         |0006: invoke-static {v0, v1}, Ljava/lang/Math;.max:(II)I // method@0644
00f53e: 0a01                                   |0009: move-result v1
00f540: 0f01                                   |000a: return v1
      catches       : (none)
      positions     :
        0x0000 line=38
      locals        :
        0x0000 - 0x000b reg=1 (null) I

    #4              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'clampLesson'
      type          : '(I)I'
      access        : 0x0009 (PUBLIC STATIC)
      code          -
      registers     : 2
      ins           : 1
      outs          : 2
      insns size    : 11 16-bit code units
00f544:                                        |[00f544] com.valentinedesigns.chromalink.CampaignProgress.clampLesson:(I)I
00f554: 1260                                   |0000: const/4 v0, #int 6 // #6
00f556: 7120 4806 1000                         |0001: invoke-static {v0, v1}, Ljava/lang/Math;.min:(II)I // method@0648
00f55c: 0a01                                   |0004: move-result v1
00f55e: 1200                                   |0005: const/4 v0, #int 0 // #0
00f560: 7120 4406 1000                         |0006: invoke-static {v0, v1}, Ljava/lang/Math;.max:(II)I // method@0644
00f566: 0a01                                   |0009: move-result v1
00f568: 0f01                                   |000a: return v1
      catches       : (none)
      positions     :
        0x0000 line=34
      locals        :
        0x0000 - 0x000b reg=1 (null) I

    #5              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'colorsForLesson'
      type          : '(I)I'
      access        : 0x0009 (PUBLIC STATIC)
      code          -
      registers     : 2
      ins           : 1
      outs          : 1
      insns size    : 9 16-bit code units
00f56c:                                        |[00f56c] com.valentinedesigns.chromalink.CampaignProgress.colorsForLesson:(I)I
00f57c: 6200 a500                              |0000: sget-object v0, Lcom/valentinedesigns/chromalink/CampaignProgress;.COLORS:[I // field@00a5
00f580: 7110 4202 0100                         |0002: invoke-static {v1}, Lcom/valentinedesigns/chromalink/CampaignProgress;.clampLesson:(I)I // method@0242
00f586: 0a01                                   |0005: move-result v1
00f588: 4401 0001                              |0006: aget v1, v0, v1
00f58c: 0f01                                   |0008: return v1
      catches       : (none)
      positions     :
        0x0000 line=42
      locals        :
        0x0000 - 0x0009 reg=1 (null) I

    #6              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'completeLesson'
      type          : '(II)I'
      access        : 0x0009 (PUBLIC STATIC)
      code          -
      registers     : 3
      ins           : 2
      outs          : 1
      insns size    : 12 16-bit code units
00f590:                                        |[00f590] com.valentinedesigns.chromalink.CampaignProgress.completeLesson:(II)I
00f5a0: 7110 4102 0100                         |0000: invoke-static {v1}, Lcom/valentinedesigns/chromalink/CampaignProgress;.clampCompleted:(I)I // method@0241
00f5a6: 0a01                                   |0003: move-result v1
00f5a8: 3312 0700                              |0004: if-ne v2, v1, 000b // +0007
00f5ac: 1270                                   |0006: const/4 v0, #int 7 // #7
00f5ae: 3502 0400                              |0007: if-ge v2, v0, 000b // +0004
00f5b2: d801 0101                              |0009: add-int/lit8 v1, v1, #int 1 // #01
00f5b6: 0f01                                   |000b: return v1
      catches       : (none)
      positions     :
        0x0000 line=60
        0x0004 line=61
      locals        :
        0x0000 - 0x000c reg=1 (null) I
        0x0000 - 0x000c reg=2 (null) I

    #7              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'goalLabel'
      type          : '(I)Ljava/lang/String;'
      access        : 0x0009 (PUBLIC STATIC)
      code          -
      registers     : 2
      ins           : 1
      outs          : 1
      insns size    : 9 16-bit code units
00f5f4:                                        |[00f5f4] com.valentinedesigns.chromalink.CampaignProgress.goalLabel:(I)Ljava/lang/String;
00f604: 6200 a600                              |0000: sget-object v0, Lcom/valentinedesigns/chromalink/CampaignProgress;.GOALS:[Ljava/lang/String; // field@00a6
00f608: 7110 4202 0100                         |0002: invoke-static {v1}, Lcom/valentinedesigns/chromalink/CampaignProgress;.clampLesson:(I)I // method@0242
00f60e: 0a01                                   |0005: move-result v1
00f610: 4601 0001                              |0006: aget-object v1, v0, v1
00f614: 1101                                   |0008: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=50
      locals        :
        0x0000 - 0x0009 reg=1 (null) I

    #8              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'goalTarget'
      type          : '(I)I'
      access        : 0x0009 (PUBLIC STATIC)
      code          -
      registers     : 2
      ins           : 1
      outs          : 1
      insns size    : 9 16-bit code units
00f5b8:                                        |[00f5b8] com.valentinedesigns.chromalink.CampaignProgress.goalTarget:(I)I
00f5c8: 6200 a800                              |0000: sget-object v0, Lcom/valentinedesigns/chromalink/CampaignProgress;.TARGETS:[I // field@00a8
00f5cc: 7110 4202 0100                         |0002: invoke-static {v1}, Lcom/valentinedesigns/chromalink/CampaignProgress;.clampLesson:(I)I // method@0242
00f5d2: 0a01                                   |0005: move-result v1
00f5d4: 4401 0001                              |0006: aget v1, v0, v1
00f5d8: 0f01                                   |0008: return v1
      catches       : (none)
      positions     :
        0x0000 line=46
      locals        :
        0x0000 - 0x0009 reg=1 (null) I

    #9              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'isAvailable'
      type          : '(II)Z'
      access        : 0x0009 (PUBLIC STATIC)
      code          -
      registers     : 3
      ins           : 2
      outs          : 1
      insns size    : 15 16-bit code units
00f4b4:                                        |[00f4b4] com.valentinedesigns.chromalink.CampaignProgress.isAvailable:(II)Z
00f4c4: 3a01 0d00                              |0000: if-ltz v1, 000d // +000d
00f4c8: 1270                                   |0002: const/4 v0, #int 7 // #7
00f4ca: 3501 0a00                              |0003: if-ge v1, v0, 000d // +000a
00f4ce: 7110 4102 0200                         |0005: invoke-static {v2}, Lcom/valentinedesigns/chromalink/CampaignProgress;.clampCompleted:(I)I // method@0241
00f4d4: 0a02                                   |0008: move-result v2
00f4d6: 3621 0400                              |0009: if-gt v1, v2, 000d // +0004
00f4da: 1211                                   |000b: const/4 v1, #int 1 // #1
00f4dc: 2802                                   |000c: goto 000e // +0002
00f4de: 1201                                   |000d: const/4 v1, #int 0 // #0
00f4e0: 0f01                                   |000e: return v1
      catches       : (none)
      positions     :
        0x0000 line=55
      locals        :
        0x0000 - 0x000f reg=1 (null) I
        0x0000 - 0x000f reg=2 (null) I

    #10              : (in Lcom/valentinedesigns/chromalink/CampaignProgress;)
      name          : 'sanitizeColorMask'
      type          : '(I)I'
      access        : 0x0009 (PUBLIC STATIC)
      code          -
      registers     : 1
      ins           : 1
      outs          : 0
      insns size    : 3 16-bit code units
00f5dc:                                        |[00f5dc] com.valentinedesigns.chromalink.CampaignProgress.sanitizeColorMask:(I)I
00f5ec: dd00 003f                              |0000: and-int/lit8 v0, v0, #int 63 // #3f
00f5f0: 0f00                                   |0002: return v0
      catches       : (none)
      positions     :
        0x0000 line=75
      locals        :
        0x0000 - 0x0003 reg=0 (null) I

  Virtual methods   -
  source_file_idx   : 305 (CampaignProgress.java)

