class javax.swing.JViewport$BackingStoreMultiResolutionImage extends java.awt.image.AbstractMultiResolutionImage
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: javax.swing.JViewport$BackingStoreMultiResolutionImage
  super_class: java.awt.image.AbstractMultiResolutionImage
{
  private final int width;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int height;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int scaledWidth;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int scaledHeight;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.awt.Image rvImage;
    descriptor: Ljava/awt/Image;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(int, int, int, int, java.awt.Image);
    descriptor: (IIIILjava/awt/Image;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
        start local 1 // int width
        start local 2 // int height
        start local 3 // int scaledWidth
        start local 4 // int scaledHeight
        start local 5 // java.awt.Image rvImage
         0: .line 886
            aload 0 /* this */
            invokespecial java.awt.image.AbstractMultiResolutionImage.<init>:()V
         1: .line 888
            aload 0 /* this */
            iload 1 /* width */
            putfield javax.swing.JViewport$BackingStoreMultiResolutionImage.width:I
         2: .line 889
            aload 0 /* this */
            iload 2 /* height */
            putfield javax.swing.JViewport$BackingStoreMultiResolutionImage.height:I
         3: .line 890
            aload 0 /* this */
            iload 3 /* scaledWidth */
            putfield javax.swing.JViewport$BackingStoreMultiResolutionImage.scaledWidth:I
         4: .line 891
            aload 0 /* this */
            iload 4 /* scaledHeight */
            putfield javax.swing.JViewport$BackingStoreMultiResolutionImage.scaledHeight:I
         5: .line 892
            aload 0 /* this */
            aload 5 /* rvImage */
            putfield javax.swing.JViewport$BackingStoreMultiResolutionImage.rvImage:Ljava/awt/Image;
         6: .line 893
            return
        end local 5 // java.awt.Image rvImage
        end local 4 // int scaledHeight
        end local 3 // int scaledWidth
        end local 2 // int height
        end local 1 // int width
        end local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Ljavax/swing/JViewport$BackingStoreMultiResolutionImage;
            0    7     1         width  I
            0    7     2        height  I
            0    7     3   scaledWidth  I
            0    7     4  scaledHeight  I
            0    7     5       rvImage  Ljava/awt/Image;
    MethodParameters:
              Name  Flags
      width         
      height        
      scaledWidth   
      scaledHeight  
      rvImage       

  public int getWidth(java.awt.image.ImageObserver);
    descriptor: (Ljava/awt/image/ImageObserver;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
        start local 1 // java.awt.image.ImageObserver observer
         0: .line 897
            aload 0 /* this */
            getfield javax.swing.JViewport$BackingStoreMultiResolutionImage.width:I
            ireturn
        end local 1 // java.awt.image.ImageObserver observer
        end local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljavax/swing/JViewport$BackingStoreMultiResolutionImage;
            0    1     1  observer  Ljava/awt/image/ImageObserver;
    MethodParameters:
          Name  Flags
      observer  

  public int getHeight(java.awt.image.ImageObserver);
    descriptor: (Ljava/awt/image/ImageObserver;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
        start local 1 // java.awt.image.ImageObserver observer
         0: .line 902
            aload 0 /* this */
            getfield javax.swing.JViewport$BackingStoreMultiResolutionImage.height:I
            ireturn
        end local 1 // java.awt.image.ImageObserver observer
        end local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljavax/swing/JViewport$BackingStoreMultiResolutionImage;
            0    1     1  observer  Ljava/awt/image/ImageObserver;
    MethodParameters:
          Name  Flags
      observer  

  protected java.awt.Image getBaseImage();
    descriptor: ()Ljava/awt/Image;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
         0: .line 907
            aload 0 /* this */
            getfield javax.swing.JViewport$BackingStoreMultiResolutionImage.rvImage:Ljava/awt/Image;
            areturn
        end local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/JViewport$BackingStoreMultiResolutionImage;

  public java.awt.Graphics getGraphics();
    descriptor: ()Ljava/awt/Graphics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
         0: .line 912
            aload 0 /* this */
            getfield javax.swing.JViewport$BackingStoreMultiResolutionImage.rvImage:Ljava/awt/Image;
            invokevirtual java.awt.Image.getGraphics:()Ljava/awt/Graphics;
            astore 1 /* graphics */
        start local 1 // java.awt.Graphics graphics
         1: .line 913
            aload 1 /* graphics */
            instanceof java.awt.Graphics2D
            ifeq 5
         2: .line 914
            aload 0 /* this */
            getfield javax.swing.JViewport$BackingStoreMultiResolutionImage.scaledWidth:I
            i2d
            aload 0 /* this */
            getfield javax.swing.JViewport$BackingStoreMultiResolutionImage.width:I
            i2d
            ddiv
            dstore 2 /* sx */
        start local 2 // double sx
         3: .line 915
            aload 0 /* this */
            getfield javax.swing.JViewport$BackingStoreMultiResolutionImage.scaledHeight:I
            i2d
            aload 0 /* this */
            getfield javax.swing.JViewport$BackingStoreMultiResolutionImage.height:I
            i2d
            ddiv
            dstore 4 /* sy */
        start local 4 // double sy
         4: .line 916
            aload 1 /* graphics */
            checkcast java.awt.Graphics2D
            dload 2 /* sx */
            dload 4 /* sy */
            invokevirtual java.awt.Graphics2D.scale:(DD)V
        end local 4 // double sy
        end local 2 // double sx
         5: .line 918
      StackMap locals: java.awt.Graphics
      StackMap stack:
            aload 1 /* graphics */
            areturn
        end local 1 // java.awt.Graphics graphics
        end local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Ljavax/swing/JViewport$BackingStoreMultiResolutionImage;
            1    6     1  graphics  Ljava/awt/Graphics;
            3    5     2        sx  D
            4    5     4        sy  D

  public java.awt.Image getResolutionVariant(double, double);
    descriptor: (DD)Ljava/awt/Image;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=5, args_size=3
        start local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
        start local 1 // double w
        start local 3 // double h
         0: .line 923
            aload 0 /* this */
            getfield javax.swing.JViewport$BackingStoreMultiResolutionImage.rvImage:Ljava/awt/Image;
            areturn
        end local 3 // double h
        end local 1 // double w
        end local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/JViewport$BackingStoreMultiResolutionImage;
            0    1     1     w  D
            0    1     3     h  D
    MethodParameters:
      Name  Flags
      w     
      h     

  public java.util.List<java.awt.Image> getResolutionVariants();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
         0: .line 928
            iconst_1
            anewarray java.awt.Image
            dup
            iconst_0
            aload 0 /* this */
            getfield javax.swing.JViewport$BackingStoreMultiResolutionImage.rvImage:Ljava/awt/Image;
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            areturn
        end local 0 // javax.swing.JViewport$BackingStoreMultiResolutionImage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/JViewport$BackingStoreMultiResolutionImage;
    Signature: ()Ljava/util/List<Ljava/awt/Image;>;
}
SourceFile: "JViewport.java"
NestHost: javax.swing.JViewport
InnerClasses:
  BackingStoreMultiResolutionImage = javax.swing.JViewport$BackingStoreMultiResolutionImage of javax.swing.JViewport