class purejavacomm.PureJavaSerialPort$2 extends java.io.InputStream
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: purejavacomm.PureJavaSerialPort$2
  super_class: java.io.InputStream
{
  private int[] im_Available;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  private byte[] im_Buffer;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

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

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

  private final jtermios.Pollfd[] im_ReadPollFD;
    descriptor: [Ljtermios/Pollfd;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private byte[] im_Nudge;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  private jtermios.JTermios$FDSet im_ReadFDSet;
    descriptor: Ljtermios/JTermios$FDSet;
    flags: (0x0002) ACC_PRIVATE

  private jtermios.TimeVal im_ReadTimeVal;
    descriptor: Ljtermios/TimeVal;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

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

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

  final purejavacomm.PureJavaSerialPort this$0;
    descriptor: Lpurejavacomm/PureJavaSerialPort;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(purejavacomm.PureJavaSerialPort);
    descriptor: (Lpurejavacomm/PureJavaSerialPort;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // purejavacomm.PureJavaSerialPort$2 this
         0: .line 683
            aload 0 /* this */
            aload 1
            putfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            aload 0 /* this */
            invokespecial java.io.InputStream.<init>:()V
         1: .line 685
            aload 0 /* this */
            iconst_1
            newarray 10
            putfield purejavacomm.PureJavaSerialPort$2.im_Available:[I
         2: .line 686
            aload 0 /* this */
            sipush 2048
            newarray 8
            putfield purejavacomm.PureJavaSerialPort$2.im_Buffer:[B
         3: .line 688
            aload 0 /* this */
            iconst_m1
            putfield purejavacomm.PureJavaSerialPort$2.im_VTIME:I
         4: .line 689
            aload 0 /* this */
            iconst_m1
            putfield purejavacomm.PureJavaSerialPort$2.im_VMIN:I
         5: .line 690
            aload 0 /* this */
            iconst_2
            anewarray jtermios.Pollfd
            dup
            iconst_0
            new jtermios.Pollfd
            dup
            invokespecial jtermios.Pollfd.<init>:()V
            aastore
            dup
            iconst_1
            new jtermios.Pollfd
            dup
            invokespecial jtermios.Pollfd.<init>:()V
            aastore
            putfield purejavacomm.PureJavaSerialPort$2.im_ReadPollFD:[Ljtermios/Pollfd;
         6: .line 703
            aload 0 /* this */
            invokestatic jtermios.JTermios.newFDSet:()Ljtermios/JTermios$FDSet;
            putfield purejavacomm.PureJavaSerialPort$2.im_ReadFDSet:Ljtermios/JTermios$FDSet;
         7: .line 704
            aload 0 /* this */
            new jtermios.TimeVal
            dup
            invokespecial jtermios.TimeVal.<init>:()V
            putfield purejavacomm.PureJavaSerialPort$2.im_ReadTimeVal:Ljtermios/TimeVal;
         8: .line 705
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadPollFD:[Ljtermios/Pollfd;
            iconst_0
            aaload
            aload 1
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            putfield jtermios.Pollfd.fd:I
         9: .line 706
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadPollFD:[Ljtermios/Pollfd;
            iconst_0
            aaload
            getstatic jtermios.JTermios.POLLIN:S
            putfield jtermios.Pollfd.events:S
        10: .line 707
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadPollFD:[Ljtermios/Pollfd;
            iconst_1
            aaload
            aload 1
            getfield purejavacomm.PureJavaSerialPort.m_PipeRdFD:I
            putfield jtermios.Pollfd.fd:I
        11: .line 708
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadPollFD:[Ljtermios/Pollfd;
            iconst_1
            aaload
            getstatic jtermios.JTermios.POLLIN:S
            putfield jtermios.Pollfd.events:S
        12: .line 709
            aload 0 /* this */
            aload 1
            getfield purejavacomm.PureJavaSerialPort.m_HaveNudgePipe:Z
            ifeq 13
            iconst_2
            goto 14
      StackMap locals: purejavacomm.PureJavaSerialPort$2 purejavacomm.PureJavaSerialPort
      StackMap stack: purejavacomm.PureJavaSerialPort$2
        13: iconst_1
      StackMap locals: purejavacomm.PureJavaSerialPort$2 purejavacomm.PureJavaSerialPort
      StackMap stack: purejavacomm.PureJavaSerialPort$2 int
        14: putfield purejavacomm.PureJavaSerialPort$2.im_PollFDn:I
        15: .line 710
            aload 0 /* this */
            iconst_1
            newarray 8
            putfield purejavacomm.PureJavaSerialPort$2.im_Nudge:[B
        16: .line 683
            return
        end local 0 // purejavacomm.PureJavaSerialPort$2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Lpurejavacomm/PureJavaSerialPort$2;
    MethodParameters:
        Name  Flags
      this$0  final

  public final int available();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // purejavacomm.PureJavaSerialPort$2 this
         0: .line 715
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            ifge 2
         1: .line 716
            iconst_0
            ireturn
         2: .line 717
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            invokevirtual purejavacomm.PureJavaSerialPort.checkState:()V
         3: .line 718
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            getstatic jtermios.JTermios.FIONREAD:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Available:[I
            invokestatic jtermios.JTermios.ioctl:(II[I)I
            ifge 7
         4: .line 719
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            invokevirtual purejavacomm.PureJavaSerialPort.close:()V
         5: .line 720
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokestatic com.sun.jna.Native.getLastError:()I
            invokevirtual java.io.PrintStream.println:(I)V
         6: .line 721
            new java.io.IOException
            dup
            invokespecial java.io.IOException.<init>:()V
            athrow
         7: .line 723
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Available:[I
            iconst_0
            iaload
            ireturn
        end local 0 // purejavacomm.PureJavaSerialPort$2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lpurejavacomm/PureJavaSerialPort$2;
    Exceptions:
      throws java.io.IOException

  public final int read();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // purejavacomm.PureJavaSerialPort$2 this
         0: .line 728
            iconst_1
            newarray 8
            astore 1 /* buf */
        start local 1 // byte[] buf
         1: .line 729
            aload 0 /* this */
            aload 1 /* buf */
            iconst_0
            iconst_1
            invokevirtual purejavacomm.PureJavaSerialPort$2.read:([BII)I
            istore 2 /* n */
        start local 2 // int n
         2: .line 731
            iload 2 /* n */
            ifle 3
            aload 1 /* buf */
            iconst_0
            baload
            sipush 255
            iand
            goto 4
      StackMap locals: byte[] int
      StackMap stack:
         3: iconst_m1
      StackMap locals:
      StackMap stack: int
         4: ireturn
        end local 2 // int n
        end local 1 // byte[] buf
        end local 0 // purejavacomm.PureJavaSerialPort$2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lpurejavacomm/PureJavaSerialPort$2;
            1    5     1   buf  [B
            2    5     2     n  I
    Exceptions:
      throws java.io.IOException

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // purejavacomm.PureJavaSerialPort$2 this
         0: .line 736
            aload 0 /* this */
            invokespecial java.io.InputStream.close:()V
         1: .line 737
            return
        end local 0 // purejavacomm.PureJavaSerialPort$2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lpurejavacomm/PureJavaSerialPort$2;
    Exceptions:
      throws java.io.IOException

  private void throwStreamClosedException();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // purejavacomm.PureJavaSerialPort$2 this
         0: .line 740
            new java.io.IOException
            dup
            ldc "Stream Closed"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // purejavacomm.PureJavaSerialPort$2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lpurejavacomm/PureJavaSerialPort$2;
    Exceptions:
      throws java.io.IOException

  public final int read(byte[], int, int);
    descriptor: ([BII)I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=7, locals=15, args_size=4
        start local 0 // purejavacomm.PureJavaSerialPort$2 this
        start local 1 // byte[] buffer
        start local 2 // int offset
        start local 3 // int length
         0: .line 746
            aload 1 /* buffer */
            ifnonnull 2
         1: .line 747
            new java.lang.IllegalArgumentException
            dup
            ldc "buffer null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 748
      StackMap locals:
      StackMap stack:
            iload 3 /* length */
            ifne 4
         3: .line 749
            iconst_0
            ireturn
         4: .line 750
      StackMap locals:
      StackMap stack:
            iload 2 /* offset */
            iflt 5
            iload 3 /* length */
            iflt 5
            iload 2 /* offset */
            iload 3 /* length */
            iadd
            aload 1 /* buffer */
            arraylength
            if_icmple 6
         5: .line 751
      StackMap locals:
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "buffer.length "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* buffer */
            arraylength
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " offset "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* offset */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " length "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* length */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 752
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            ifge 8
         7: .line 753
            aload 0 /* this */
            invokevirtual purejavacomm.PureJavaSerialPort$2.throwStreamClosedException:()V
         8: .line 755
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.RAW_READ_MODE:Z
            ifeq 41
         9: .line 756
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_TimeoutThresholdChanged:Z
            ifeq 30
        10: .line 757
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ThresholdTimeoutLock:Ljava/lang/Object;
            dup
            astore 4
            monitorenter
        11: .line 758
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ReceiveTimeoutEnabled:Z
            ifeq 12
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ReceiveTimeoutVTIME:I
            goto 13
      StackMap locals: java.lang.Object
      StackMap stack:
        12: iconst_0
      StackMap locals:
      StackMap stack: int
        13: istore 5 /* vtime */
        start local 5 // int vtime
        14: .line 759
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ReceiveThresholdEnabled:Z
            ifeq 15
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ReceiveThresholdValue:I
            goto 16
      StackMap locals: int
      StackMap stack:
        15: iconst_1
      StackMap locals:
      StackMap stack: int
        16: istore 6 /* vmin */
        start local 6 // int vmin
        17: .line 760
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_Termios:Ljtermios/Termios;
            dup
            astore 7
            monitorenter
        18: .line 761
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_Termios:Ljtermios/Termios;
            getfield jtermios.Termios.c_cc:[B
            getstatic jtermios.JTermios.VTIME:I
            iload 5 /* vtime */
            i2b
            bastore
        19: .line 762
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_Termios:Ljtermios/Termios;
            getfield jtermios.Termios.c_cc:[B
            getstatic jtermios.JTermios.VMIN:I
            iload 6 /* vmin */
            i2b
            bastore
        20: .line 763
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            getstatic jtermios.JTermios.TCSANOW:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_Termios:Ljtermios/Termios;
            invokestatic jtermios.JTermios.tcsetattr:(IILjtermios/Termios;)I
            invokevirtual purejavacomm.PureJavaSerialPort.checkReturnCode:(I)V
        21: .line 760
            aload 7
            monitorexit
        22: goto 25
      StackMap locals: purejavacomm.PureJavaSerialPort$2 byte[] int int java.lang.Object int int jtermios.Termios
      StackMap stack: java.lang.Throwable
        23: aload 7
            monitorexit
        24: athrow
        25: .line 765
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            iconst_0
            putfield purejavacomm.PureJavaSerialPort.m_TimeoutThresholdChanged:Z
        end local 6 // int vmin
        end local 5 // int vtime
        26: .line 757
            aload 4
            monitorexit
        27: goto 30
      StackMap locals: purejavacomm.PureJavaSerialPort$2 byte[] int int java.lang.Object
      StackMap stack: java.lang.Throwable
        28: aload 4
            monitorexit
        29: athrow
        30: .line 769
      StackMap locals:
      StackMap stack:
            iload 2 /* offset */
            ifle 38
        31: .line 770
            iload 3 /* length */
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Buffer:[B
            arraylength
            if_icmpge 34
        32: .line 771
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Buffer:[B
            iload 3 /* length */
            invokestatic jtermios.JTermios.read:(I[BI)I
            istore 4 /* bytesRead */
        start local 4 // int bytesRead
        33: goto 35
        end local 4 // int bytesRead
        34: .line 773
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Buffer:[B
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Buffer:[B
            arraylength
            invokestatic jtermios.JTermios.read:(I[BI)I
            istore 4 /* bytesRead */
        start local 4 // int bytesRead
        35: .line 774
      StackMap locals: int
      StackMap stack:
            iload 4 /* bytesRead */
            ifle 39
        36: .line 775
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Buffer:[B
            iconst_0
            aload 1 /* buffer */
            iload 2 /* offset */
            iload 4 /* bytesRead */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        37: .line 776
            goto 39
        end local 4 // int bytesRead
        38: .line 777
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            aload 1 /* buffer */
            iload 3 /* length */
            invokestatic jtermios.JTermios.read:(I[BI)I
            istore 4 /* bytesRead */
        start local 4 // int bytesRead
        39: .line 778
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            iconst_0
            putfield purejavacomm.PureJavaSerialPort.m_DataAvailableNotified:Z
        40: .line 779
            iload 4 /* bytesRead */
            ireturn
        end local 4 // int bytesRead
        41: .line 783
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_TimeoutThresholdChanged:Z
            ifeq 54
        42: .line 784
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ThresholdTimeoutLock:Ljava/lang/Object;
            dup
            astore 4
            monitorenter
        43: .line 786
            aload 0 /* this */
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ReceiveTimeoutEnabled:Z
            putfield purejavacomm.PureJavaSerialPort$2.im_ReceiveTimeoutEnabled:Z
        44: .line 787
            aload 0 /* this */
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ReceiveTimeoutValue:I
            putfield purejavacomm.PureJavaSerialPort$2.im_ReceiveTimeoutValue:I
        45: .line 788
            aload 0 /* this */
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ReceiveThresholdEnabled:Z
            putfield purejavacomm.PureJavaSerialPort$2.im_ReceiveThresholdEnabled:Z
        46: .line 789
            aload 0 /* this */
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ReceiveThresholdValue:I
            putfield purejavacomm.PureJavaSerialPort$2.im_ReceiveThresholdValue:I
        47: .line 790
            aload 0 /* this */
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_PollingReadMode:Z
            putfield purejavacomm.PureJavaSerialPort$2.im_PollingReadMode:Z
        48: .line 791
            aload 0 /* this */
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ReceiveTimeoutVTIME:I
            putfield purejavacomm.PureJavaSerialPort$2.im_ReceiveTimeoutVTIME:I
        49: .line 792
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            iconst_0
            putfield purejavacomm.PureJavaSerialPort.m_TimeoutThresholdChanged:Z
        50: .line 784
            aload 4
            monitorexit
        51: goto 54
      StackMap locals: purejavacomm.PureJavaSerialPort$2 byte[] int int java.lang.Object
      StackMap stack: java.lang.Throwable
        52: aload 4
            monitorexit
        53: athrow
        54: .line 796
      StackMap locals:
      StackMap stack:
            iload 3 /* length */
            istore 4 /* bytesLeft */
        start local 4 // int bytesLeft
        55: .line 797
            iconst_0
            istore 5 /* bytesReceived */
        start local 5 // int bytesReceived
        56: .line 807
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_PollingReadMode:Z
            ifeq 61
        57: .line 808
            iconst_0
            istore 6 /* minBytesRequired */
        start local 6 // int minBytesRequired
        58: .line 809
            iconst_0
            istore 7 /* vmin */
        start local 7 // int vmin
        59: .line 810
            iconst_0
            istore 8 /* vtime */
        start local 8 // int vtime
        60: .line 811
            goto 75
        end local 8 // int vtime
        end local 7 // int vmin
        end local 6 // int minBytesRequired
        61: .line 812
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReceiveThresholdEnabled:Z
            ifeq 64
        62: .line 813
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReceiveThresholdValue:I
            istore 6 /* minBytesRequired */
        start local 6 // int minBytesRequired
        63: goto 65
        end local 6 // int minBytesRequired
        64: .line 815
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 6 /* minBytesRequired */
        start local 6 // int minBytesRequired
        65: .line 816
      StackMap locals: int
      StackMap stack:
            iload 6 /* minBytesRequired */
            iload 4 /* bytesLeft */
            if_icmple 67
        66: .line 817
            iload 4 /* bytesLeft */
            istore 6 /* minBytesRequired */
        67: .line 818
      StackMap locals:
      StackMap stack:
            iload 6 /* minBytesRequired */
            sipush 255
            if_icmpgt 70
        68: .line 819
            iload 6 /* minBytesRequired */
            istore 7 /* vmin */
        start local 7 // int vmin
        69: goto 71
        end local 7 // int vmin
        70: .line 821
      StackMap locals:
      StackMap stack:
            sipush 255
            istore 7 /* vmin */
        start local 7 // int vmin
        71: .line 824
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReceiveTimeoutEnabled:Z
            ifeq 74
        72: .line 825
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReceiveTimeoutVTIME:I
            istore 8 /* vtime */
        start local 8 // int vtime
        73: goto 75
        end local 8 // int vtime
        74: .line 827
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* vtime */
        start local 8 // int vtime
        75: .line 829
      StackMap locals: int
      StackMap stack:
            iload 7 /* vmin */
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_VMIN:I
            if_icmpne 76
            iload 8 /* vtime */
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_VTIME:I
            if_icmpeq 86
        76: .line 831
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 7 /* vmin */
            putfield purejavacomm.PureJavaSerialPort$2.im_VMIN:I
        77: .line 832
            aload 0 /* this */
            iload 8 /* vtime */
            putfield purejavacomm.PureJavaSerialPort$2.im_VTIME:I
        78: .line 834
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_Termios:Ljtermios/Termios;
            dup
            astore 9
            monitorenter
        79: .line 835
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_Termios:Ljtermios/Termios;
            getfield jtermios.Termios.c_cc:[B
            getstatic jtermios.JTermios.VTIME:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_VTIME:I
            i2b
            bastore
        80: .line 836
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_Termios:Ljtermios/Termios;
            getfield jtermios.Termios.c_cc:[B
            getstatic jtermios.JTermios.VMIN:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_VMIN:I
            i2b
            bastore
        81: .line 837
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            getstatic jtermios.JTermios.TCSANOW:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_Termios:Ljtermios/Termios;
            invokestatic jtermios.JTermios.tcsetattr:(IILjtermios/Termios;)I
            invokevirtual purejavacomm.PureJavaSerialPort.checkReturnCode:(I)V
        82: .line 834
            aload 9
            monitorexit
        83: goto 86
      StackMap locals: purejavacomm.PureJavaSerialPort$2 byte[] int int int int int int int jtermios.Termios
      StackMap stack: java.lang.Throwable
        84: aload 9
            monitorexit
        85: athrow
        86: .line 844
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 9 /* dataAvailable */
        start local 9 // boolean dataAvailable
        87: .line 845
            iconst_0
            istore 10 /* timedout */
        start local 10 // boolean timedout
        88: .line 846
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_PollingReadMode:Z
            ifne 127
        89: .line 852
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReceiveTimeoutEnabled:Z
            ifeq 90
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReceiveTimeoutValue:I
            goto 91
      StackMap locals: int int
      StackMap stack:
        90: ldc 2147483647
      StackMap locals:
      StackMap stack: int
        91: istore 12 /* timeoutValue */
        start local 12 // int timeoutValue
        92: .line 853
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.USE_POLL:Z
            ifeq 105
        93: .line 855
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadPollFD:[Ljtermios/Pollfd;
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_PollFDn:I
            iload 12 /* timeoutValue */
            invokestatic jtermios.JTermios.poll:([Ljtermios/Pollfd;II)I
            istore 11 /* n */
        start local 11 // int n
        94: .line 856
            iload 11 /* n */
            iflt 95
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            ifge 96
        95: .line 857
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual purejavacomm.PureJavaSerialPort$2.throwStreamClosedException:()V
        96: .line 859
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadPollFD:[Ljtermios/Pollfd;
            iconst_1
            aaload
            getfield jtermios.Pollfd.revents:S
            getstatic jtermios.JTermios.POLLIN:S
            iand
            ifeq 98
        97: .line 860
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_PipeRdFD:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Nudge:[B
            iconst_1
            invokestatic jtermios.JTermios.read:(I[BI)I
            pop
        98: .line 861
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadPollFD:[Ljtermios/Pollfd;
            iconst_0
            aaload
            getfield jtermios.Pollfd.revents:S
            istore 13 /* re */
        start local 13 // int re
        99: .line 862
            iload 13 /* re */
            getstatic jtermios.JTermios.POLLNVAL:S
            iand
            ifeq 101
       100: .line 863
            aload 0 /* this */
            invokevirtual purejavacomm.PureJavaSerialPort$2.throwStreamClosedException:()V
       101: .line 864
      StackMap locals: int
      StackMap stack:
            iload 13 /* re */
            getstatic jtermios.JTermios.POLLIN:S
            iand
            ifeq 102
            iconst_1
            goto 103
      StackMap locals:
      StackMap stack:
       102: iconst_0
      StackMap locals:
      StackMap stack: int
       103: istore 9 /* dataAvailable */
        end local 13 // int re
       104: .line 866
            goto 125
        end local 11 // int n
       105: .line 868
      StackMap locals: purejavacomm.PureJavaSerialPort$2 byte[] int int int int int int int int int top int
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadFDSet:Ljtermios/JTermios$FDSet;
            invokestatic jtermios.JTermios.FD_ZERO:(Ljtermios/JTermios$FDSet;)V
       106: .line 869
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadFDSet:Ljtermios/JTermios$FDSet;
            invokestatic jtermios.JTermios.FD_SET:(ILjtermios/JTermios$FDSet;)V
       107: .line 870
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            istore 13 /* maxFD */
        start local 13 // int maxFD
       108: .line 871
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_HaveNudgePipe:Z
            ifeq 112
       109: .line 872
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_PipeRdFD:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadFDSet:Ljtermios/JTermios$FDSet;
            invokestatic jtermios.JTermios.FD_SET:(ILjtermios/JTermios$FDSet;)V
       110: .line 873
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_PipeRdFD:I
            iload 13 /* maxFD */
            if_icmple 112
       111: .line 874
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_PipeRdFD:I
            istore 13 /* maxFD */
       112: .line 876
      StackMap locals: int
      StackMap stack:
            iload 12 /* timeoutValue */
            sipush 1000
            if_icmplt 117
       113: .line 877
            iload 12 /* timeoutValue */
            sipush 1000
            idiv
            istore 14 /* t */
        start local 14 // int t
       114: .line 878
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadTimeVal:Ljtermios/TimeVal;
            iload 14 /* t */
            i2l
            putfield jtermios.TimeVal.tv_sec:J
       115: .line 879
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadTimeVal:Ljtermios/TimeVal;
            iload 12 /* timeoutValue */
            iload 14 /* t */
            sipush 1000
            imul
            isub
            sipush 1000
            imul
            i2l
            putfield jtermios.TimeVal.tv_usec:J
        end local 14 // int t
       116: .line 880
            goto 119
       117: .line 881
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadTimeVal:Ljtermios/TimeVal;
            lconst_0
            putfield jtermios.TimeVal.tv_sec:J
       118: .line 882
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadTimeVal:Ljtermios/TimeVal;
            iload 12 /* timeoutValue */
            sipush 1000
            imul
            i2l
            putfield jtermios.TimeVal.tv_usec:J
       119: .line 884
      StackMap locals:
      StackMap stack:
            iload 13 /* maxFD */
            iconst_1
            iadd
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadFDSet:Ljtermios/JTermios$FDSet;
            aconst_null
            aconst_null
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadTimeVal:Ljtermios/TimeVal;
            invokestatic jtermios.JTermios.select:(ILjtermios/JTermios$FDSet;Ljtermios/JTermios$FDSet;Ljtermios/JTermios$FDSet;Ljtermios/TimeVal;)I
            istore 11 /* n */
        start local 11 // int n
       120: .line 885
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            ifge 122
       121: .line 887
            aload 0 /* this */
            invokevirtual purejavacomm.PureJavaSerialPort$2.throwStreamClosedException:()V
       122: .line 888
      StackMap locals: purejavacomm.PureJavaSerialPort$2 byte[] int int int int int int int int int int int int
      StackMap stack:
            iload 11 /* n */
            ifge 124
       123: .line 889
            new java.io.IOException
            dup
            ldc "select() < 0 , errno()=%d"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            invokestatic jtermios.JTermios.errno:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
       124: .line 890
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_ReadFDSet:Ljtermios/JTermios$FDSet;
            invokestatic jtermios.JTermios.FD_ISSET:(ILjtermios/JTermios$FDSet;)Z
            istore 9 /* dataAvailable */
        end local 13 // int maxFD
       125: .line 892
      StackMap locals:
      StackMap stack:
            iload 11 /* n */
            ifne 127
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_ReceiveTimeoutEnabled:Z
            ifeq 127
       126: .line 893
            iconst_1
            istore 10 /* timedout */
        end local 12 // int timeoutValue
        end local 11 // int n
       127: .line 896
      StackMap locals:
      StackMap stack:
            iload 10 /* timedout */
            ifeq 129
       128: .line 897
            goto 151
       129: .line 901
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 11 /* bytesRead */
        start local 11 // int bytesRead
       130: .line 902
            iload 9 /* dataAvailable */
            ifne 131
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_PollingReadMode:Z
            ifeq 141
       131: .line 903
      StackMap locals: int
      StackMap stack:
            iload 2 /* offset */
            ifle 138
       132: .line 904
            iload 4 /* bytesLeft */
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Buffer:[B
            arraylength
            if_icmpge 134
       133: .line 905
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Buffer:[B
            iload 4 /* bytesLeft */
            invokestatic jtermios.JTermios.read:(I[BI)I
            istore 11 /* bytesRead */
            goto 135
       134: .line 907
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Buffer:[B
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Buffer:[B
            arraylength
            invokestatic jtermios.JTermios.read:(I[BI)I
            istore 11 /* bytesRead */
       135: .line 908
      StackMap locals:
      StackMap stack:
            iload 11 /* bytesRead */
            ifle 139
       136: .line 909
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.im_Buffer:[B
            iconst_0
            aload 1 /* buffer */
            iload 2 /* offset */
            iload 11 /* bytesRead */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
       137: .line 910
            goto 139
       138: .line 912
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            getfield purejavacomm.PureJavaSerialPort.m_FD:I
            aload 1 /* buffer */
            iload 4 /* bytesLeft */
            invokestatic jtermios.JTermios.read:(I[BI)I
            istore 11 /* bytesRead */
       139: .line 914
      StackMap locals:
      StackMap stack:
            iload 11 /* bytesRead */
            ifne 141
       140: .line 915
            iconst_1
            istore 10 /* timedout */
       141: .line 921
      StackMap locals:
      StackMap stack:
            iload 11 /* bytesRead */
            ifge 143
       142: .line 922
            new java.io.IOException
            dup
            ldc "read() < 0 , errno()=%d"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            invokestatic jtermios.JTermios.errno:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
       143: .line 924
      StackMap locals:
      StackMap stack:
            iload 5 /* bytesReceived */
            iload 11 /* bytesRead */
            iadd
            istore 5 /* bytesReceived */
       144: .line 926
            iload 5 /* bytesReceived */
            iload 6 /* minBytesRequired */
            if_icmplt 146
       145: .line 927
            goto 151
       146: .line 929
      StackMap locals:
      StackMap stack:
            iload 10 /* timedout */
            ifeq 148
       147: .line 930
            goto 151
       148: .line 935
      StackMap locals:
      StackMap stack:
            iload 2 /* offset */
            iload 11 /* bytesRead */
            iadd
            istore 2 /* offset */
       149: .line 936
            iload 4 /* bytesLeft */
            iload 11 /* bytesRead */
            isub
            istore 4 /* bytesLeft */
        end local 11 // int bytesRead
        end local 10 // boolean timedout
        end local 9 // boolean dataAvailable
        end local 8 // int vtime
        end local 7 // int vmin
        end local 6 // int minBytesRequired
       150: .line 803
            goto 56
        start local 6 // int minBytesRequired
       151: .line 939
      StackMap locals: purejavacomm.PureJavaSerialPort$2 byte[] int int int int int
      StackMap stack:
            aload 0 /* this */
            getfield purejavacomm.PureJavaSerialPort$2.this$0:Lpurejavacomm/PureJavaSerialPort;
            iconst_0
            putfield purejavacomm.PureJavaSerialPort.m_DataAvailableNotified:Z
       152: .line 940
            iload 5 /* bytesReceived */
            ireturn
        end local 6 // int minBytesRequired
        end local 5 // int bytesReceived
        end local 4 // int bytesLeft
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] buffer
        end local 0 // purejavacomm.PureJavaSerialPort$2 this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0  153     0              this  Lpurejavacomm/PureJavaSerialPort$2;
            0  153     1            buffer  [B
            0  153     2            offset  I
            0  153     3            length  I
           14   26     5             vtime  I
           17   26     6              vmin  I
           33   34     4         bytesRead  I
           35   38     4         bytesRead  I
           39   41     4         bytesRead  I
           55  153     4         bytesLeft  I
           56  153     5     bytesReceived  I
           58   61     6  minBytesRequired  I
           63   64     6  minBytesRequired  I
           65  150     6  minBytesRequired  I
          151  153     6  minBytesRequired  I
           59   61     7              vmin  I
           69   70     7              vmin  I
           71  150     7              vmin  I
           60   61     8             vtime  I
           73   74     8             vtime  I
           75  150     8             vtime  I
           87  150     9     dataAvailable  Z
           88  150    10          timedout  Z
           94  105    11                 n  I
          120  127    11                 n  I
           92  127    12      timeoutValue  I
           99  104    13                re  I
          108  125    13             maxFD  I
          114  116    14                 t  I
          130  150    11         bytesRead  I
      Exception table:
        from    to  target  type
          18    22      23  any
          23    24      23  any
          11    27      28  any
          28    29      28  any
          43    51      52  any
          52    53      52  any
          79    83      84  any
          84    85      84  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      buffer  
      offset  
      length  
}
SourceFile: "PureJavaSerialPort.java"
EnclosingMethod: purejavacomm.PureJavaSerialPort.getInputStream:()Ljava/io/InputStream;
NestHost: purejavacomm.PureJavaSerialPort
InnerClasses:
  public abstract FDSet = jtermios.JTermios$FDSet of jtermios.JTermios
  purejavacomm.PureJavaSerialPort$2