public class sun.print.Win32PrintJob implements javax.print.CancelablePrintJob
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.print.Win32PrintJob
  super_class: java.lang.Object
{
  private transient java.util.Vector jobListeners;
    descriptor: Ljava/util/Vector;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.util.Vector attrListeners;
    descriptor: Ljava/util/Vector;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.util.Vector listenedAttributeSets;
    descriptor: Ljava/util/Vector;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private sun.print.Win32PrintService service;
    descriptor: Lsun/print/Win32PrintService;
    flags: (0x0002) ACC_PRIVATE

  private boolean fidelity;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean printing;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean printReturned;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private javax.print.attribute.PrintRequestAttributeSet reqAttrSet;
    descriptor: Ljavax/print/attribute/PrintRequestAttributeSet;
    flags: (0x0002) ACC_PRIVATE

  private javax.print.attribute.PrintJobAttributeSet jobAttrSet;
    descriptor: Ljavax/print/attribute/PrintJobAttributeSet;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.print.PrinterJob job;
    descriptor: Ljava/awt/print/PrinterJob;
    flags: (0x0002) ACC_PRIVATE

  private javax.print.Doc doc;
    descriptor: Ljavax/print/Doc;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String mDestination;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.io.InputStream instream;
    descriptor: Ljava/io/InputStream;
    flags: (0x0002) ACC_PRIVATE

  private java.io.Reader reader;
    descriptor: Ljava/io/Reader;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String jobName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

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

  private javax.print.attribute.standard.MediaSizeName mediaName;
    descriptor: Ljavax/print/attribute/standard/MediaSizeName;
    flags: (0x0002) ACC_PRIVATE

  private javax.print.attribute.standard.MediaSize mediaSize;
    descriptor: Ljavax/print/attribute/standard/MediaSize;
    flags: (0x0002) ACC_PRIVATE

  private javax.print.attribute.standard.OrientationRequested orient;
    descriptor: Ljavax/print/attribute/standard/OrientationRequested;
    flags: (0x0002) ACC_PRIVATE

  private long hPrintJob;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private static final int PRINTBUFFERLEN;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8192

  void <init>(sun.print.Win32PrintService);
    descriptor: (Lsun/print/Win32PrintService;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.print.Win32PrintJob this
        start local 1 // sun.print.Win32PrintService service
         0: .line 116
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 88
            aload 0 /* this */
            iconst_0
            putfield sun.print.Win32PrintJob.printing:Z
         2: .line 89
            aload 0 /* this */
            iconst_0
            putfield sun.print.Win32PrintJob.printReturned:Z
         3: .line 90
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.reqAttrSet:Ljavax/print/attribute/PrintRequestAttributeSet;
         4: .line 91
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
         5: .line 94
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.mDestination:Ljava/lang/String;
         6: .line 100
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
         7: .line 101
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.reader:Ljava/io/Reader;
         8: .line 104
            aload 0 /* this */
            ldc "Java Printing"
            putfield sun.print.Win32PrintJob.jobName:Ljava/lang/String;
         9: .line 105
            aload 0 /* this */
            iconst_0
            putfield sun.print.Win32PrintJob.copies:I
        10: .line 106
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.mediaName:Ljavax/print/attribute/standard/MediaSizeName;
        11: .line 107
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.mediaSize:Ljavax/print/attribute/standard/MediaSize;
        12: .line 108
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.orient:Ljavax/print/attribute/standard/OrientationRequested;
        13: .line 117
            aload 0 /* this */
            aload 1 /* service */
            putfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
        14: .line 118
            return
        end local 1 // sun.print.Win32PrintService service
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Lsun/print/Win32PrintJob;
            0   15     1  service  Lsun/print/Win32PrintService;
    MethodParameters:
         Name  Flags
      service  

  public javax.print.PrintService getPrintService();
    descriptor: ()Ljavax/print/PrintService;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.print.Win32PrintJob this
         0: .line 121
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            areturn
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/print/Win32PrintJob;

  public javax.print.attribute.PrintJobAttributeSet getAttributes();
    descriptor: ()Ljavax/print/attribute/PrintJobAttributeSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // sun.print.Win32PrintJob this
         0: .line 125
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         1: .line 126
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
            ifnonnull 5
         2: .line 128
            new javax.print.attribute.HashPrintJobAttributeSet
            dup
            invokespecial javax.print.attribute.HashPrintJobAttributeSet.<init>:()V
            astore 2 /* jobSet */
        start local 2 // javax.print.attribute.PrintJobAttributeSet jobSet
         3: .line 129
            aload 2 /* jobSet */
            invokestatic javax.print.attribute.AttributeSetUtilities.unmodifiableView:(Ljavax/print/attribute/PrintJobAttributeSet;)Ljavax/print/attribute/PrintJobAttributeSet;
            aload 1
            monitorexit
         4: areturn
        end local 2 // javax.print.attribute.PrintJobAttributeSet jobSet
         5: .line 131
      StackMap locals: sun.print.Win32PrintJob
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
            aload 1
            monitorexit
         6: areturn
         7: .line 125
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         8: athrow
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lsun/print/Win32PrintJob;
            3    5     2  jobSet  Ljavax/print/attribute/PrintJobAttributeSet;
      Exception table:
        from    to  target  type
           1     4       7  any
           5     6       7  any
           7     8       7  any

  public void addPrintJobListener(javax.print.event.PrintJobListener);
    descriptor: (Ljavax/print/event/PrintJobListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.print.Win32PrintJob this
        start local 1 // javax.print.event.PrintJobListener listener
         0: .line 137
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 138
            aload 1 /* listener */
            ifnonnull 4
         2: .line 139
            aload 2
            monitorexit
         3: return
         4: .line 141
      StackMap locals: sun.print.Win32PrintJob
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobListeners:Ljava/util/Vector;
            ifnonnull 6
         5: .line 142
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield sun.print.Win32PrintJob.jobListeners:Ljava/util/Vector;
         6: .line 144
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobListeners:Ljava/util/Vector;
            aload 1 /* listener */
            invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
            pop
         7: .line 137
            aload 2
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 2
            monitorexit
        10: athrow
        11: .line 146
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.print.event.PrintJobListener listener
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lsun/print/Win32PrintJob;
            0   12     1  listener  Ljavax/print/event/PrintJobListener;
      Exception table:
        from    to  target  type
           1     3       9  any
           4     8       9  any
           9    10       9  any
    MethodParameters:
          Name  Flags
      listener  

  public void removePrintJobListener(javax.print.event.PrintJobListener);
    descriptor: (Ljavax/print/event/PrintJobListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.print.Win32PrintJob this
        start local 1 // javax.print.event.PrintJobListener listener
         0: .line 149
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 150
            aload 1 /* listener */
            ifnull 2
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobListeners:Ljava/util/Vector;
            ifnonnull 4
         2: .line 151
      StackMap locals: sun.print.Win32PrintJob
      StackMap stack:
            aload 2
            monitorexit
         3: return
         4: .line 153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobListeners:Ljava/util/Vector;
            aload 1 /* listener */
            invokevirtual java.util.Vector.remove:(Ljava/lang/Object;)Z
            pop
         5: .line 154
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobListeners:Ljava/util/Vector;
            invokevirtual java.util.Vector.isEmpty:()Z
            ifeq 7
         6: .line 155
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.jobListeners:Ljava/util/Vector;
         7: .line 149
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 2
            monitorexit
        10: athrow
        11: .line 158
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.print.event.PrintJobListener listener
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lsun/print/Win32PrintJob;
            0   12     1  listener  Ljavax/print/event/PrintJobListener;
      Exception table:
        from    to  target  type
           1     3       9  any
           4     8       9  any
           9    10       9  any
    MethodParameters:
          Name  Flags
      listener  

  private void closeDataStreams();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // sun.print.Win32PrintJob this
         0: .line 169
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.doc:Ljavax/print/Doc;
            ifnonnull 2
         1: .line 170
            return
         2: .line 173
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 1 /* data */
        start local 1 // java.lang.Object data
         3: .line 176
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.doc:Ljavax/print/Doc;
            invokeinterface javax.print.Doc.getPrintData:()Ljava/lang/Object;
            astore 1 /* data */
         4: .line 177
            goto 7
      StackMap locals: sun.print.Win32PrintJob java.lang.Object
      StackMap stack: java.io.IOException
         5: pop
         6: .line 178
            return
         7: .line 181
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
            ifnull 17
         8: .line 183
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
            invokevirtual java.io.InputStream.close:()V
         9: .line 184
            goto 15
      StackMap locals:
      StackMap stack: java.io.IOException
        10: pop
        11: .line 186
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
            goto 36
        12: .line 185
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
        13: .line 186
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
        14: .line 187
            aload 2
            athrow
        15: .line 186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
        16: .line 188
            goto 36
        17: .line 189
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.reader:Ljava/io/Reader;
            ifnull 27
        18: .line 191
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.reader:Ljava/io/Reader;
            invokevirtual java.io.Reader.close:()V
        19: .line 192
            goto 25
      StackMap locals:
      StackMap stack: java.io.IOException
        20: pop
        21: .line 194
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.reader:Ljava/io/Reader;
            goto 36
        22: .line 193
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
        23: .line 194
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.reader:Ljava/io/Reader;
        24: .line 195
            aload 2
            athrow
        25: .line 194
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.reader:Ljava/io/Reader;
        26: .line 196
            goto 36
        27: .line 197
      StackMap locals:
      StackMap stack:
            aload 1 /* data */
            instanceof java.io.InputStream
            ifeq 32
        28: .line 199
            aload 1 /* data */
            checkcast java.io.InputStream
            invokevirtual java.io.InputStream.close:()V
        29: .line 200
            goto 36
      StackMap locals:
      StackMap stack: java.io.IOException
        30: pop
        31: .line 202
            goto 36
        32: .line 203
      StackMap locals:
      StackMap stack:
            aload 1 /* data */
            instanceof java.io.Reader
            ifeq 36
        33: .line 205
            aload 1 /* data */
            checkcast java.io.Reader
            invokevirtual java.io.Reader.close:()V
        34: .line 206
            goto 36
      StackMap locals:
      StackMap stack: java.io.IOException
        35: pop
        36: .line 209
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object data
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   37     0  this  Lsun/print/Win32PrintJob;
            3   37     1  data  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           3     4       5  Class java.io.IOException
           8     9      10  Class java.io.IOException
           8    11      12  any
          18    19      20  Class java.io.IOException
          18    21      22  any
          28    29      30  Class java.io.IOException
          33    34      35  Class java.io.IOException

  private void notifyEvent(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // sun.print.Win32PrintJob this
        start local 1 // int reason
         0: .line 216
            iload 1 /* reason */
            tableswitch { // 101 - 106
                  101: 1
                  102: 1
                  103: 1
                  104: 2
                  105: 1
                  106: 1
              default: 2
          }
         1: .line 222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.print.Win32PrintJob.closeDataStreams:()V
         2: .line 225
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         3: .line 226
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobListeners:Ljava/util/Vector;
            ifnull 21
         4: .line 228
            new javax.print.event.PrintJobEvent
            dup
            aload 0 /* this */
            iload 1 /* reason */
            invokespecial javax.print.event.PrintJobEvent.<init>:(Ljavax/print/DocPrintJob;I)V
            astore 4 /* event */
        start local 4 // javax.print.event.PrintJobEvent event
         5: .line 229
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 20
         7: .line 230
      StackMap locals: sun.print.Win32PrintJob int sun.print.Win32PrintJob top javax.print.event.PrintJobEvent int
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobListeners:Ljava/util/Vector;
            iload 5 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.print.event.PrintJobListener
            astore 3 /* listener */
        start local 3 // javax.print.event.PrintJobListener listener
         8: .line 231
            iload 1 /* reason */
            tableswitch { // 101 - 106
                  101: 11
                  102: 9
                  103: 13
                  104: 19
                  105: 17
                  106: 15
              default: 19
          }
         9: .line 234
      StackMap locals: sun.print.Win32PrintJob int sun.print.Win32PrintJob javax.print.event.PrintJobListener javax.print.event.PrintJobEvent int
      StackMap stack:
            aload 3 /* listener */
            aload 4 /* event */
            invokeinterface javax.print.event.PrintJobListener.printJobCompleted:(Ljavax/print/event/PrintJobEvent;)V
        10: .line 235
            goto 19
        11: .line 238
      StackMap locals:
      StackMap stack:
            aload 3 /* listener */
            aload 4 /* event */
            invokeinterface javax.print.event.PrintJobListener.printJobCanceled:(Ljavax/print/event/PrintJobEvent;)V
        12: .line 239
            goto 19
        13: .line 242
      StackMap locals:
      StackMap stack:
            aload 3 /* listener */
            aload 4 /* event */
            invokeinterface javax.print.event.PrintJobListener.printJobFailed:(Ljavax/print/event/PrintJobEvent;)V
        14: .line 243
            goto 19
        15: .line 246
      StackMap locals:
      StackMap stack:
            aload 3 /* listener */
            aload 4 /* event */
            invokeinterface javax.print.event.PrintJobListener.printDataTransferCompleted:(Ljavax/print/event/PrintJobEvent;)V
        16: .line 247
            goto 19
        17: .line 250
      StackMap locals:
      StackMap stack:
            aload 3 /* listener */
            aload 4 /* event */
            invokeinterface javax.print.event.PrintJobListener.printJobNoMoreEvents:(Ljavax/print/event/PrintJobEvent;)V
        18: .line 251
            goto 19
        19: .line 229
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
        end local 3 // javax.print.event.PrintJobListener listener
      StackMap locals: sun.print.Win32PrintJob int sun.print.Win32PrintJob top javax.print.event.PrintJobEvent int
      StackMap stack:
        20: iload 5 /* i */
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobListeners:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            if_icmplt 7
        end local 5 // int i
        end local 4 // javax.print.event.PrintJobEvent event
        21: .line 225
      StackMap locals: sun.print.Win32PrintJob int sun.print.Win32PrintJob
      StackMap stack:
            aload 2
            monitorexit
        22: goto 25
      StackMap locals:
      StackMap stack: java.lang.Throwable
        23: aload 2
            monitorexit
        24: athrow
        25: .line 259
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int reason
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   26     0      this  Lsun/print/Win32PrintJob;
            0   26     1    reason  I
            8   20     3  listener  Ljavax/print/event/PrintJobListener;
            5   21     4     event  Ljavax/print/event/PrintJobEvent;
            6   21     5         i  I
      Exception table:
        from    to  target  type
           3    22      23  any
          23    24      23  any
    MethodParameters:
        Name  Flags
      reason  

  public void addPrintJobAttributeListener(javax.print.event.PrintJobAttributeListener, javax.print.attribute.PrintJobAttributeSet);
    descriptor: (Ljavax/print/event/PrintJobAttributeListener;Ljavax/print/attribute/PrintJobAttributeSet;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // sun.print.Win32PrintJob this
        start local 1 // javax.print.event.PrintJobAttributeListener listener
        start local 2 // javax.print.attribute.PrintJobAttributeSet attributes
         0: .line 264
            aload 0 /* this */
            dup
            astore 3
            monitorenter
         1: .line 265
            aload 1 /* listener */
            ifnonnull 4
         2: .line 266
            aload 3
            monitorexit
         3: return
         4: .line 268
      StackMap locals: sun.print.Win32PrintJob
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.attrListeners:Ljava/util/Vector;
            ifnonnull 7
         5: .line 269
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield sun.print.Win32PrintJob.attrListeners:Ljava/util/Vector;
         6: .line 270
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield sun.print.Win32PrintJob.listenedAttributeSets:Ljava/util/Vector;
         7: .line 272
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.attrListeners:Ljava/util/Vector;
            aload 1 /* listener */
            invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
            pop
         8: .line 273
            aload 2 /* attributes */
            ifnonnull 10
         9: .line 274
            new javax.print.attribute.HashPrintJobAttributeSet
            dup
            invokespecial javax.print.attribute.HashPrintJobAttributeSet.<init>:()V
            astore 2 /* attributes */
        10: .line 276
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.listenedAttributeSets:Ljava/util/Vector;
            aload 2 /* attributes */
            invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
            pop
        11: .line 264
            aload 3
            monitorexit
        12: goto 15
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: aload 3
            monitorexit
        14: athrow
        15: .line 278
      StackMap locals:
      StackMap stack:
            return
        end local 2 // javax.print.attribute.PrintJobAttributeSet attributes
        end local 1 // javax.print.event.PrintJobAttributeListener listener
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Lsun/print/Win32PrintJob;
            0   16     1    listener  Ljavax/print/event/PrintJobAttributeListener;
            0   16     2  attributes  Ljavax/print/attribute/PrintJobAttributeSet;
      Exception table:
        from    to  target  type
           1     3      13  any
           4    12      13  any
          13    14      13  any
    MethodParameters:
            Name  Flags
      listener    
      attributes  

  public void removePrintJobAttributeListener(javax.print.event.PrintJobAttributeListener);
    descriptor: (Ljavax/print/event/PrintJobAttributeListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // sun.print.Win32PrintJob this
        start local 1 // javax.print.event.PrintJobAttributeListener listener
         0: .line 282
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 283
            aload 1 /* listener */
            ifnull 2
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.attrListeners:Ljava/util/Vector;
            ifnonnull 4
         2: .line 284
      StackMap locals: sun.print.Win32PrintJob
      StackMap stack:
            aload 2
            monitorexit
         3: return
         4: .line 286
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.attrListeners:Ljava/util/Vector;
            aload 1 /* listener */
            invokevirtual java.util.Vector.indexOf:(Ljava/lang/Object;)I
            istore 3 /* index */
        start local 3 // int index
         5: .line 287
            iload 3 /* index */
            iconst_m1
            if_icmpne 8
         6: .line 288
            aload 2
            monitorexit
         7: return
         8: .line 290
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.attrListeners:Ljava/util/Vector;
            iload 3 /* index */
            invokevirtual java.util.Vector.remove:(I)Ljava/lang/Object;
            pop
         9: .line 291
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.listenedAttributeSets:Ljava/util/Vector;
            iload 3 /* index */
            invokevirtual java.util.Vector.remove:(I)Ljava/lang/Object;
            pop
        10: .line 292
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.attrListeners:Ljava/util/Vector;
            invokevirtual java.util.Vector.isEmpty:()Z
            ifeq 13
        11: .line 293
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.attrListeners:Ljava/util/Vector;
        12: .line 294
            aload 0 /* this */
            aconst_null
            putfield sun.print.Win32PrintJob.listenedAttributeSets:Ljava/util/Vector;
        end local 3 // int index
        13: .line 282
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
        14: goto 17
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: aload 2
            monitorexit
        16: athrow
        17: .line 298
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.print.event.PrintJobAttributeListener listener
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   18     0      this  Lsun/print/Win32PrintJob;
            0   18     1  listener  Ljavax/print/event/PrintJobAttributeListener;
            5   13     3     index  I
      Exception table:
        from    to  target  type
           1     3      15  any
           4     7      15  any
           8    14      15  any
          15    16      15  any
    MethodParameters:
          Name  Flags
      listener  

  public void print(javax.print.Doc, javax.print.attribute.PrintRequestAttributeSet);
    descriptor: (Ljavax/print/Doc;Ljavax/print/attribute/PrintRequestAttributeSet;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=3
        start local 0 // sun.print.Win32PrintJob this
        start local 1 // javax.print.Doc doc
        start local 2 // javax.print.attribute.PrintRequestAttributeSet attributes
         0: .line 303
            aload 0 /* this */
            dup
            astore 3
            monitorenter
         1: .line 304
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.printing:Z
            ifeq 3
         2: .line 305
            new javax.print.PrintException
            dup
            ldc "already printing"
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 307
      StackMap locals: sun.print.Win32PrintJob
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.print.Win32PrintJob.printing:Z
         4: .line 303
            aload 3
            monitorexit
         5: goto 8
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: aload 3
            monitorexit
         7: athrow
         8: .line 311
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
         9: .line 312
            ldc Ljavax/print/attribute/standard/PrinterState;
        10: .line 311
            invokevirtual sun.print.Win32PrintService.getAttribute:(Ljava/lang/Class;)Ljavax/print/attribute/PrintServiceAttribute;
            checkcast javax.print.attribute.standard.PrinterState
            astore 3 /* prnState */
        start local 3 // javax.print.attribute.standard.PrinterState prnState
        11: .line 313
            aload 3 /* prnState */
            getstatic javax.print.attribute.standard.PrinterState.STOPPED:Ljavax/print/attribute/standard/PrinterState;
            if_acmpne 19
        12: .line 315
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
        13: .line 316
            ldc Ljavax/print/attribute/standard/PrinterStateReasons;
        14: .line 315
            invokevirtual sun.print.Win32PrintService.getAttribute:(Ljava/lang/Class;)Ljavax/print/attribute/PrintServiceAttribute;
            checkcast javax.print.attribute.standard.PrinterStateReasons
        15: .line 314
            astore 4 /* prnStateReasons */
        start local 4 // javax.print.attribute.standard.PrinterStateReasons prnStateReasons
        16: .line 317
            aload 4 /* prnStateReasons */
            ifnull 19
        17: .line 318
            aload 4 /* prnStateReasons */
            getstatic javax.print.attribute.standard.PrinterStateReason.SHUTDOWN:Ljavax/print/attribute/standard/PrinterStateReason;
            invokevirtual javax.print.attribute.standard.PrinterStateReasons.containsKey:(Ljava/lang/Object;)Z
            ifeq 19
        18: .line 320
            new javax.print.PrintException
            dup
            ldc "PrintService is no longer available."
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // javax.print.attribute.standard.PrinterStateReasons prnStateReasons
        19: .line 324
      StackMap locals: javax.print.attribute.standard.PrinterState
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
        20: .line 325
            ldc Ljavax/print/attribute/standard/PrinterIsAcceptingJobs;
        21: .line 324
            invokevirtual sun.print.Win32PrintService.getAttribute:(Ljava/lang/Class;)Ljavax/print/attribute/PrintServiceAttribute;
            checkcast javax.print.attribute.standard.PrinterIsAcceptingJobs
        22: .line 326
            getstatic javax.print.attribute.standard.PrinterIsAcceptingJobs.NOT_ACCEPTING_JOBS:Ljavax/print/attribute/standard/PrinterIsAcceptingJobs;
        23: .line 324
            if_acmpne 25
        24: .line 327
            new javax.print.PrintException
            dup
            ldc "Printer is not accepting job."
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 331
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* doc */
            putfield sun.print.Win32PrintJob.doc:Ljavax/print/Doc;
        26: .line 333
            aload 1 /* doc */
            invokeinterface javax.print.Doc.getDocFlavor:()Ljavax/print/DocFlavor;
            astore 4 /* flavor */
        start local 4 // javax.print.DocFlavor flavor
        27: .line 337
            aload 1 /* doc */
            invokeinterface javax.print.Doc.getPrintData:()Ljava/lang/Object;
            astore 5 /* data */
        start local 5 // java.lang.Object data
        28: .line 338
            goto 32
        end local 5 // java.lang.Object data
      StackMap locals: sun.print.Win32PrintJob javax.print.Doc javax.print.attribute.PrintRequestAttributeSet javax.print.attribute.standard.PrinterState javax.print.DocFlavor
      StackMap stack: java.io.IOException
        29: astore 6 /* e */
        start local 6 // java.io.IOException e
        30: .line 339
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        31: .line 340
            new javax.print.PrintException
            dup
            new java.lang.StringBuilder
            dup
            ldc "can't get print data: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* e */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.io.IOException e
        start local 5 // java.lang.Object data
        32: .line 343
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 4 /* flavor */
            ifnull 33
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            aload 4 /* flavor */
            invokevirtual sun.print.Win32PrintService.isDocFlavorSupported:(Ljavax/print/DocFlavor;)Z
            ifne 35
        33: .line 344
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        34: .line 345
            new sun.print.PrintJobFlavorException
            dup
            ldc "invalid flavor"
            aload 4 /* flavor */
            invokespecial sun.print.PrintJobFlavorException.<init>:(Ljava/lang/String;Ljavax/print/DocFlavor;)V
            athrow
        35: .line 348
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* doc */
            aload 2 /* attributes */
            invokevirtual sun.print.Win32PrintJob.initializeAttributeSets:(Ljavax/print/Doc;Ljavax/print/attribute/PrintRequestAttributeSet;)V
        36: .line 350
            aload 0 /* this */
            aload 4 /* flavor */
            invokevirtual sun.print.Win32PrintJob.getAttributeValues:(Ljavax/print/DocFlavor;)V
        37: .line 352
            aload 4 /* flavor */
            invokevirtual javax.print.DocFlavor.getRepresentationClassName:()Ljava/lang/String;
            astore 6 /* repClassName */
        start local 6 // java.lang.String repClassName
        38: .line 354
            aload 4 /* flavor */
            getstatic javax.print.DocFlavor$INPUT_STREAM.GIF:Ljavax/print/DocFlavor$INPUT_STREAM;
            invokevirtual javax.print.DocFlavor.equals:(Ljava/lang/Object;)Z
            ifne 44
        39: .line 355
            aload 4 /* flavor */
            getstatic javax.print.DocFlavor$INPUT_STREAM.JPEG:Ljavax/print/DocFlavor$INPUT_STREAM;
            invokevirtual javax.print.DocFlavor.equals:(Ljava/lang/Object;)Z
            ifne 44
        40: .line 356
            aload 4 /* flavor */
            getstatic javax.print.DocFlavor$INPUT_STREAM.PNG:Ljavax/print/DocFlavor$INPUT_STREAM;
            invokevirtual javax.print.DocFlavor.equals:(Ljava/lang/Object;)Z
            ifne 44
        41: .line 357
            aload 4 /* flavor */
            getstatic javax.print.DocFlavor$BYTE_ARRAY.GIF:Ljavax/print/DocFlavor$BYTE_ARRAY;
            invokevirtual javax.print.DocFlavor.equals:(Ljava/lang/Object;)Z
            ifne 44
        42: .line 358
            aload 4 /* flavor */
            getstatic javax.print.DocFlavor$BYTE_ARRAY.JPEG:Ljavax/print/DocFlavor$BYTE_ARRAY;
            invokevirtual javax.print.DocFlavor.equals:(Ljava/lang/Object;)Z
            ifne 44
        43: .line 359
            aload 4 /* flavor */
            getstatic javax.print.DocFlavor$BYTE_ARRAY.PNG:Ljavax/print/DocFlavor$BYTE_ARRAY;
            invokevirtual javax.print.DocFlavor.equals:(Ljava/lang/Object;)Z
            ifeq 57
        44: .line 361
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* doc */
            invokeinterface javax.print.Doc.getStreamForBytes:()Ljava/io/InputStream;
            putfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
        45: .line 362
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
            ifnonnull 48
        46: .line 363
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        47: .line 364
            new javax.print.PrintException
            dup
            ldc "No stream for data"
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
        48: .line 366
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new sun.print.ImagePrinter
            dup
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
            invokespecial sun.print.ImagePrinter.<init>:(Ljava/io/InputStream;)V
            invokevirtual sun.print.Win32PrintJob.printableJob:(Ljava/awt/print/Printable;)V
        49: .line 367
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            invokevirtual sun.print.Win32PrintService.wakeNotifier:()V
        50: .line 368
            return
        51: .line 369
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
            astore 7 /* cce */
        start local 7 // java.lang.ClassCastException cce
        52: .line 370
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        53: .line 371
            new javax.print.PrintException
            dup
            aload 7 /* cce */
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 7 // java.lang.ClassCastException cce
        54: .line 372
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 7 /* ioe */
        start local 7 // java.io.IOException ioe
        55: .line 373
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        56: .line 374
            new javax.print.PrintException
            dup
            aload 7 /* ioe */
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 7 // java.io.IOException ioe
        57: .line 376
      StackMap locals:
      StackMap stack:
            aload 4 /* flavor */
            getstatic javax.print.DocFlavor$URL.GIF:Ljavax/print/DocFlavor$URL;
            invokevirtual javax.print.DocFlavor.equals:(Ljava/lang/Object;)Z
            ifne 60
        58: .line 377
            aload 4 /* flavor */
            getstatic javax.print.DocFlavor$URL.JPEG:Ljavax/print/DocFlavor$URL;
            invokevirtual javax.print.DocFlavor.equals:(Ljava/lang/Object;)Z
            ifne 60
        59: .line 378
            aload 4 /* flavor */
            getstatic javax.print.DocFlavor$URL.PNG:Ljavax/print/DocFlavor$URL;
            invokevirtual javax.print.DocFlavor.equals:(Ljava/lang/Object;)Z
            ifeq 66
        60: .line 380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new sun.print.ImagePrinter
            dup
            aload 5 /* data */
            checkcast java.net.URL
            invokespecial sun.print.ImagePrinter.<init>:(Ljava/net/URL;)V
            invokevirtual sun.print.Win32PrintJob.printableJob:(Ljava/awt/print/Printable;)V
        61: .line 381
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            invokevirtual sun.print.Win32PrintService.wakeNotifier:()V
        62: .line 382
            return
        63: .line 383
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
            astore 7 /* cce */
        start local 7 // java.lang.ClassCastException cce
        64: .line 384
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        65: .line 385
            new javax.print.PrintException
            dup
            aload 7 /* cce */
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 7 // java.lang.ClassCastException cce
        66: .line 387
      StackMap locals:
      StackMap stack:
            aload 6 /* repClassName */
            ldc "java.awt.print.Pageable"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 76
        67: .line 389
            aload 0 /* this */
            aload 1 /* doc */
            invokeinterface javax.print.Doc.getPrintData:()Ljava/lang/Object;
            checkcast java.awt.print.Pageable
            invokevirtual sun.print.Win32PrintJob.pageableJob:(Ljava/awt/print/Pageable;)V
        68: .line 390
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            invokevirtual sun.print.Win32PrintService.wakeNotifier:()V
        69: .line 391
            return
        70: .line 392
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
            astore 7 /* cce */
        start local 7 // java.lang.ClassCastException cce
        71: .line 393
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        72: .line 394
            new javax.print.PrintException
            dup
            aload 7 /* cce */
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 7 // java.lang.ClassCastException cce
        73: .line 395
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 7 /* ioe */
        start local 7 // java.io.IOException ioe
        74: .line 396
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        75: .line 397
            new javax.print.PrintException
            dup
            aload 7 /* ioe */
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 7 // java.io.IOException ioe
        76: .line 399
      StackMap locals:
      StackMap stack:
            aload 6 /* repClassName */
            ldc "java.awt.print.Printable"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 86
        77: .line 401
            aload 0 /* this */
            aload 1 /* doc */
            invokeinterface javax.print.Doc.getPrintData:()Ljava/lang/Object;
            checkcast java.awt.print.Printable
            invokevirtual sun.print.Win32PrintJob.printableJob:(Ljava/awt/print/Printable;)V
        78: .line 402
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            invokevirtual sun.print.Win32PrintService.wakeNotifier:()V
        79: .line 403
            return
        80: .line 404
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
            astore 7 /* cce */
        start local 7 // java.lang.ClassCastException cce
        81: .line 405
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        82: .line 406
            new javax.print.PrintException
            dup
            aload 7 /* cce */
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 7 // java.lang.ClassCastException cce
        83: .line 407
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 7 /* ioe */
        start local 7 // java.io.IOException ioe
        84: .line 408
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        85: .line 409
            new javax.print.PrintException
            dup
            aload 7 /* ioe */
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 7 // java.io.IOException ioe
        86: .line 411
      StackMap locals:
      StackMap stack:
            aload 6 /* repClassName */
            ldc "[B"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 89
        87: .line 412
            aload 6 /* repClassName */
            ldc "java.io.InputStream"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 89
        88: .line 413
            aload 6 /* repClassName */
            ldc "java.net.URL"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 150
        89: .line 415
      StackMap locals:
      StackMap stack:
            aload 6 /* repClassName */
            ldc "java.net.URL"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 96
        90: .line 416
            aload 5 /* data */
            checkcast java.net.URL
            astore 7 /* url */
        start local 7 // java.net.URL url
        91: .line 418
            aload 0 /* this */
            aload 7 /* url */
            invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
            putfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
        92: .line 419
            goto 101
      StackMap locals: sun.print.Win32PrintJob javax.print.Doc javax.print.attribute.PrintRequestAttributeSet javax.print.attribute.standard.PrinterState javax.print.DocFlavor java.lang.Object java.lang.String java.net.URL
      StackMap stack: java.io.IOException
        93: astore 8 /* e */
        start local 8 // java.io.IOException e
        94: .line 420
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        95: .line 421
            new javax.print.PrintException
            dup
            aload 8 /* e */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // java.io.IOException e
        end local 7 // java.net.URL url
        96: .line 425
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* doc */
            invokeinterface javax.print.Doc.getStreamForBytes:()Ljava/io/InputStream;
            putfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
        97: .line 426
            goto 101
      StackMap locals:
      StackMap stack: java.io.IOException
        98: astore 7 /* ioe */
        start local 7 // java.io.IOException ioe
        99: .line 427
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       100: .line 428
            new javax.print.PrintException
            dup
            aload 7 /* ioe */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // java.io.IOException ioe
       101: .line 432
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
            ifnonnull 104
       102: .line 433
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       103: .line 434
            new javax.print.PrintException
            dup
            ldc "No stream for data"
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
       104: .line 437
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.mDestination:Ljava/lang/String;
            ifnull 124
       105: .line 439
            new java.io.FileOutputStream
            dup
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.mDestination:Ljava/lang/String;
            invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
            astore 7 /* fos */
        start local 7 // java.io.FileOutputStream fos
       106: .line 440
            sipush 1024
            newarray 8
            astore 8 /* buffer */
        start local 8 // byte[] buffer
       107: .line 443
            goto 109
        start local 9 // int cread
       108: .line 444
      StackMap locals: java.io.FileOutputStream byte[] int
      StackMap stack:
            aload 7 /* fos */
            aload 8 /* buffer */
            iconst_0
            iload 9 /* cread */
            invokevirtual java.io.FileOutputStream.write:([BII)V
        end local 9 // int cread
       109: .line 443
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
            aload 8 /* buffer */
            iconst_0
            aload 8 /* buffer */
            arraylength
            invokevirtual java.io.InputStream.read:([BII)I
            dup
            istore 9 /* cread */
        start local 9 // int cread
       110: ifge 108
       111: .line 446
            aload 7 /* fos */
            invokevirtual java.io.FileOutputStream.flush:()V
       112: .line 447
            aload 7 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
        end local 9 // int cread
        end local 8 // byte[] buffer
        end local 7 // java.io.FileOutputStream fos
       113: .line 448
            goto 120
      StackMap locals: sun.print.Win32PrintJob javax.print.Doc javax.print.attribute.PrintRequestAttributeSet javax.print.attribute.standard.PrinterState javax.print.DocFlavor java.lang.Object java.lang.String
      StackMap stack: java.io.FileNotFoundException
       114: astore 7 /* fnfe */
        start local 7 // java.io.FileNotFoundException fnfe
       115: .line 449
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       116: .line 450
            new javax.print.PrintException
            dup
            aload 7 /* fnfe */
            invokevirtual java.io.FileNotFoundException.toString:()Ljava/lang/String;
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // java.io.FileNotFoundException fnfe
       117: .line 451
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 7 /* ioe */
        start local 7 // java.io.IOException ioe
       118: .line 452
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       119: .line 453
            new javax.print.PrintException
            dup
            aload 7 /* ioe */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // java.io.IOException ioe
       120: .line 455
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 106
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       121: .line 456
            aload 0 /* this */
            bipush 102
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       122: .line 457
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            invokevirtual sun.print.Win32PrintService.wakeNotifier:()V
       123: .line 458
            return
       124: .line 461
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            invokevirtual sun.print.Win32PrintService.getName:()Ljava/lang/String;
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobName:Ljava/lang/String;
            invokevirtual sun.print.Win32PrintJob.startPrintRawData:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 127
       125: .line 462
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       126: .line 463
            new javax.print.PrintException
            dup
            ldc "Print job failed to start."
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
       127: .line 465
      StackMap locals:
      StackMap stack:
            new java.io.BufferedInputStream
            dup
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.instream:Ljava/io/InputStream;
            invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
            astore 7 /* bin */
        start local 7 // java.io.BufferedInputStream bin
       128: .line 466
            iconst_0
            istore 8 /* bread */
        start local 8 // int bread
       129: .line 468
            sipush 8192
            newarray 8
            astore 9 /* buffer */
        start local 9 // byte[] buffer
       130: .line 470
            goto 135
       131: .line 471
      StackMap locals: java.io.BufferedInputStream int byte[]
      StackMap stack:
            aload 0 /* this */
            aload 9 /* buffer */
            iload 8 /* bread */
            invokevirtual sun.print.Win32PrintJob.printRawData:([BI)Z
            ifne 135
       132: .line 472
            aload 7 /* bin */
            invokevirtual java.io.BufferedInputStream.close:()V
       133: .line 473
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       134: .line 474
            new javax.print.PrintException
            dup
            ldc "Problem while spooling data"
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
       135: .line 470
      StackMap locals:
      StackMap stack:
            aload 7 /* bin */
            aload 9 /* buffer */
            iconst_0
            sipush 8192
            invokevirtual java.io.BufferedInputStream.read:([BII)I
            dup
            istore 8 /* bread */
            ifge 131
       136: .line 477
            aload 7 /* bin */
            invokevirtual java.io.BufferedInputStream.close:()V
       137: .line 478
            aload 0 /* this */
            invokevirtual sun.print.Win32PrintJob.endPrintRawData:()Z
            ifne 140
       138: .line 479
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       139: .line 480
            new javax.print.PrintException
            dup
            ldc "Print job failed to close properly."
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
       140: .line 482
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 106
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        end local 9 // byte[] buffer
       141: .line 483
            goto 148
      StackMap locals: sun.print.Win32PrintJob javax.print.Doc javax.print.attribute.PrintRequestAttributeSet javax.print.attribute.standard.PrinterState javax.print.DocFlavor java.lang.Object java.lang.String java.io.BufferedInputStream int
      StackMap stack: java.io.IOException
       142: astore 9 /* e */
        start local 9 // java.io.IOException e
       143: .line 484
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       144: .line 485
            new javax.print.PrintException
            dup
            aload 9 /* e */
            invokevirtual java.io.IOException.toString:()Ljava/lang/String;
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
        end local 9 // java.io.IOException e
       145: .line 486
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 10
       146: .line 487
            aload 0 /* this */
            bipush 105
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       147: .line 488
            aload 10
            athrow
       148: .line 487
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 105
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        end local 8 // int bread
        end local 7 // java.io.BufferedInputStream bin
       149: .line 489
            goto 152
       150: .line 490
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
       151: .line 491
            new javax.print.PrintException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unrecognized class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* repClassName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
       152: .line 493
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            invokevirtual sun.print.Win32PrintService.wakeNotifier:()V
       153: .line 494
            return
        end local 6 // java.lang.String repClassName
        end local 5 // java.lang.Object data
        end local 4 // javax.print.DocFlavor flavor
        end local 3 // javax.print.attribute.standard.PrinterState prnState
        end local 2 // javax.print.attribute.PrintRequestAttributeSet attributes
        end local 1 // javax.print.Doc doc
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0  154     0             this  Lsun/print/Win32PrintJob;
            0  154     1              doc  Ljavax/print/Doc;
            0  154     2       attributes  Ljavax/print/attribute/PrintRequestAttributeSet;
           11  154     3         prnState  Ljavax/print/attribute/standard/PrinterState;
           16   19     4  prnStateReasons  Ljavax/print/attribute/standard/PrinterStateReasons;
           27  154     4           flavor  Ljavax/print/DocFlavor;
           28   29     5             data  Ljava/lang/Object;
           32  154     5             data  Ljava/lang/Object;
           30   32     6                e  Ljava/io/IOException;
           38  154     6     repClassName  Ljava/lang/String;
           52   54     7              cce  Ljava/lang/ClassCastException;
           55   57     7              ioe  Ljava/io/IOException;
           64   66     7              cce  Ljava/lang/ClassCastException;
           71   73     7              cce  Ljava/lang/ClassCastException;
           74   76     7              ioe  Ljava/io/IOException;
           81   83     7              cce  Ljava/lang/ClassCastException;
           84   86     7              ioe  Ljava/io/IOException;
           91   96     7              url  Ljava/net/URL;
           94   96     8                e  Ljava/io/IOException;
           99  101     7              ioe  Ljava/io/IOException;
          106  113     7              fos  Ljava/io/FileOutputStream;
          107  113     8           buffer  [B
          108  109     9            cread  I
          110  113     9            cread  I
          115  117     7             fnfe  Ljava/io/FileNotFoundException;
          118  120     7              ioe  Ljava/io/IOException;
          128  149     7              bin  Ljava/io/BufferedInputStream;
          129  149     8            bread  I
          130  141     9           buffer  [B
          143  145     9                e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           1     5       6  any
           6     7       6  any
          27    28      29  Class java.io.IOException
          44    50      51  Class java.lang.ClassCastException
          44    50      54  Class java.io.IOException
          60    62      63  Class java.lang.ClassCastException
          67    69      70  Class java.lang.ClassCastException
          67    69      73  Class java.io.IOException
          77    79      80  Class java.lang.ClassCastException
          77    79      83  Class java.io.IOException
          91    92      93  Class java.io.IOException
          96    97      98  Class java.io.IOException
         105   113     114  Class java.io.FileNotFoundException
         105   113     117  Class java.io.IOException
         129   141     142  Class java.io.IOException
         129   145     145  any
    Exceptions:
      throws javax.print.PrintException
    MethodParameters:
            Name  Flags
      doc         
      attributes  

  public void printableJob(java.awt.print.Printable);
    descriptor: (Ljava/awt/print/Printable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=6, args_size=2
        start local 0 // sun.print.Win32PrintJob this
        start local 1 // java.awt.print.Printable printable
         0: .line 498
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 499
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            ifnull 3
         2: .line 500
            new javax.print.PrintException
            dup
            ldc "already printing"
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 502
      StackMap locals: sun.print.Win32PrintJob
      StackMap stack:
            aload 0 /* this */
            new sun.awt.windows.WPrinterJob
            dup
            invokespecial sun.awt.windows.WPrinterJob.<init>:()V
            putfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
         4: .line 498
            aload 2
            monitorexit
         5: goto 8
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: aload 2
            monitorexit
         7: athrow
         8: .line 505
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.print.Win32PrintJob.getPrintService:()Ljavax/print/PrintService;
            astore 2 /* svc */
        start local 2 // javax.print.PrintService svc
         9: .line 506
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            aload 2 /* svc */
            invokevirtual java.awt.print.PrinterJob.setPrintService:(Ljavax/print/PrintService;)V
        10: .line 507
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.copies:I
            ifne 13
        11: .line 508
            aload 2 /* svc */
            ldc Ljavax/print/attribute/standard/Copies;
            invokeinterface javax.print.PrintService.getDefaultAttributeValue:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast javax.print.attribute.standard.Copies
            astore 3 /* c */
        start local 3 // javax.print.attribute.standard.Copies c
        12: .line 509
            aload 0 /* this */
            aload 3 /* c */
            invokevirtual javax.print.attribute.standard.Copies.getValue:()I
            putfield sun.print.Win32PrintJob.copies:I
        end local 3 // javax.print.attribute.standard.Copies c
        13: .line 512
      StackMap locals: javax.print.PrintService
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.mediaName:Ljavax/print/attribute/standard/MediaSizeName;
            ifnonnull 18
        14: .line 513
            aload 2 /* svc */
            ldc Ljavax/print/attribute/standard/Media;
            invokeinterface javax.print.PrintService.getDefaultAttributeValue:(Ljava/lang/Class;)Ljava/lang/Object;
            astore 3 /* media */
        start local 3 // java.lang.Object media
        15: .line 514
            aload 3 /* media */
            instanceof javax.print.attribute.standard.MediaSizeName
            ifeq 18
        16: .line 515
            aload 0 /* this */
            aload 3 /* media */
            checkcast javax.print.attribute.standard.MediaSizeName
            putfield sun.print.Win32PrintJob.mediaName:Ljavax/print/attribute/standard/MediaSizeName;
        17: .line 516
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.mediaName:Ljavax/print/attribute/standard/MediaSizeName;
            invokestatic javax.print.attribute.standard.MediaSize.getMediaSizeForName:(Ljavax/print/attribute/standard/MediaSizeName;)Ljavax/print/attribute/standard/MediaSize;
            putfield sun.print.Win32PrintJob.mediaSize:Ljavax/print/attribute/standard/MediaSize;
        end local 3 // java.lang.Object media
        18: .line 520
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.orient:Ljavax/print/attribute/standard/OrientationRequested;
            ifnonnull 22
        19: .line 521
            aload 0 /* this */
        20: .line 522
            aload 2 /* svc */
            ldc Ljavax/print/attribute/standard/OrientationRequested;
            invokeinterface javax.print.PrintService.getDefaultAttributeValue:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast javax.print.attribute.standard.OrientationRequested
        21: .line 521
            putfield sun.print.Win32PrintJob.orient:Ljavax/print/attribute/standard/OrientationRequested;
        22: .line 525
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.copies:I
            invokevirtual java.awt.print.PrinterJob.setCopies:(I)V
        23: .line 526
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobName:Ljava/lang/String;
            invokevirtual java.awt.print.PrinterJob.setJobName:(Ljava/lang/String;)V
        24: .line 527
            new java.awt.print.PageFormat
            dup
            invokespecial java.awt.print.PageFormat.<init>:()V
            astore 3 /* pf */
        start local 3 // java.awt.print.PageFormat pf
        25: .line 528
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.mediaSize:Ljavax/print/attribute/standard/MediaSize;
            ifnull 34
        26: .line 529
            new java.awt.print.Paper
            dup
            invokespecial java.awt.print.Paper.<init>:()V
            astore 4 /* p */
        start local 4 // java.awt.print.Paper p
        27: .line 530
            aload 4 /* p */
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.mediaSize:Ljavax/print/attribute/standard/MediaSize;
            sipush 25400
            invokevirtual javax.print.attribute.standard.MediaSize.getX:(I)F
            f2d
            ldc 72.0
            dmul
        28: .line 531
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.mediaSize:Ljavax/print/attribute/standard/MediaSize;
            sipush 25400
            invokevirtual javax.print.attribute.standard.MediaSize.getY:(I)F
            f2d
            ldc 72.0
            dmul
        29: .line 530
            invokevirtual java.awt.print.Paper.setSize:(DD)V
        30: .line 532
            aload 4 /* p */
            ldc 72.0
            ldc 72.0
            aload 4 /* p */
            invokevirtual java.awt.print.Paper.getWidth:()D
            ldc 144.0
            dsub
        31: .line 533
            aload 4 /* p */
            invokevirtual java.awt.print.Paper.getHeight:()D
            ldc 144.0
            dsub
        32: .line 532
            invokevirtual java.awt.print.Paper.setImageableArea:(DDDD)V
        33: .line 534
            aload 3 /* pf */
            aload 4 /* p */
            invokevirtual java.awt.print.PageFormat.setPaper:(Ljava/awt/print/Paper;)V
        end local 4 // java.awt.print.Paper p
        34: .line 536
      StackMap locals: java.awt.print.PageFormat
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.orient:Ljavax/print/attribute/standard/OrientationRequested;
            getstatic javax.print.attribute.standard.OrientationRequested.REVERSE_LANDSCAPE:Ljavax/print/attribute/standard/OrientationRequested;
            if_acmpne 37
        35: .line 537
            aload 3 /* pf */
            iconst_2
            invokevirtual java.awt.print.PageFormat.setOrientation:(I)V
        36: .line 538
            goto 39
      StackMap locals:
      StackMap stack:
        37: aload 0 /* this */
            getfield sun.print.Win32PrintJob.orient:Ljavax/print/attribute/standard/OrientationRequested;
            getstatic javax.print.attribute.standard.OrientationRequested.LANDSCAPE:Ljavax/print/attribute/standard/OrientationRequested;
            if_acmpne 39
        38: .line 539
            aload 3 /* pf */
            iconst_0
            invokevirtual java.awt.print.PageFormat.setOrientation:(I)V
        39: .line 541
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            aload 1 /* printable */
            aload 3 /* pf */
            invokevirtual java.awt.print.PrinterJob.setPrintable:(Ljava/awt/print/Printable;Ljava/awt/print/PageFormat;)V
        40: .line 542
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.reqAttrSet:Ljavax/print/attribute/PrintRequestAttributeSet;
            invokevirtual java.awt.print.PrinterJob.print:(Ljavax/print/attribute/PrintRequestAttributeSet;)V
        41: .line 543
            aload 0 /* this */
            bipush 106
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        42: .line 549
            aload 0 /* this */
            iconst_1
            putfield sun.print.Win32PrintJob.printReturned:Z
        43: .line 550
            aload 0 /* this */
            bipush 105
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        44: .line 544
            return
        end local 3 // java.awt.print.PageFormat pf
        end local 2 // javax.print.PrintService svc
        45: .line 545
      StackMap locals: sun.print.Win32PrintJob java.awt.print.Printable
      StackMap stack: java.awt.print.PrinterException
            astore 2 /* pe */
        start local 2 // java.awt.print.PrinterException pe
        46: .line 546
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        47: .line 547
            new javax.print.PrintException
            dup
            aload 2 /* pe */
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 2 // java.awt.print.PrinterException pe
        48: .line 548
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
        49: .line 549
            aload 0 /* this */
            iconst_1
            putfield sun.print.Win32PrintJob.printReturned:Z
        50: .line 550
            aload 0 /* this */
            bipush 105
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        51: .line 551
            aload 5
            athrow
        end local 1 // java.awt.print.Printable printable
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   52     0       this  Lsun/print/Win32PrintJob;
            0   52     1  printable  Ljava/awt/print/Printable;
            9   45     2        svc  Ljavax/print/PrintService;
           12   13     3          c  Ljavax/print/attribute/standard/Copies;
           15   18     3      media  Ljava/lang/Object;
           25   45     3         pf  Ljava/awt/print/PageFormat;
           27   34     4          p  Ljava/awt/print/Paper;
           46   48     2         pe  Ljava/awt/print/PrinterException;
      Exception table:
        from    to  target  type
           1     5       6  any
           6     7       6  any
           0    42      45  Class java.awt.print.PrinterException
           0    42      48  any
          45    48      48  any
    Exceptions:
      throws javax.print.PrintException
    MethodParameters:
           Name  Flags
      printable  

  public void pageableJob(java.awt.print.Pageable);
    descriptor: (Ljava/awt/print/Pageable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // sun.print.Win32PrintJob this
        start local 1 // java.awt.print.Pageable pageable
         0: .line 556
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 557
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            ifnull 3
         2: .line 558
            new javax.print.PrintException
            dup
            ldc "already printing"
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 560
      StackMap locals: sun.print.Win32PrintJob
      StackMap stack:
            aload 0 /* this */
            new sun.awt.windows.WPrinterJob
            dup
            invokespecial sun.awt.windows.WPrinterJob.<init>:()V
            putfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
         4: .line 556
            aload 2
            monitorexit
         5: goto 8
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: aload 2
            monitorexit
         7: athrow
         8: .line 563
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.print.Win32PrintJob.getPrintService:()Ljavax/print/PrintService;
            astore 2 /* svc */
        start local 2 // javax.print.PrintService svc
         9: .line 564
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            aload 2 /* svc */
            invokevirtual java.awt.print.PrinterJob.setPrintService:(Ljavax/print/PrintService;)V
        10: .line 565
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.copies:I
            ifne 13
        11: .line 566
            aload 2 /* svc */
            ldc Ljavax/print/attribute/standard/Copies;
            invokeinterface javax.print.PrintService.getDefaultAttributeValue:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast javax.print.attribute.standard.Copies
            astore 3 /* c */
        start local 3 // javax.print.attribute.standard.Copies c
        12: .line 567
            aload 0 /* this */
            aload 3 /* c */
            invokevirtual javax.print.attribute.standard.Copies.getValue:()I
            putfield sun.print.Win32PrintJob.copies:I
        end local 3 // javax.print.attribute.standard.Copies c
        13: .line 569
      StackMap locals: javax.print.PrintService
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.copies:I
            invokevirtual java.awt.print.PrinterJob.setCopies:(I)V
        14: .line 570
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobName:Ljava/lang/String;
            invokevirtual java.awt.print.PrinterJob.setJobName:(Ljava/lang/String;)V
        15: .line 571
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            aload 1 /* pageable */
            invokevirtual java.awt.print.PrinterJob.setPageable:(Ljava/awt/print/Pageable;)V
        16: .line 572
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.reqAttrSet:Ljavax/print/attribute/PrintRequestAttributeSet;
            invokevirtual java.awt.print.PrinterJob.print:(Ljavax/print/attribute/PrintRequestAttributeSet;)V
        17: .line 573
            aload 0 /* this */
            bipush 106
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        18: .line 579
            aload 0 /* this */
            iconst_1
            putfield sun.print.Win32PrintJob.printReturned:Z
        19: .line 580
            aload 0 /* this */
            bipush 105
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        20: .line 574
            return
        end local 2 // javax.print.PrintService svc
        21: .line 575
      StackMap locals: sun.print.Win32PrintJob java.awt.print.Pageable
      StackMap stack: java.awt.print.PrinterException
            astore 2 /* pe */
        start local 2 // java.awt.print.PrinterException pe
        22: .line 576
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        23: .line 577
            new javax.print.PrintException
            dup
            aload 2 /* pe */
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 2 // java.awt.print.PrinterException pe
        24: .line 578
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        25: .line 579
            aload 0 /* this */
            iconst_1
            putfield sun.print.Win32PrintJob.printReturned:Z
        26: .line 580
            aload 0 /* this */
            bipush 105
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        27: .line 581
            aload 4
            athrow
        end local 1 // java.awt.print.Pageable pageable
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   28     0      this  Lsun/print/Win32PrintJob;
            0   28     1  pageable  Ljava/awt/print/Pageable;
            9   21     2       svc  Ljavax/print/PrintService;
           12   13     3         c  Ljavax/print/attribute/standard/Copies;
           22   24     2        pe  Ljava/awt/print/PrinterException;
      Exception table:
        from    to  target  type
           1     5       6  any
           6     7       6  any
           0    18      21  Class java.awt.print.PrinterException
           0    18      24  any
          21    24      24  any
    Exceptions:
      throws javax.print.PrintException
    MethodParameters:
          Name  Flags
      pageable  

  private synchronized void initializeAttributeSets(javax.print.Doc, javax.print.attribute.PrintRequestAttributeSet);
    descriptor: (Ljavax/print/Doc;Ljavax/print/attribute/PrintRequestAttributeSet;)V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=9, args_size=3
        start local 0 // sun.print.Win32PrintJob this
        start local 1 // javax.print.Doc doc
        start local 2 // javax.print.attribute.PrintRequestAttributeSet reqSet
         0: .line 590
            aload 0 /* this */
            new javax.print.attribute.HashPrintRequestAttributeSet
            dup
            invokespecial javax.print.attribute.HashPrintRequestAttributeSet.<init>:()V
            putfield sun.print.Win32PrintJob.reqAttrSet:Ljavax/print/attribute/PrintRequestAttributeSet;
         1: .line 591
            aload 0 /* this */
            new javax.print.attribute.HashPrintJobAttributeSet
            dup
            invokespecial javax.print.attribute.HashPrintJobAttributeSet.<init>:()V
            putfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
         2: .line 594
            aload 2 /* reqSet */
            ifnull 11
         3: .line 595
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.reqAttrSet:Ljavax/print/attribute/PrintRequestAttributeSet;
            aload 2 /* reqSet */
            invokeinterface javax.print.attribute.PrintRequestAttributeSet.addAll:(Ljavax/print/attribute/AttributeSet;)Z
            pop
         4: .line 596
            aload 2 /* reqSet */
            invokeinterface javax.print.attribute.PrintRequestAttributeSet.toArray:()[Ljavax/print/attribute/Attribute;
            astore 3 /* attrs */
        start local 3 // javax.print.attribute.Attribute[] attrs
         5: .line 597
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 10
         7: .line 598
      StackMap locals: javax.print.attribute.Attribute[] int
      StackMap stack:
            aload 3 /* attrs */
            iload 4 /* i */
            aaload
            instanceof javax.print.attribute.PrintJobAttribute
            ifeq 9
         8: .line 599
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
            aload 3 /* attrs */
            iload 4 /* i */
            aaload
            invokeinterface javax.print.attribute.PrintJobAttributeSet.add:(Ljavax/print/attribute/Attribute;)Z
            pop
         9: .line 597
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 4 /* i */
            aload 3 /* attrs */
            arraylength
            if_icmplt 7
        end local 4 // int i
        end local 3 // javax.print.attribute.Attribute[] attrs
        11: .line 604
      StackMap locals:
      StackMap stack:
            aload 1 /* doc */
            invokeinterface javax.print.Doc.getAttributes:()Ljavax/print/attribute/DocAttributeSet;
            astore 4 /* docSet */
        start local 4 // javax.print.attribute.DocAttributeSet docSet
        12: .line 605
            aload 4 /* docSet */
            ifnull 22
        13: .line 606
            aload 4 /* docSet */
            invokeinterface javax.print.attribute.DocAttributeSet.toArray:()[Ljavax/print/attribute/Attribute;
            astore 3 /* attrs */
        start local 3 // javax.print.attribute.Attribute[] attrs
        14: .line 607
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        15: goto 21
        16: .line 608
      StackMap locals: javax.print.attribute.Attribute[] javax.print.attribute.DocAttributeSet int
      StackMap stack:
            aload 3 /* attrs */
            iload 5 /* i */
            aaload
            instanceof javax.print.attribute.PrintRequestAttribute
            ifeq 18
        17: .line 609
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.reqAttrSet:Ljavax/print/attribute/PrintRequestAttributeSet;
            aload 3 /* attrs */
            iload 5 /* i */
            aaload
            invokeinterface javax.print.attribute.PrintRequestAttributeSet.add:(Ljavax/print/attribute/Attribute;)Z
            pop
        18: .line 611
      StackMap locals:
      StackMap stack:
            aload 3 /* attrs */
            iload 5 /* i */
            aaload
            instanceof javax.print.attribute.PrintJobAttribute
            ifeq 20
        19: .line 612
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
            aload 3 /* attrs */
            iload 5 /* i */
            aaload
            invokeinterface javax.print.attribute.PrintJobAttributeSet.add:(Ljavax/print/attribute/Attribute;)Z
            pop
        20: .line 607
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 5 /* i */
            aload 3 /* attrs */
            arraylength
            if_icmplt 16
        end local 5 // int i
        end local 3 // javax.print.attribute.Attribute[] attrs
        22: .line 618
      StackMap locals: sun.print.Win32PrintJob javax.print.Doc javax.print.attribute.PrintRequestAttributeSet top javax.print.attribute.DocAttributeSet
      StackMap stack:
            ldc ""
            astore 5 /* userName */
        start local 5 // java.lang.String userName
        23: .line 620
            ldc "user.name"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* userName */
        24: .line 621
            goto 26
      StackMap locals: sun.print.Win32PrintJob javax.print.Doc javax.print.attribute.PrintRequestAttributeSet top javax.print.attribute.DocAttributeSet java.lang.String
      StackMap stack: java.lang.SecurityException
        25: pop
        26: .line 624
      StackMap locals:
      StackMap stack:
            aload 5 /* userName */
            ifnull 27
            aload 5 /* userName */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 38
        27: .line 626
      StackMap locals:
      StackMap stack:
            aload 2 /* reqSet */
            ldc Ljavax/print/attribute/standard/RequestingUserName;
            invokeinterface javax.print.attribute.PrintRequestAttributeSet.get:(Ljava/lang/Class;)Ljavax/print/attribute/Attribute;
            checkcast javax.print.attribute.standard.RequestingUserName
        28: .line 625
            astore 6 /* ruName */
        start local 6 // javax.print.attribute.standard.RequestingUserName ruName
        29: .line 627
            aload 6 /* ruName */
            ifnull 36
        30: .line 628
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
        31: .line 629
            new javax.print.attribute.standard.JobOriginatingUserName
            dup
            aload 6 /* ruName */
            invokevirtual javax.print.attribute.standard.RequestingUserName.getValue:()Ljava/lang/String;
        32: .line 630
            aload 6 /* ruName */
            invokevirtual javax.print.attribute.standard.RequestingUserName.getLocale:()Ljava/util/Locale;
        33: .line 629
            invokespecial javax.print.attribute.standard.JobOriginatingUserName.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
        34: .line 628
            invokeinterface javax.print.attribute.PrintJobAttributeSet.add:(Ljavax/print/attribute/Attribute;)Z
            pop
        35: .line 631
            goto 39
        36: .line 632
      StackMap locals: javax.print.attribute.standard.RequestingUserName
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
            new javax.print.attribute.standard.JobOriginatingUserName
            dup
            ldc ""
            aconst_null
            invokespecial javax.print.attribute.standard.JobOriginatingUserName.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
            invokeinterface javax.print.attribute.PrintJobAttributeSet.add:(Ljavax/print/attribute/Attribute;)Z
            pop
        end local 6 // javax.print.attribute.standard.RequestingUserName ruName
        37: .line 634
            goto 39
        38: .line 635
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
            new javax.print.attribute.standard.JobOriginatingUserName
            dup
            aload 5 /* userName */
            aconst_null
            invokespecial javax.print.attribute.standard.JobOriginatingUserName.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
            invokeinterface javax.print.attribute.PrintJobAttributeSet.add:(Ljavax/print/attribute/Attribute;)Z
            pop
        39: .line 640
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
            ldc Ljavax/print/attribute/standard/JobName;
            invokeinterface javax.print.attribute.PrintJobAttributeSet.get:(Ljava/lang/Class;)Ljavax/print/attribute/Attribute;
            ifnonnull 54
        40: .line 642
            aload 4 /* docSet */
            ifnull 46
            aload 4 /* docSet */
            ldc Ljavax/print/attribute/standard/DocumentName;
            invokeinterface javax.print.attribute.DocAttributeSet.get:(Ljava/lang/Class;)Ljavax/print/attribute/Attribute;
            ifnull 46
        41: .line 644
            aload 4 /* docSet */
            ldc Ljavax/print/attribute/standard/DocumentName;
            invokeinterface javax.print.attribute.DocAttributeSet.get:(Ljava/lang/Class;)Ljavax/print/attribute/Attribute;
            checkcast javax.print.attribute.standard.DocumentName
        42: .line 643
            astore 7 /* docName */
        start local 7 // javax.print.attribute.standard.DocumentName docName
        43: .line 645
            new javax.print.attribute.standard.JobName
            dup
            aload 7 /* docName */
            invokevirtual javax.print.attribute.standard.DocumentName.getValue:()Ljava/lang/String;
            aload 7 /* docName */
            invokevirtual javax.print.attribute.standard.DocumentName.getLocale:()Ljava/util/Locale;
            invokespecial javax.print.attribute.standard.JobName.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
            astore 6 /* jobName */
        start local 6 // javax.print.attribute.standard.JobName jobName
        44: .line 646
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
            aload 6 /* jobName */
            invokeinterface javax.print.attribute.PrintJobAttributeSet.add:(Ljavax/print/attribute/Attribute;)Z
            pop
        end local 7 // javax.print.attribute.standard.DocumentName docName
        45: .line 647
            goto 54
        end local 6 // javax.print.attribute.standard.JobName jobName
        46: .line 648
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "JPS Job:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* doc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* str */
        start local 7 // java.lang.String str
        47: .line 650
            aload 1 /* doc */
            invokeinterface javax.print.Doc.getPrintData:()Ljava/lang/Object;
            astore 8 /* printData */
        start local 8 // java.lang.Object printData
        48: .line 651
            aload 8 /* printData */
            instanceof java.net.URL
            ifeq 52
        49: .line 652
            aload 1 /* doc */
            invokeinterface javax.print.Doc.getPrintData:()Ljava/lang/Object;
            checkcast java.net.URL
            invokevirtual java.net.URL.toString:()Ljava/lang/String;
            astore 7 /* str */
        end local 8 // java.lang.Object printData
        50: .line 654
            goto 52
      StackMap locals: sun.print.Win32PrintJob javax.print.Doc javax.print.attribute.PrintRequestAttributeSet top javax.print.attribute.DocAttributeSet java.lang.String top java.lang.String
      StackMap stack: java.io.IOException
        51: pop
        52: .line 656
      StackMap locals:
      StackMap stack:
            new javax.print.attribute.standard.JobName
            dup
            aload 7 /* str */
            aconst_null
            invokespecial javax.print.attribute.standard.JobName.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
            astore 6 /* jobName */
        start local 6 // javax.print.attribute.standard.JobName jobName
        53: .line 657
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
            aload 6 /* jobName */
            invokeinterface javax.print.attribute.PrintJobAttributeSet.add:(Ljavax/print/attribute/Attribute;)Z
            pop
        end local 7 // java.lang.String str
        end local 6 // javax.print.attribute.standard.JobName jobName
        54: .line 661
      StackMap locals: sun.print.Win32PrintJob javax.print.Doc javax.print.attribute.PrintRequestAttributeSet top javax.print.attribute.DocAttributeSet java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
            invokestatic javax.print.attribute.AttributeSetUtilities.unmodifiableView:(Ljavax/print/attribute/PrintJobAttributeSet;)Ljavax/print/attribute/PrintJobAttributeSet;
            putfield sun.print.Win32PrintJob.jobAttrSet:Ljavax/print/attribute/PrintJobAttributeSet;
        55: .line 662
            return
        end local 5 // java.lang.String userName
        end local 4 // javax.print.attribute.DocAttributeSet docSet
        end local 2 // javax.print.attribute.PrintRequestAttributeSet reqSet
        end local 1 // javax.print.Doc doc
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   56     0       this  Lsun/print/Win32PrintJob;
            0   56     1        doc  Ljavax/print/Doc;
            0   56     2     reqSet  Ljavax/print/attribute/PrintRequestAttributeSet;
            5   11     3      attrs  [Ljavax/print/attribute/Attribute;
           14   22     3      attrs  [Ljavax/print/attribute/Attribute;
            6   11     4          i  I
           12   56     4     docSet  Ljavax/print/attribute/DocAttributeSet;
           15   22     5          i  I
           23   56     5   userName  Ljava/lang/String;
           29   37     6     ruName  Ljavax/print/attribute/standard/RequestingUserName;
           44   46     6    jobName  Ljavax/print/attribute/standard/JobName;
           53   54     6    jobName  Ljavax/print/attribute/standard/JobName;
           43   45     7    docName  Ljavax/print/attribute/standard/DocumentName;
           47   54     7        str  Ljava/lang/String;
           48   50     8  printData  Ljava/lang/Object;
      Exception table:
        from    to  target  type
          23    24      25  Class java.lang.SecurityException
          47    50      51  Class java.io.IOException
    MethodParameters:
        Name  Flags
      doc     
      reqSet  

  private void getAttributeValues(javax.print.DocFlavor);
    descriptor: (Ljavax/print/DocFlavor;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // sun.print.Win32PrintJob this
        start local 1 // javax.print.DocFlavor flavor
         0: .line 666
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.reqAttrSet:Ljavax/print/attribute/PrintRequestAttributeSet;
            ldc Ljavax/print/attribute/standard/Fidelity;
            invokeinterface javax.print.attribute.PrintRequestAttributeSet.get:(Ljava/lang/Class;)Ljavax/print/attribute/Attribute;
            getstatic javax.print.attribute.standard.Fidelity.FIDELITY_TRUE:Ljavax/print/attribute/standard/Fidelity;
            if_acmpne 3
         1: .line 667
            aload 0 /* this */
            iconst_1
            putfield sun.print.Win32PrintJob.fidelity:Z
         2: .line 668
            goto 4
         3: .line 669
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield sun.print.Win32PrintJob.fidelity:Z
         4: .line 673
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.reqAttrSet:Ljavax/print/attribute/PrintRequestAttributeSet;
            invokeinterface javax.print.attribute.PrintRequestAttributeSet.toArray:()[Ljavax/print/attribute/Attribute;
            astore 3 /* attrs */
        start local 3 // javax.print.attribute.Attribute[] attrs
         5: .line 674
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 51
         7: .line 675
      StackMap locals: sun.print.Win32PrintJob javax.print.DocFlavor top javax.print.attribute.Attribute[] int
      StackMap stack:
            aload 3 /* attrs */
            iload 4 /* i */
            aaload
            astore 5 /* attr */
        start local 5 // javax.print.attribute.Attribute attr
         8: .line 676
            aload 5 /* attr */
            invokeinterface javax.print.attribute.Attribute.getCategory:()Ljava/lang/Class;
            astore 2 /* category */
        start local 2 // java.lang.Class category
         9: .line 677
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.fidelity:Z
            ifeq 20
        10: .line 678
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            aload 2 /* category */
            invokevirtual sun.print.Win32PrintService.isAttributeCategorySupported:(Ljava/lang/Class;)Z
            ifne 15
        11: .line 679
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        12: .line 680
            new sun.print.PrintJobAttributeException
            dup
        13: .line 681
            new java.lang.StringBuilder
            dup
            ldc "unsupported category: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* category */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 2 /* category */
            aconst_null
        14: .line 680
            invokespecial sun.print.PrintJobAttributeException.<init>:(Ljava/lang/String;Ljava/lang/Class;Ljavax/print/attribute/Attribute;)V
            athrow
        15: .line 683
      StackMap locals: sun.print.Win32PrintJob javax.print.DocFlavor java.lang.Class javax.print.attribute.Attribute[] int javax.print.attribute.Attribute
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            aload 5 /* attr */
            aload 1 /* flavor */
            aconst_null
            invokevirtual sun.print.Win32PrintService.isAttributeValueSupported:(Ljavax/print/attribute/Attribute;Ljavax/print/DocFlavor;Ljavax/print/attribute/AttributeSet;)Z
            ifne 20
        16: .line 684
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        17: .line 685
            new sun.print.PrintJobAttributeException
            dup
        18: .line 686
            new java.lang.StringBuilder
            dup
            ldc "unsupported attribute: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* attr */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aconst_null
            aload 5 /* attr */
        19: .line 685
            invokespecial sun.print.PrintJobAttributeException.<init>:(Ljava/lang/String;Ljava/lang/Class;Ljavax/print/attribute/Attribute;)V
            athrow
        20: .line 689
      StackMap locals:
      StackMap stack:
            aload 2 /* category */
            ldc Ljavax/print/attribute/standard/Destination;
            if_acmpne 36
        21: .line 690
            aload 5 /* attr */
            checkcast javax.print.attribute.standard.Destination
            invokevirtual javax.print.attribute.standard.Destination.getURI:()Ljava/net/URI;
            astore 6 /* uri */
        start local 6 // java.net.URI uri
        22: .line 691
            ldc "file"
            aload 6 /* uri */
            invokevirtual java.net.URI.getScheme:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 25
        23: .line 692
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        24: .line 693
            new javax.print.PrintException
            dup
            ldc "Not a file: URI"
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 696
      StackMap locals: java.net.URI
      StackMap stack:
            aload 0 /* this */
            new java.io.File
            dup
            aload 6 /* uri */
            invokespecial java.io.File.<init>:(Ljava/net/URI;)V
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            putfield sun.print.Win32PrintJob.mDestination:Ljava/lang/String;
        26: .line 697
            goto 29
      StackMap locals:
      StackMap stack: java.lang.Exception
        27: astore 7 /* e */
        start local 7 // java.lang.Exception e
        28: .line 698
            new javax.print.PrintException
            dup
            aload 7 /* e */
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 7 // java.lang.Exception e
        29: .line 701
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 7 /* security */
        start local 7 // java.lang.SecurityManager security
        30: .line 702
            aload 7 /* security */
            ifnull 50
        31: .line 704
            aload 7 /* security */
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.mDestination:Ljava/lang/String;
            invokevirtual java.lang.SecurityManager.checkWrite:(Ljava/lang/String;)V
        32: .line 705
            goto 50
      StackMap locals: sun.print.Win32PrintJob javax.print.DocFlavor java.lang.Class javax.print.attribute.Attribute[] int javax.print.attribute.Attribute java.net.URI java.lang.SecurityManager
      StackMap stack: java.lang.SecurityException
        33: astore 8 /* se */
        start local 8 // java.lang.SecurityException se
        34: .line 706
            aload 0 /* this */
            bipush 103
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
        35: .line 707
            new javax.print.PrintException
            dup
            aload 8 /* se */
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 8 // java.lang.SecurityException se
        end local 7 // java.lang.SecurityManager security
        end local 6 // java.net.URI uri
        36: .line 711
      StackMap locals:
      StackMap stack:
            aload 2 /* category */
            ldc Ljavax/print/attribute/standard/JobName;
            if_acmpne 39
        37: .line 712
            aload 0 /* this */
            aload 5 /* attr */
            checkcast javax.print.attribute.standard.JobName
            invokevirtual javax.print.attribute.standard.JobName.getValue:()Ljava/lang/String;
            putfield sun.print.Win32PrintJob.jobName:Ljava/lang/String;
        38: .line 713
            goto 50
      StackMap locals:
      StackMap stack:
        39: aload 2 /* category */
            ldc Ljavax/print/attribute/standard/Copies;
            if_acmpne 42
        40: .line 714
            aload 0 /* this */
            aload 5 /* attr */
            checkcast javax.print.attribute.standard.Copies
            invokevirtual javax.print.attribute.standard.Copies.getValue:()I
            putfield sun.print.Win32PrintJob.copies:I
        41: .line 715
            goto 50
      StackMap locals:
      StackMap stack:
        42: aload 2 /* category */
            ldc Ljavax/print/attribute/standard/Media;
            if_acmpne 48
        43: .line 716
            aload 5 /* attr */
            instanceof javax.print.attribute.standard.MediaSizeName
            ifeq 50
        44: .line 717
            aload 0 /* this */
            aload 5 /* attr */
            checkcast javax.print.attribute.standard.MediaSizeName
            putfield sun.print.Win32PrintJob.mediaName:Ljavax/print/attribute/standard/MediaSizeName;
        45: .line 721
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.service:Lsun/print/Win32PrintService;
            aload 5 /* attr */
            aconst_null
            aconst_null
            invokevirtual sun.print.Win32PrintService.isAttributeValueSupported:(Ljavax/print/attribute/Attribute;Ljavax/print/DocFlavor;Ljavax/print/attribute/AttributeSet;)Z
            ifne 50
        46: .line 722
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.mediaName:Ljavax/print/attribute/standard/MediaSizeName;
            invokestatic javax.print.attribute.standard.MediaSize.getMediaSizeForName:(Ljavax/print/attribute/standard/MediaSizeName;)Ljavax/print/attribute/standard/MediaSize;
            putfield sun.print.Win32PrintJob.mediaSize:Ljavax/print/attribute/standard/MediaSize;
        47: .line 725
            goto 50
      StackMap locals:
      StackMap stack:
        48: aload 2 /* category */
            ldc Ljavax/print/attribute/standard/OrientationRequested;
            if_acmpne 50
        49: .line 726
            aload 0 /* this */
            aload 5 /* attr */
            checkcast javax.print.attribute.standard.OrientationRequested
            putfield sun.print.Win32PrintJob.orient:Ljavax/print/attribute/standard/OrientationRequested;
        end local 5 // javax.print.attribute.Attribute attr
        50: .line 674
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
        end local 2 // java.lang.Class category
      StackMap locals: sun.print.Win32PrintJob javax.print.DocFlavor top javax.print.attribute.Attribute[] int
      StackMap stack:
        51: iload 4 /* i */
            aload 3 /* attrs */
            arraylength
            if_icmplt 7
        end local 4 // int i
        52: .line 729
            return
        end local 3 // javax.print.attribute.Attribute[] attrs
        end local 1 // javax.print.DocFlavor flavor
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   53     0      this  Lsun/print/Win32PrintJob;
            0   53     1    flavor  Ljavax/print/DocFlavor;
            9   51     2  category  Ljava/lang/Class;
            5   53     3     attrs  [Ljavax/print/attribute/Attribute;
            6   52     4         i  I
            8   50     5      attr  Ljavax/print/attribute/Attribute;
           22   36     6       uri  Ljava/net/URI;
           28   29     7         e  Ljava/lang/Exception;
           30   36     7  security  Ljava/lang/SecurityManager;
           34   36     8        se  Ljava/lang/SecurityException;
      Exception table:
        from    to  target  type
          25    26      27  Class java.lang.Exception
          31    32      33  Class java.lang.SecurityException
    Exceptions:
      throws javax.print.PrintException
    MethodParameters:
        Name  Flags
      flavor  

  private native boolean startPrintRawData(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
             Name  Flags
      printerName  
      jobName      

  private native boolean printRawData(byte[], int);
    descriptor: ([BI)Z
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
       Name  Flags
      data   
      count  

  private native boolean endPrintRawData();
    descriptor: ()Z
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE

  public void cancel();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // sun.print.Win32PrintJob this
         0: .line 738
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         1: .line 739
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.printing:Z
            ifne 3
         2: .line 740
            new javax.print.PrintException
            dup
            ldc "Job is not yet submitted."
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 741
      StackMap locals: sun.print.Win32PrintJob
      StackMap stack:
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            ifnull 8
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.printReturned:Z
            ifne 8
         4: .line 742
            aload 0 /* this */
            getfield sun.print.Win32PrintJob.job:Ljava/awt/print/PrinterJob;
            invokevirtual java.awt.print.PrinterJob.cancel:()V
         5: .line 743
            aload 0 /* this */
            bipush 101
            invokevirtual sun.print.Win32PrintJob.notifyEvent:(I)V
         6: .line 744
            aload 1
            monitorexit
         7: return
         8: .line 746
      StackMap locals:
      StackMap stack:
            new javax.print.PrintException
            dup
            ldc "Job could not be cancelled."
            invokespecial javax.print.PrintException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 738
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
        10: athrow
        end local 0 // sun.print.Win32PrintJob this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/print/Win32PrintJob;
      Exception table:
        from    to  target  type
           1     7       9  any
           8    10       9  any
    Exceptions:
      throws javax.print.PrintException
}
SourceFile: "Win32PrintJob.java"
InnerClasses:
  public BYTE_ARRAY = javax.print.DocFlavor$BYTE_ARRAY of javax.print.DocFlavor
  public INPUT_STREAM = javax.print.DocFlavor$INPUT_STREAM of javax.print.DocFlavor
  public URL = javax.print.DocFlavor$URL of javax.print.DocFlavor