public final class com.android.internal.graphics.palette.Palette$Builder
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.android.internal.graphics.palette.Palette$Builder
  super_class: java.lang.Object
{
  private final java.util.List<com.android.internal.graphics.palette.Palette$Swatch> mSwatches;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lcom/android/internal/graphics/palette/Palette$Swatch;>;

  private final android.graphics.Bitmap mBitmap;
    descriptor: Landroid/graphics/Bitmap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.List<com.android.internal.graphics.palette.Target> mTargets;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lcom/android/internal/graphics/palette/Target;>;

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

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

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

  private final java.util.List<com.android.internal.graphics.palette.Palette$Filter> mFilters;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lcom/android/internal/graphics/palette/Palette$Filter;>;

  private android.graphics.Rect mRegion;
    descriptor: Landroid/graphics/Rect;
    flags: (0x0002) ACC_PRIVATE

  private com.android.internal.graphics.palette.Quantizer mQuantizer;
    descriptor: Lcom/android/internal/graphics/palette/Quantizer;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(android.graphics.Bitmap);
    descriptor: (Landroid/graphics/Bitmap;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // android.graphics.Bitmap bitmap
         0: .line 621
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 607
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
         2: .line 609
            aload 0 /* this */
            bipush 16
            putfield com.android.internal.graphics.palette.Palette$Builder.mMaxColors:I
         3: .line 610
            aload 0 /* this */
            sipush 12544
            putfield com.android.internal.graphics.palette.Palette$Builder.mResizeArea:I
         4: .line 611
            aload 0 /* this */
            iconst_m1
            putfield com.android.internal.graphics.palette.Palette$Builder.mResizeMaxDimension:I
         5: .line 613
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.android.internal.graphics.palette.Palette$Builder.mFilters:Ljava/util/List;
         6: .line 622
            aload 1 /* bitmap */
            ifnull 7
            aload 1 /* bitmap */
            invokevirtual android.graphics.Bitmap.isRecycled:()Z
            ifeq 8
         7: .line 623
      StackMap locals: com.android.internal.graphics.palette.Palette$Builder android.graphics.Bitmap
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Bitmap is not valid"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 625
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mFilters:Ljava/util/List;
            getstatic com.android.internal.graphics.palette.Palette.DEFAULT_FILTER:Lcom/android/internal/graphics/palette/Palette$Filter;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         9: .line 626
            aload 0 /* this */
            aload 1 /* bitmap */
            putfield com.android.internal.graphics.palette.Palette$Builder.mBitmap:Landroid/graphics/Bitmap;
        10: .line 627
            aload 0 /* this */
            aconst_null
            putfield com.android.internal.graphics.palette.Palette$Builder.mSwatches:Ljava/util/List;
        11: .line 630
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
            getstatic com.android.internal.graphics.palette.Target.LIGHT_VIBRANT:Lcom/android/internal/graphics/palette/Target;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        12: .line 631
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
            getstatic com.android.internal.graphics.palette.Target.VIBRANT:Lcom/android/internal/graphics/palette/Target;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        13: .line 632
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
            getstatic com.android.internal.graphics.palette.Target.DARK_VIBRANT:Lcom/android/internal/graphics/palette/Target;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        14: .line 633
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
            getstatic com.android.internal.graphics.palette.Target.LIGHT_MUTED:Lcom/android/internal/graphics/palette/Target;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        15: .line 634
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
            getstatic com.android.internal.graphics.palette.Target.MUTED:Lcom/android/internal/graphics/palette/Target;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        16: .line 635
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
            getstatic com.android.internal.graphics.palette.Target.DARK_MUTED:Lcom/android/internal/graphics/palette/Target;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        17: .line 636
            return
        end local 1 // android.graphics.Bitmap bitmap
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   18     0    this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0   18     1  bitmap  Landroid/graphics/Bitmap;
    MethodParameters:
        Name  Flags
      bitmap  

  public void <init>(java.util.List<com.android.internal.graphics.palette.Palette$Swatch>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // java.util.List swatches
         0: .line 642
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 607
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
         2: .line 609
            aload 0 /* this */
            bipush 16
            putfield com.android.internal.graphics.palette.Palette$Builder.mMaxColors:I
         3: .line 610
            aload 0 /* this */
            sipush 12544
            putfield com.android.internal.graphics.palette.Palette$Builder.mResizeArea:I
         4: .line 611
            aload 0 /* this */
            iconst_m1
            putfield com.android.internal.graphics.palette.Palette$Builder.mResizeMaxDimension:I
         5: .line 613
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.android.internal.graphics.palette.Palette$Builder.mFilters:Ljava/util/List;
         6: .line 643
            aload 1 /* swatches */
            ifnull 7
            aload 1 /* swatches */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 8
         7: .line 644
      StackMap locals: com.android.internal.graphics.palette.Palette$Builder java.util.List
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "List of Swatches is not valid"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 646
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mFilters:Ljava/util/List;
            getstatic com.android.internal.graphics.palette.Palette.DEFAULT_FILTER:Lcom/android/internal/graphics/palette/Palette$Filter;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         9: .line 647
            aload 0 /* this */
            aload 1 /* swatches */
            putfield com.android.internal.graphics.palette.Palette$Builder.mSwatches:Ljava/util/List;
        10: .line 648
            aload 0 /* this */
            aconst_null
            putfield com.android.internal.graphics.palette.Palette$Builder.mBitmap:Landroid/graphics/Bitmap;
        11: .line 649
            return
        end local 1 // java.util.List swatches
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0   12     1  swatches  Ljava/util/List<Lcom/android/internal/graphics/palette/Palette$Swatch;>;
    Signature: (Ljava/util/List<Lcom/android/internal/graphics/palette/Palette$Swatch;>;)V
    MethodParameters:
          Name  Flags
      swatches  

  public com.android.internal.graphics.palette.Palette$Builder maximumColorCount(int);
    descriptor: (I)Lcom/android/internal/graphics/palette/Palette$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // int colors
         0: .line 661
            aload 0 /* this */
            iload 1 /* colors */
            putfield com.android.internal.graphics.palette.Palette$Builder.mMaxColors:I
         1: .line 662
            aload 0 /* this */
            areturn
        end local 1 // int colors
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0    2     1  colors  I
    MethodParameters:
        Name  Flags
      colors  

  public com.android.internal.graphics.palette.Palette$Builder resizeBitmapSize(int);
    descriptor: (I)Lcom/android/internal/graphics/palette/Palette$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // int maxDimension
         0: .line 680
            aload 0 /* this */
            iload 1 /* maxDimension */
            putfield com.android.internal.graphics.palette.Palette$Builder.mResizeMaxDimension:I
         1: .line 681
            aload 0 /* this */
            iconst_m1
            putfield com.android.internal.graphics.palette.Palette$Builder.mResizeArea:I
         2: .line 682
            aload 0 /* this */
            areturn
        end local 1 // int maxDimension
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0    3     1  maxDimension  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
              Name  Flags
      maxDimension  final

  public com.android.internal.graphics.palette.Palette$Builder resizeBitmapArea(int);
    descriptor: (I)Lcom/android/internal/graphics/palette/Palette$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // int area
         0: .line 700
            aload 0 /* this */
            iload 1 /* area */
            putfield com.android.internal.graphics.palette.Palette$Builder.mResizeArea:I
         1: .line 701
            aload 0 /* this */
            iconst_m1
            putfield com.android.internal.graphics.palette.Palette$Builder.mResizeMaxDimension:I
         2: .line 702
            aload 0 /* this */
            areturn
        end local 1 // int area
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0    3     1  area  I
    MethodParameters:
      Name  Flags
      area  final

  public com.android.internal.graphics.palette.Palette$Builder clearFilters();
    descriptor: ()Lcom/android/internal/graphics/palette/Palette$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
         0: .line 711
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mFilters:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
         1: .line 712
            aload 0 /* this */
            areturn
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/android/internal/graphics/palette/Palette$Builder;

  public com.android.internal.graphics.palette.Palette$Builder addFilter(com.android.internal.graphics.palette.Palette$Filter);
    descriptor: (Lcom/android/internal/graphics/palette/Palette$Filter;)Lcom/android/internal/graphics/palette/Palette$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // com.android.internal.graphics.palette.Palette$Filter filter
         0: .line 724
            aload 1 /* filter */
            ifnull 2
         1: .line 725
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mFilters:Ljava/util/List;
            aload 1 /* filter */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         2: .line 727
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // com.android.internal.graphics.palette.Palette$Filter filter
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0    3     1  filter  Lcom/android/internal/graphics/palette/Palette$Filter;
    MethodParameters:
        Name  Flags
      filter  

  public com.android.internal.graphics.palette.Palette$Builder setQuantizer(com.android.internal.graphics.palette.Quantizer);
    descriptor: (Lcom/android/internal/graphics/palette/Quantizer;)Lcom/android/internal/graphics/palette/Palette$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // com.android.internal.graphics.palette.Quantizer quantizer
         0: .line 738
            aload 0 /* this */
            aload 1 /* quantizer */
            putfield com.android.internal.graphics.palette.Palette$Builder.mQuantizer:Lcom/android/internal/graphics/palette/Quantizer;
         1: .line 739
            aload 0 /* this */
            areturn
        end local 1 // com.android.internal.graphics.palette.Quantizer quantizer
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0    2     1  quantizer  Lcom/android/internal/graphics/palette/Quantizer;
    MethodParameters:
           Name  Flags
      quantizer  

  public com.android.internal.graphics.palette.Palette$Builder setRegion(int, int, int, int);
    descriptor: (IIII)Lcom/android/internal/graphics/palette/Palette$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // int left
        start local 2 // int top
        start local 3 // int right
        start local 4 // int bottom
         0: .line 753
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mBitmap:Landroid/graphics/Bitmap;
            ifnull 5
         1: .line 754
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mRegion:Landroid/graphics/Rect;
            ifnonnull 2
            aload 0 /* this */
            new android.graphics.Rect
            dup
            invokespecial android.graphics.Rect.<init>:()V
            putfield com.android.internal.graphics.palette.Palette$Builder.mRegion:Landroid/graphics/Rect;
         2: .line 756
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mRegion:Landroid/graphics/Rect;
            iconst_0
            iconst_0
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mBitmap:Landroid/graphics/Bitmap;
            invokevirtual android.graphics.Bitmap.getWidth:()I
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mBitmap:Landroid/graphics/Bitmap;
            invokevirtual android.graphics.Bitmap.getHeight:()I
            invokevirtual android.graphics.Rect.set:(IIII)V
         3: .line 758
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mRegion:Landroid/graphics/Rect;
            iload 1 /* left */
            iload 2 /* top */
            iload 3 /* right */
            iload 4 /* bottom */
            invokevirtual android.graphics.Rect.intersect:(IIII)Z
            ifne 5
         4: .line 759
            new java.lang.IllegalArgumentException
            dup
            ldc "The given region must intersect with the Bitmap's dimensions."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 763
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 4 // int bottom
        end local 3 // int right
        end local 2 // int top
        end local 1 // int left
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0    6     1    left  I
            0    6     2     top  I
            0    6     3   right  I
            0    6     4  bottom  I
    MethodParameters:
        Name  Flags
      left    
      top     
      right   
      bottom  

  public com.android.internal.graphics.palette.Palette$Builder clearRegion();
    descriptor: ()Lcom/android/internal/graphics/palette/Palette$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
         0: .line 771
            aload 0 /* this */
            aconst_null
            putfield com.android.internal.graphics.palette.Palette$Builder.mRegion:Landroid/graphics/Rect;
         1: .line 772
            aload 0 /* this */
            areturn
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/android/internal/graphics/palette/Palette$Builder;

  public com.android.internal.graphics.palette.Palette$Builder addTarget(com.android.internal.graphics.palette.Target);
    descriptor: (Lcom/android/internal/graphics/palette/Target;)Lcom/android/internal/graphics/palette/Palette$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // com.android.internal.graphics.palette.Target target
         0: .line 782
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
            aload 1 /* target */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 783
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
            aload 1 /* target */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         2: .line 785
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // com.android.internal.graphics.palette.Target target
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0    3     1  target  Lcom/android/internal/graphics/palette/Target;
    MethodParameters:
        Name  Flags
      target  final

  public com.android.internal.graphics.palette.Palette$Builder clearTargets();
    descriptor: ()Lcom/android/internal/graphics/palette/Palette$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
         0: .line 794
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
            ifnull 2
         1: .line 795
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
         2: .line 797
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/android/internal/graphics/palette/Palette$Builder;

  public com.android.internal.graphics.palette.Palette generate();
    descriptor: ()Lcom/android/internal/graphics/palette/Palette;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=1
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
         0: .line 807
            aconst_null
         1: .line 805
            astore 1 /* logger */
        start local 1 // android.util.TimingLogger logger
         2: .line 811
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mBitmap:Landroid/graphics/Bitmap;
            ifnull 29
         3: .line 815
            aload 0 /* this */
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mBitmap:Landroid/graphics/Bitmap;
            invokevirtual com.android.internal.graphics.palette.Palette$Builder.scaleBitmapDown:(Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap;
            astore 3 /* bitmap */
        start local 3 // android.graphics.Bitmap bitmap
         4: .line 817
            aload 1 /* logger */
            ifnull 6
         5: .line 818
            aload 1 /* logger */
            ldc "Processed Bitmap"
            invokevirtual android.util.TimingLogger.addSplit:(Ljava/lang/String;)V
         6: .line 821
      StackMap locals: com.android.internal.graphics.palette.Palette$Builder android.util.TimingLogger top android.graphics.Bitmap
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mRegion:Landroid/graphics/Rect;
            astore 4 /* region */
        start local 4 // android.graphics.Rect region
         7: .line 822
            aload 3 /* bitmap */
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mBitmap:Landroid/graphics/Bitmap;
            if_acmpeq 17
            aload 4 /* region */
            ifnull 17
         8: .line 825
            aload 3 /* bitmap */
            invokevirtual android.graphics.Bitmap.getWidth:()I
            i2d
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mBitmap:Landroid/graphics/Bitmap;
            invokevirtual android.graphics.Bitmap.getWidth:()I
            i2d
            ddiv
            dstore 5 /* scale */
        start local 5 // double scale
         9: .line 826
            aload 4 /* region */
            aload 4 /* region */
            getfield android.graphics.Rect.left:I
            i2d
            dload 5 /* scale */
            dmul
            invokestatic java.lang.Math.floor:(D)D
            d2i
            putfield android.graphics.Rect.left:I
        10: .line 827
            aload 4 /* region */
            aload 4 /* region */
            getfield android.graphics.Rect.top:I
            i2d
            dload 5 /* scale */
            dmul
            invokestatic java.lang.Math.floor:(D)D
            d2i
            putfield android.graphics.Rect.top:I
        11: .line 828
            aload 4 /* region */
            aload 4 /* region */
            getfield android.graphics.Rect.right:I
            i2d
            dload 5 /* scale */
            dmul
            invokestatic java.lang.Math.ceil:(D)D
            d2i
        12: .line 829
            aload 3 /* bitmap */
            invokevirtual android.graphics.Bitmap.getWidth:()I
        13: .line 828
            invokestatic java.lang.Math.min:(II)I
            putfield android.graphics.Rect.right:I
        14: .line 830
            aload 4 /* region */
            aload 4 /* region */
            getfield android.graphics.Rect.bottom:I
            i2d
            dload 5 /* scale */
            dmul
            invokestatic java.lang.Math.ceil:(D)D
            d2i
        15: .line 831
            aload 3 /* bitmap */
            invokevirtual android.graphics.Bitmap.getHeight:()I
        16: .line 830
            invokestatic java.lang.Math.min:(II)I
            putfield android.graphics.Rect.bottom:I
        end local 5 // double scale
        17: .line 835
      StackMap locals: android.graphics.Rect
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mQuantizer:Lcom/android/internal/graphics/palette/Quantizer;
            ifnonnull 19
        18: .line 836
            aload 0 /* this */
            new com.android.internal.graphics.palette.ColorCutQuantizer
            dup
            invokespecial com.android.internal.graphics.palette.ColorCutQuantizer.<init>:()V
            putfield com.android.internal.graphics.palette.Palette$Builder.mQuantizer:Lcom/android/internal/graphics/palette/Quantizer;
        19: .line 838
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mQuantizer:Lcom/android/internal/graphics/palette/Quantizer;
            aload 0 /* this */
            aload 3 /* bitmap */
            invokevirtual com.android.internal.graphics.palette.Palette$Builder.getPixelsFromBitmap:(Landroid/graphics/Bitmap;)[I
        20: .line 839
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mMaxColors:I
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mFilters:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 21
            aconst_null
            goto 22
        21: .line 840
      StackMap locals: com.android.internal.graphics.palette.Palette$Builder android.util.TimingLogger top android.graphics.Bitmap android.graphics.Rect
      StackMap stack: com.android.internal.graphics.palette.Quantizer int[] int
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mFilters:Ljava/util/List;
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mFilters:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            anewarray com.android.internal.graphics.palette.Palette$Filter
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast com.android.internal.graphics.palette.Palette$Filter[]
        22: .line 838
      StackMap locals: com.android.internal.graphics.palette.Palette$Builder android.util.TimingLogger top android.graphics.Bitmap android.graphics.Rect
      StackMap stack: com.android.internal.graphics.palette.Quantizer int[] int com.android.internal.graphics.palette.Palette$Filter[]
            invokeinterface com.android.internal.graphics.palette.Quantizer.quantize:([II[Lcom/android/internal/graphics/palette/Palette$Filter;)V
        23: .line 843
            aload 3 /* bitmap */
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mBitmap:Landroid/graphics/Bitmap;
            if_acmpeq 25
        24: .line 844
            aload 3 /* bitmap */
            invokevirtual android.graphics.Bitmap.recycle:()V
        25: .line 847
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mQuantizer:Lcom/android/internal/graphics/palette/Quantizer;
            invokeinterface com.android.internal.graphics.palette.Quantizer.getQuantizedColors:()Ljava/util/List;
            astore 2 /* swatches */
        start local 2 // java.util.List swatches
        26: .line 849
            aload 1 /* logger */
            ifnull 30
        27: .line 850
            aload 1 /* logger */
            ldc "Color quantization completed"
            invokevirtual android.util.TimingLogger.addSplit:(Ljava/lang/String;)V
        end local 4 // android.graphics.Rect region
        end local 3 // android.graphics.Bitmap bitmap
        28: .line 852
            goto 30
        end local 2 // java.util.List swatches
        29: .line 854
      StackMap locals: com.android.internal.graphics.palette.Palette$Builder android.util.TimingLogger
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mSwatches:Ljava/util/List;
            astore 2 /* swatches */
        start local 2 // java.util.List swatches
        30: .line 858
      StackMap locals: java.util.List
      StackMap stack:
            new com.android.internal.graphics.palette.Palette
            dup
            aload 2 /* swatches */
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mTargets:Ljava/util/List;
            invokespecial com.android.internal.graphics.palette.Palette.<init>:(Ljava/util/List;Ljava/util/List;)V
            astore 3 /* p */
        start local 3 // com.android.internal.graphics.palette.Palette p
        31: .line 860
            aload 3 /* p */
            invokevirtual com.android.internal.graphics.palette.Palette.generate:()V
        32: .line 862
            aload 1 /* logger */
            ifnull 35
        33: .line 863
            aload 1 /* logger */
            ldc "Created Palette"
            invokevirtual android.util.TimingLogger.addSplit:(Ljava/lang/String;)V
        34: .line 864
            aload 1 /* logger */
            invokevirtual android.util.TimingLogger.dumpToLog:()V
        35: .line 867
      StackMap locals: com.android.internal.graphics.palette.Palette
      StackMap stack:
            aload 3 /* p */
            areturn
        end local 3 // com.android.internal.graphics.palette.Palette p
        end local 2 // java.util.List swatches
        end local 1 // android.util.TimingLogger logger
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   36     0      this  Lcom/android/internal/graphics/palette/Palette$Builder;
            2   36     1    logger  Landroid/util/TimingLogger;
           26   29     2  swatches  Ljava/util/List<Lcom/android/internal/graphics/palette/Palette$Swatch;>;
           30   36     2  swatches  Ljava/util/List<Lcom/android/internal/graphics/palette/Palette$Swatch;>;
            4   28     3    bitmap  Landroid/graphics/Bitmap;
            7   28     4    region  Landroid/graphics/Rect;
            9   17     5     scale  D
           31   36     3         p  Lcom/android/internal/graphics/palette/Palette;

  public android.os.AsyncTask<android.graphics.Bitmap, java.lang.Void, com.android.internal.graphics.palette.Palette> generate(com.android.internal.graphics.palette.Palette$PaletteAsyncListener);
    descriptor: (Lcom/android/internal/graphics/palette/Palette$PaletteAsyncListener;)Landroid/os/AsyncTask;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // com.android.internal.graphics.palette.Palette$PaletteAsyncListener listener
         0: .line 877
            aload 1 /* listener */
            ifnonnull 2
         1: .line 878
            new java.lang.IllegalArgumentException
            dup
            ldc "listener can not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 881
      StackMap locals:
      StackMap stack:
            new com.android.internal.graphics.palette.Palette$Builder$1
            dup
            aload 0 /* this */
            aload 1 /* listener */
            invokespecial com.android.internal.graphics.palette.Palette$Builder$1.<init>:(Lcom/android/internal/graphics/palette/Palette$Builder;Lcom/android/internal/graphics/palette/Palette$PaletteAsyncListener;)V
         3: .line 896
            getstatic android.os.AsyncTask.THREAD_POOL_EXECUTOR:Ljava/util/concurrent/Executor;
            iconst_1
            anewarray android.graphics.Bitmap
            dup
            iconst_0
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mBitmap:Landroid/graphics/Bitmap;
            aastore
            invokevirtual com.android.internal.graphics.palette.Palette$Builder$1.executeOnExecutor:(Ljava/util/concurrent/Executor;[Ljava/lang/Object;)Landroid/os/AsyncTask;
         4: .line 881
            areturn
        end local 1 // com.android.internal.graphics.palette.Palette$PaletteAsyncListener listener
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0    5     1  listener  Lcom/android/internal/graphics/palette/Palette$PaletteAsyncListener;
    Signature: (Lcom/android/internal/graphics/palette/Palette$PaletteAsyncListener;)Landroid/os/AsyncTask<Landroid/graphics/Bitmap;Ljava/lang/Void;Lcom/android/internal/graphics/palette/Palette;>;
    MethodParameters:
          Name  Flags
      listener  final

  private int[] getPixelsFromBitmap(android.graphics.Bitmap);
    descriptor: (Landroid/graphics/Bitmap;)[I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=9, args_size=2
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // android.graphics.Bitmap bitmap
         0: .line 900
            aload 1 /* bitmap */
            invokevirtual android.graphics.Bitmap.getWidth:()I
            istore 2 /* bitmapWidth */
        start local 2 // int bitmapWidth
         1: .line 901
            aload 1 /* bitmap */
            invokevirtual android.graphics.Bitmap.getHeight:()I
            istore 3 /* bitmapHeight */
        start local 3 // int bitmapHeight
         2: .line 902
            iload 2 /* bitmapWidth */
            iload 3 /* bitmapHeight */
            imul
            newarray 10
            astore 4 /* pixels */
        start local 4 // int[] pixels
         3: .line 903
            aload 1 /* bitmap */
            aload 4 /* pixels */
            iconst_0
            iload 2 /* bitmapWidth */
            iconst_0
            iconst_0
            iload 2 /* bitmapWidth */
            iload 3 /* bitmapHeight */
            invokevirtual android.graphics.Bitmap.getPixels:([IIIIIII)V
         4: .line 905
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mRegion:Landroid/graphics/Rect;
            ifnonnull 6
         5: .line 907
            aload 4 /* pixels */
            areturn
         6: .line 911
      StackMap locals: int int int[]
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mRegion:Landroid/graphics/Rect;
            invokevirtual android.graphics.Rect.width:()I
            istore 5 /* regionWidth */
        start local 5 // int regionWidth
         7: .line 912
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mRegion:Landroid/graphics/Rect;
            invokevirtual android.graphics.Rect.height:()I
            istore 6 /* regionHeight */
        start local 6 // int regionHeight
         8: .line 915
            iload 5 /* regionWidth */
            iload 6 /* regionHeight */
            imul
            newarray 10
            astore 7 /* subsetPixels */
        start local 7 // int[] subsetPixels
         9: .line 916
            iconst_0
            istore 8 /* row */
        start local 8 // int row
        10: goto 15
        11: .line 917
      StackMap locals: com.android.internal.graphics.palette.Palette$Builder android.graphics.Bitmap int int int[] int int int[] int
      StackMap stack:
            aload 4 /* pixels */
            iload 8 /* row */
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mRegion:Landroid/graphics/Rect;
            getfield android.graphics.Rect.top:I
            iadd
            iload 2 /* bitmapWidth */
            imul
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mRegion:Landroid/graphics/Rect;
            getfield android.graphics.Rect.left:I
            iadd
        12: .line 918
            aload 7 /* subsetPixels */
            iload 8 /* row */
            iload 5 /* regionWidth */
            imul
            iload 5 /* regionWidth */
        13: .line 917
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        14: .line 916
            iinc 8 /* row */ 1
      StackMap locals:
      StackMap stack:
        15: iload 8 /* row */
            iload 6 /* regionHeight */
            if_icmplt 11
        end local 8 // int row
        16: .line 920
            aload 7 /* subsetPixels */
            areturn
        end local 7 // int[] subsetPixels
        end local 6 // int regionHeight
        end local 5 // int regionWidth
        end local 4 // int[] pixels
        end local 3 // int bitmapHeight
        end local 2 // int bitmapWidth
        end local 1 // android.graphics.Bitmap bitmap
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   17     0          this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0   17     1        bitmap  Landroid/graphics/Bitmap;
            1   17     2   bitmapWidth  I
            2   17     3  bitmapHeight  I
            3   17     4        pixels  [I
            7   17     5   regionWidth  I
            8   17     6  regionHeight  I
            9   17     7  subsetPixels  [I
           10   16     8           row  I
    MethodParameters:
        Name  Flags
      bitmap  

  private android.graphics.Bitmap scaleBitmapDown(android.graphics.Bitmap);
    descriptor: (Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // com.android.internal.graphics.palette.Palette$Builder this
        start local 1 // android.graphics.Bitmap bitmap
         0: .line 928
            ldc -1.0
            dstore 2 /* scaleRatio */
        start local 2 // double scaleRatio
         1: .line 930
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mResizeArea:I
            ifle 6
         2: .line 931
            aload 1 /* bitmap */
            invokevirtual android.graphics.Bitmap.getWidth:()I
            aload 1 /* bitmap */
            invokevirtual android.graphics.Bitmap.getHeight:()I
            imul
            istore 4 /* bitmapArea */
        start local 4 // int bitmapArea
         3: .line 932
            iload 4 /* bitmapArea */
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mResizeArea:I
            if_icmple 10
         4: .line 933
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mResizeArea:I
            i2d
            iload 4 /* bitmapArea */
            i2d
            ddiv
            invokestatic java.lang.Math.sqrt:(D)D
            dstore 2 /* scaleRatio */
        end local 4 // int bitmapArea
         5: .line 935
            goto 10
      StackMap locals: double
      StackMap stack:
         6: aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mResizeMaxDimension:I
            ifle 10
         7: .line 936
            aload 1 /* bitmap */
            invokevirtual android.graphics.Bitmap.getWidth:()I
            aload 1 /* bitmap */
            invokevirtual android.graphics.Bitmap.getHeight:()I
            invokestatic java.lang.Math.max:(II)I
            istore 4 /* maxDimension */
        start local 4 // int maxDimension
         8: .line 937
            iload 4 /* maxDimension */
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mResizeMaxDimension:I
            if_icmple 10
         9: .line 938
            aload 0 /* this */
            getfield com.android.internal.graphics.palette.Palette$Builder.mResizeMaxDimension:I
            i2d
            iload 4 /* maxDimension */
            i2d
            ddiv
            dstore 2 /* scaleRatio */
        end local 4 // int maxDimension
        10: .line 942
      StackMap locals:
      StackMap stack:
            dload 2 /* scaleRatio */
            dconst_0
            dcmpg
            ifgt 12
        11: .line 944
            aload 1 /* bitmap */
            areturn
        12: .line 947
      StackMap locals:
      StackMap stack:
            aload 1 /* bitmap */
        13: .line 948
            aload 1 /* bitmap */
            invokevirtual android.graphics.Bitmap.getWidth:()I
            i2d
            dload 2 /* scaleRatio */
            dmul
            invokestatic java.lang.Math.ceil:(D)D
            d2i
        14: .line 949
            aload 1 /* bitmap */
            invokevirtual android.graphics.Bitmap.getHeight:()I
            i2d
            dload 2 /* scaleRatio */
            dmul
            invokestatic java.lang.Math.ceil:(D)D
            d2i
        15: .line 950
            iconst_0
        16: .line 947
            invokestatic android.graphics.Bitmap.createScaledBitmap:(Landroid/graphics/Bitmap;IIZ)Landroid/graphics/Bitmap;
            areturn
        end local 2 // double scaleRatio
        end local 1 // android.graphics.Bitmap bitmap
        end local 0 // com.android.internal.graphics.palette.Palette$Builder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   17     0          this  Lcom/android/internal/graphics/palette/Palette$Builder;
            0   17     1        bitmap  Landroid/graphics/Bitmap;
            1   17     2    scaleRatio  D
            3    5     4    bitmapArea  I
            8   10     4  maxDimension  I
    MethodParameters:
        Name  Flags
      bitmap  final
}
SourceFile: "Palette.java"
NestHost: com.android.internal.graphics.palette.Palette
InnerClasses:
  public final Builder = com.android.internal.graphics.palette.Palette$Builder of com.android.internal.graphics.palette.Palette
  com.android.internal.graphics.palette.Palette$Builder$1
  public abstract Filter = com.android.internal.graphics.palette.Palette$Filter of com.android.internal.graphics.palette.Palette
  public abstract PaletteAsyncListener = com.android.internal.graphics.palette.Palette$PaletteAsyncListener of com.android.internal.graphics.palette.Palette
  public final Swatch = com.android.internal.graphics.palette.Palette$Swatch of com.android.internal.graphics.palette.Palette