public class com.googlecode.lanterna.terminal.DefaultTerminalFactory implements com.googlecode.lanterna.terminal.TerminalFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.googlecode.lanterna.terminal.DefaultTerminalFactory
  super_class: java.lang.Object
{
  private static final java.io.OutputStream DEFAULT_OUTPUT_STREAM;
    descriptor: Ljava/io/OutputStream;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.io.InputStream DEFAULT_INPUT_STREAM;
    descriptor: Ljava/io/InputStream;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.nio.charset.Charset DEFAULT_CHARSET;
    descriptor: Ljava/nio/charset/Charset;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final java.io.OutputStream outputStream;
    descriptor: Ljava/io/OutputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.io.InputStream inputStream;
    descriptor: Ljava/io/InputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.nio.charset.Charset charset;
    descriptor: Ljava/nio/charset/Charset;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.googlecode.lanterna.TerminalSize initialTerminalSize;
    descriptor: Lcom/googlecode/lanterna/TerminalSize;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

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

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

  private final java.util.EnumSet<com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger> autoCloseTriggers;
    descriptor: Ljava/util/EnumSet;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/EnumSet<Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorAutoCloseTrigger;>;

  private com.googlecode.lanterna.terminal.swing.TerminalEmulatorColorConfiguration colorConfiguration;
    descriptor: Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorColorConfiguration;
    flags: (0x0002) ACC_PRIVATE

  private com.googlecode.lanterna.terminal.swing.TerminalEmulatorDeviceConfiguration deviceConfiguration;
    descriptor: Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorDeviceConfiguration;
    flags: (0x0002) ACC_PRIVATE

  private com.googlecode.lanterna.terminal.swing.AWTTerminalFontConfiguration fontConfiguration;
    descriptor: Lcom/googlecode/lanterna/terminal/swing/AWTTerminalFontConfiguration;
    flags: (0x0002) ACC_PRIVATE

  private com.googlecode.lanterna.terminal.MouseCaptureMode mouseCaptureMode;
    descriptor: Lcom/googlecode/lanterna/terminal/MouseCaptureMode;
    flags: (0x0002) ACC_PRIVATE

  private com.googlecode.lanterna.terminal.ansi.UnixLikeTerminal$CtrlCBehaviour unixTerminalCtrlCBehaviour;
    descriptor: Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 46
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            putstatic com.googlecode.lanterna.terminal.DefaultTerminalFactory.DEFAULT_OUTPUT_STREAM:Ljava/io/OutputStream;
         1: .line 47
            getstatic java.lang.System.in:Ljava/io/InputStream;
            putstatic com.googlecode.lanterna.terminal.DefaultTerminalFactory.DEFAULT_INPUT_STREAM:Ljava/io/InputStream;
         2: .line 48
            invokestatic java.nio.charset.Charset.defaultCharset:()Ljava/nio/charset/Charset;
            putstatic com.googlecode.lanterna.terminal.DefaultTerminalFactory.DEFAULT_CHARSET:Ljava/nio/charset/Charset;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
         0: .line 73
            aload 0 /* this */
            getstatic com.googlecode.lanterna.terminal.DefaultTerminalFactory.DEFAULT_OUTPUT_STREAM:Ljava/io/OutputStream;
            getstatic com.googlecode.lanterna.terminal.DefaultTerminalFactory.DEFAULT_INPUT_STREAM:Ljava/io/InputStream;
            getstatic com.googlecode.lanterna.terminal.DefaultTerminalFactory.DEFAULT_CHARSET:Ljava/nio/charset/Charset;
            invokespecial com.googlecode.lanterna.terminal.DefaultTerminalFactory.<init>:(Ljava/io/OutputStream;Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
         1: .line 74
            return
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;

  public void <init>(java.io.OutputStream, java.io.InputStream, java.nio.charset.Charset);
    descriptor: (Ljava/io/OutputStream;Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // java.io.OutputStream outputStream
        start local 2 // java.io.InputStream inputStream
        start local 3 // java.nio.charset.Charset charset
         0: .line 83
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 84
            aload 0 /* this */
            aload 1 /* outputStream */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.outputStream:Ljava/io/OutputStream;
         2: .line 85
            aload 0 /* this */
            aload 2 /* inputStream */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputStream:Ljava/io/InputStream;
         3: .line 86
            aload 0 /* this */
            aload 3 /* charset */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.charset:Ljava/nio/charset/Charset;
         4: .line 88
            aload 0 /* this */
            iconst_0
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.forceTextTerminal:Z
         5: .line 89
            aload 0 /* this */
            iconst_0
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.preferTerminalEmulator:Z
         6: .line 90
            aload 0 /* this */
            iconst_0
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.forceAWTOverSwing:Z
         7: .line 92
            aload 0 /* this */
            iconst_m1
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.telnetPort:I
         8: .line 93
            aload 0 /* this */
            iconst_m1
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputTimeout:I
         9: .line 94
            aload 0 /* this */
            iconst_1
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.autoOpenTerminalFrame:Z
        10: .line 95
            aload 0 /* this */
            aconst_null
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.title:Ljava/lang/String;
        11: .line 96
            aload 0 /* this */
            getstatic com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger.CloseOnExitPrivateMode:Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorAutoCloseTrigger;
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.autoCloseTriggers:Ljava/util/EnumSet;
        12: .line 97
            aload 0 /* this */
            aconst_null
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.mouseCaptureMode:Lcom/googlecode/lanterna/terminal/MouseCaptureMode;
        13: .line 98
            aload 0 /* this */
            getstatic com.googlecode.lanterna.terminal.ansi.UnixLikeTerminal$CtrlCBehaviour.CTRL_C_KILLS_APPLICATION:Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.unixTerminalCtrlCBehaviour:Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;
        14: .line 101
            aload 0 /* this */
            aconst_null
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.colorConfiguration:Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorColorConfiguration;
        15: .line 102
            aload 0 /* this */
            aconst_null
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.deviceConfiguration:Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorDeviceConfiguration;
        16: .line 103
            aload 0 /* this */
            aconst_null
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.fontConfiguration:Lcom/googlecode/lanterna/terminal/swing/AWTTerminalFontConfiguration;
        17: .line 104
            return
        end local 3 // java.nio.charset.Charset charset
        end local 2 // java.io.InputStream inputStream
        end local 1 // java.io.OutputStream outputStream
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0          this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0   18     1  outputStream  Ljava/io/OutputStream;
            0   18     2   inputStream  Ljava/io/InputStream;
            0   18     3       charset  Ljava/nio/charset/Charset;
    MethodParameters:
              Name  Flags
      outputStream  
      inputStream   
      charset       

  public com.googlecode.lanterna.terminal.Terminal createTerminal();
    descriptor: ()Lcom/googlecode/lanterna/terminal/Terminal;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
         0: .line 111
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.forceTextTerminal:Z
            ifne 2
            aload 0 /* this */
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.isAwtHeadless:()Z
            ifne 2
         1: .line 112
            invokestatic java.lang.System.console:()Ljava/io/Console;
            ifnull 3
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.preferTerminalEmulator:Z
            ifne 3
         2: .line 113
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.createHeadlessTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
            areturn
         3: .line 119
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.preferTerminalEmulator:Z
            ifne 5
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.mouseCaptureMode:Lcom/googlecode/lanterna/terminal/MouseCaptureMode;
            ifnull 5
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.telnetPort:I
            ifle 5
         4: .line 120
            aload 0 /* this */
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.createTelnetTerminal:()Lcom/googlecode/lanterna/terminal/ansi/TelnetTerminal;
            areturn
         5: .line 122
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.createTerminalEmulator:()Lcom/googlecode/lanterna/terminal/Terminal;
            areturn
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    Exceptions:
      throws java.io.IOException

  public com.googlecode.lanterna.terminal.Terminal createHeadlessTerminal();
    descriptor: ()Lcom/googlecode/lanterna/terminal/Terminal;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
         0: .line 136
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.telnetPort:I
            ifle 2
            invokestatic java.lang.System.console:()Ljava/io/Console;
            ifnonnull 2
         1: .line 137
            aload 0 /* this */
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.createTelnetTerminal:()Lcom/googlecode/lanterna/terminal/ansi/TelnetTerminal;
            areturn
         2: .line 139
      StackMap locals:
      StackMap stack:
            invokestatic com.googlecode.lanterna.terminal.DefaultTerminalFactory.isOperatingSystemWindows:()Z
            ifeq 4
         3: .line 140
            aload 0 /* this */
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.createWindowsTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
            areturn
         4: .line 143
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.outputStream:Ljava/io/OutputStream;
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputStream:Ljava/io/InputStream;
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.charset:Ljava/nio/charset/Charset;
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.createUnixTerminal:(Ljava/io/OutputStream;Ljava/io/InputStream;Ljava/nio/charset/Charset;)Lcom/googlecode/lanterna/terminal/Terminal;
            areturn
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    Exceptions:
      throws java.io.IOException

  public com.googlecode.lanterna.terminal.Terminal createTerminalEmulator();
    descriptor: ()Lcom/googlecode/lanterna/terminal/Terminal;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
         0: .line 153
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.forceAWTOverSwing:Z
            ifne 3
            aload 0 /* this */
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.hasSwing:()Z
            ifeq 3
         1: .line 154
            aload 0 /* this */
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.createSwingTerminal:()Lcom/googlecode/lanterna/terminal/swing/SwingTerminalFrame;
            astore 1 /* terminal */
        start local 1 // com.googlecode.lanterna.terminal.Terminal terminal
         2: .line 155
            goto 4
        end local 1 // com.googlecode.lanterna.terminal.Terminal terminal
         3: .line 156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.createAWTTerminal:()Lcom/googlecode/lanterna/terminal/swing/AWTTerminalFrame;
            astore 1 /* terminal */
        start local 1 // com.googlecode.lanterna.terminal.Terminal terminal
         4: .line 159
      StackMap locals: com.googlecode.lanterna.terminal.Terminal
      StackMap stack:
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.autoOpenTerminalFrame:Z
            ifeq 6
         5: .line 160
            aload 0 /* this */
            aload 1 /* terminal */
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.makeWindowVisible:(Lcom/googlecode/lanterna/terminal/Terminal;)V
         6: .line 162
      StackMap locals:
      StackMap stack:
            aload 1 /* terminal */
            areturn
        end local 1 // com.googlecode.lanterna.terminal.Terminal terminal
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            2    3     1  terminal  Lcom/googlecode/lanterna/terminal/Terminal;
            4    7     1  terminal  Lcom/googlecode/lanterna/terminal/Terminal;

  public com.googlecode.lanterna.terminal.swing.AWTTerminalFrame createAWTTerminal();
    descriptor: ()Lcom/googlecode/lanterna/terminal/swing/AWTTerminalFrame;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=1, args_size=1
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
         0: .line 166
            new com.googlecode.lanterna.terminal.swing.AWTTerminalFrame
            dup
         1: .line 167
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.title:Ljava/lang/String;
         2: .line 168
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.initialTerminalSize:Lcom/googlecode/lanterna/TerminalSize;
         3: .line 169
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.deviceConfiguration:Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorDeviceConfiguration;
         4: .line 170
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.fontConfiguration:Lcom/googlecode/lanterna/terminal/swing/AWTTerminalFontConfiguration;
         5: .line 171
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.colorConfiguration:Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorColorConfiguration;
         6: .line 172
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.autoCloseTriggers:Ljava/util/EnumSet;
            iconst_0
            anewarray com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger
            invokevirtual java.util.EnumSet.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger[]
         7: .line 166
            invokespecial com.googlecode.lanterna.terminal.swing.AWTTerminalFrame.<init>:(Ljava/lang/String;Lcom/googlecode/lanterna/TerminalSize;Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorDeviceConfiguration;Lcom/googlecode/lanterna/terminal/swing/AWTTerminalFontConfiguration;Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorColorConfiguration;[Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorAutoCloseTrigger;)V
            areturn
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;

  public com.googlecode.lanterna.terminal.swing.SwingTerminalFrame createSwingTerminal();
    descriptor: ()Lcom/googlecode/lanterna/terminal/swing/SwingTerminalFrame;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=1, args_size=1
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
         0: .line 176
            new com.googlecode.lanterna.terminal.swing.SwingTerminalFrame
            dup
         1: .line 177
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.title:Ljava/lang/String;
         2: .line 178
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.initialTerminalSize:Lcom/googlecode/lanterna/TerminalSize;
         3: .line 179
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.deviceConfiguration:Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorDeviceConfiguration;
         4: .line 180
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.fontConfiguration:Lcom/googlecode/lanterna/terminal/swing/AWTTerminalFontConfiguration;
            instanceof com.googlecode.lanterna.terminal.swing.SwingTerminalFontConfiguration
            ifeq 5
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.fontConfiguration:Lcom/googlecode/lanterna/terminal/swing/AWTTerminalFontConfiguration;
            checkcast com.googlecode.lanterna.terminal.swing.SwingTerminalFontConfiguration
            goto 6
      StackMap locals: com.googlecode.lanterna.terminal.DefaultTerminalFactory
      StackMap stack: new 0 new 0 java.lang.String com.googlecode.lanterna.TerminalSize com.googlecode.lanterna.terminal.swing.TerminalEmulatorDeviceConfiguration
         5: aconst_null
         6: .line 181
      StackMap locals: com.googlecode.lanterna.terminal.DefaultTerminalFactory
      StackMap stack: new 0 new 0 java.lang.String com.googlecode.lanterna.TerminalSize com.googlecode.lanterna.terminal.swing.TerminalEmulatorDeviceConfiguration com.googlecode.lanterna.terminal.swing.SwingTerminalFontConfiguration
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.colorConfiguration:Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorColorConfiguration;
         7: .line 182
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.autoCloseTriggers:Ljava/util/EnumSet;
            iconst_0
            anewarray com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger
            invokevirtual java.util.EnumSet.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger[]
         8: .line 176
            invokespecial com.googlecode.lanterna.terminal.swing.SwingTerminalFrame.<init>:(Ljava/lang/String;Lcom/googlecode/lanterna/TerminalSize;Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorDeviceConfiguration;Lcom/googlecode/lanterna/terminal/swing/SwingTerminalFontConfiguration;Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorColorConfiguration;[Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorAutoCloseTrigger;)V
            areturn
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;

  public com.googlecode.lanterna.terminal.ansi.TelnetTerminal createTelnetTerminal();
    descriptor: ()Lcom/googlecode/lanterna/terminal/ansi/TelnetTerminal;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
         0: .line 195
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Waiting for incoming telnet connection on port "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.telnetPort:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " ... "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
         1: .line 196
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.flush:()V
         2: .line 198
            new com.googlecode.lanterna.terminal.ansi.TelnetTerminalServer
            dup
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.telnetPort:I
            invokespecial com.googlecode.lanterna.terminal.ansi.TelnetTerminalServer.<init>:(I)V
            astore 1 /* tts */
        start local 1 // com.googlecode.lanterna.terminal.ansi.TelnetTerminalServer tts
         3: .line 199
            aload 1 /* tts */
            invokevirtual com.googlecode.lanterna.terminal.ansi.TelnetTerminalServer.acceptConnection:()Lcom/googlecode/lanterna/terminal/ansi/TelnetTerminal;
            astore 2 /* rawTerminal */
        start local 2 // com.googlecode.lanterna.terminal.ansi.TelnetTerminal rawTerminal
         4: .line 200
            aload 1 /* tts */
            invokevirtual com.googlecode.lanterna.terminal.ansi.TelnetTerminalServer.close:()V
         5: .line 202
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "Ok, got it!"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         6: .line 204
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.mouseCaptureMode:Lcom/googlecode/lanterna/terminal/MouseCaptureMode;
            ifnull 8
         7: .line 205
            aload 2 /* rawTerminal */
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.mouseCaptureMode:Lcom/googlecode/lanterna/terminal/MouseCaptureMode;
            invokevirtual com.googlecode.lanterna.terminal.ansi.TelnetTerminal.setMouseCaptureMode:(Lcom/googlecode/lanterna/terminal/MouseCaptureMode;)V
         8: .line 207
      StackMap locals: com.googlecode.lanterna.terminal.ansi.TelnetTerminalServer com.googlecode.lanterna.terminal.ansi.TelnetTerminal
      StackMap stack:
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputTimeout:I
            iflt 10
         9: .line 208
            aload 2 /* rawTerminal */
            invokevirtual com.googlecode.lanterna.terminal.ansi.TelnetTerminal.getInputDecoder:()Lcom/googlecode/lanterna/input/InputDecoder;
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputTimeout:I
            invokevirtual com.googlecode.lanterna.input.InputDecoder.setTimeoutUnits:(I)V
        10: .line 210
      StackMap locals:
      StackMap stack:
            aload 2 /* rawTerminal */
        11: areturn
        end local 2 // com.googlecode.lanterna.terminal.ansi.TelnetTerminal rawTerminal
        end local 1 // com.googlecode.lanterna.terminal.ansi.TelnetTerminalServer tts
        12: .line 211
      StackMap locals: com.googlecode.lanterna.terminal.DefaultTerminalFactory
      StackMap stack: java.io.IOException
            astore 1 /* ioe */
        start local 1 // java.io.IOException ioe
        13: .line 212
            new java.lang.RuntimeException
            dup
            aload 1 /* ioe */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.io.IOException ioe
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            3   12     1          tts  Lcom/googlecode/lanterna/terminal/ansi/TelnetTerminalServer;
            4   12     2  rawTerminal  Lcom/googlecode/lanterna/terminal/ansi/TelnetTerminal;
           13   14     1          ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0    11      12  Class java.io.IOException

  private boolean isAwtHeadless();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
         0: .line 218
            ldc "java.awt.GraphicsEnvironment"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 1 /* cls */
        start local 1 // java.lang.Class cls
         1: .line 219
            aload 1 /* cls */
            ldc "isHeadless"
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 2 /* method */
        start local 2 // java.lang.reflect.Method method
         2: .line 220
            aload 2 /* method */
            aconst_null
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
         3: ireturn
        end local 2 // java.lang.reflect.Method method
        end local 1 // java.lang.Class cls
         4: .line 221
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         5: .line 223
            iconst_1
            ireturn
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            1    4     1     cls  Ljava/lang/Class<*>;
            2    4     2  method  Ljava/lang/reflect/Method;
      Exception table:
        from    to  target  type
           0     3       4  Class java.lang.Exception

  private boolean hasSwing();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
         0: .line 229
            ldc "javax.swing.JComponent"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            pop
         1: .line 230
            iconst_1
            ireturn
         2: .line 232
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         3: .line 233
            iconst_0
            ireturn
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception

  private void makeWindowVisible(com.googlecode.lanterna.terminal.Terminal);
    descriptor: (Lcom/googlecode/lanterna/terminal/Terminal;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // com.googlecode.lanterna.terminal.Terminal terminal
         0: .line 239
            ldc "java.awt.Window"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 2 /* cls */
        start local 2 // java.lang.Class cls
         1: .line 240
            aload 2 /* cls */
            ldc "setVisible"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 3 /* method */
        start local 3 // java.lang.reflect.Method method
         2: .line 241
            aload 3 /* method */
            aload 1 /* terminal */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 3 // java.lang.reflect.Method method
        end local 2 // java.lang.Class cls
         3: .line 242
            goto 6
      StackMap locals:
      StackMap stack: java.lang.Exception
         4: astore 2 /* ex */
        start local 2 // java.lang.Exception ex
         5: .line 243
            new java.lang.RuntimeException
            dup
            ldc "Failed to make terminal emulator window visible."
            aload 2 /* ex */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.Exception ex
         6: .line 245
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.googlecode.lanterna.terminal.Terminal terminal
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    7     1  terminal  Lcom/googlecode/lanterna/terminal/Terminal;
            1    3     2       cls  Ljava/lang/Class<*>;
            2    3     3    method  Ljava/lang/reflect/Method;
            5    6     2        ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     3       4  Class java.lang.Exception
    MethodParameters:
          Name  Flags
      terminal  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setInitialTerminalSize(com.googlecode.lanterna.TerminalSize);
    descriptor: (Lcom/googlecode/lanterna/TerminalSize;)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // com.googlecode.lanterna.TerminalSize initialTerminalSize
         0: .line 255
            aload 0 /* this */
            aload 1 /* initialTerminalSize */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.initialTerminalSize:Lcom/googlecode/lanterna/TerminalSize;
         1: .line 256
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.TerminalSize initialTerminalSize
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    2     0                 this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  initialTerminalSize  Lcom/googlecode/lanterna/TerminalSize;
    MethodParameters:
                     Name  Flags
      initialTerminalSize  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setForceTextTerminal(boolean);
    descriptor: (Z)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // boolean forceTextTerminal
         0: .line 266
            aload 0 /* this */
            iload 1 /* forceTextTerminal */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.forceTextTerminal:Z
         1: .line 267
            aload 0 /* this */
            areturn
        end local 1 // boolean forceTextTerminal
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  forceTextTerminal  Z
    MethodParameters:
                   Name  Flags
      forceTextTerminal  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setPreferTerminalEmulator(boolean);
    descriptor: (Z)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // boolean preferTerminalEmulator
         0: .line 277
            aload 0 /* this */
            iload 1 /* preferTerminalEmulator */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.preferTerminalEmulator:Z
         1: .line 278
            aload 0 /* this */
            areturn
        end local 1 // boolean preferTerminalEmulator
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    2     0                    this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  preferTerminalEmulator  Z
    MethodParameters:
                        Name  Flags
      preferTerminalEmulator  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setUnixTerminalCtrlCBehaviour(com.googlecode.lanterna.terminal.ansi.UnixLikeTerminal$CtrlCBehaviour);
    descriptor: (Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // com.googlecode.lanterna.terminal.ansi.UnixLikeTerminal$CtrlCBehaviour unixTerminalCtrlCBehaviour
         0: .line 289
            aload 0 /* this */
            aload 1 /* unixTerminalCtrlCBehaviour */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.unixTerminalCtrlCBehaviour:Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;
         1: .line 290
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.terminal.ansi.UnixLikeTerminal$CtrlCBehaviour unixTerminalCtrlCBehaviour
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0    2     0                        this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  unixTerminalCtrlCBehaviour  Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;
    MethodParameters:
                            Name  Flags
      unixTerminalCtrlCBehaviour  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setTelnetPort(int);
    descriptor: (I)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // int telnetPort
         0: .line 310
            aload 0 /* this */
            iload 1 /* telnetPort */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.telnetPort:I
         1: .line 311
            aload 0 /* this */
            areturn
        end local 1 // int telnetPort
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  telnetPort  I
    MethodParameters:
            Name  Flags
      telnetPort  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setInputTimeout(int);
    descriptor: (I)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // int inputTimeout
         0: .line 326
            aload 0 /* this */
            iload 1 /* inputTimeout */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputTimeout:I
         1: .line 327
            aload 0 /* this */
            areturn
        end local 1 // int inputTimeout
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  inputTimeout  I
    MethodParameters:
              Name  Flags
      inputTimeout  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setForceAWTOverSwing(boolean);
    descriptor: (Z)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // boolean forceAWTOverSwing
         0: .line 339
            aload 0 /* this */
            iload 1 /* forceAWTOverSwing */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.forceAWTOverSwing:Z
         1: .line 340
            aload 0 /* this */
            areturn
        end local 1 // boolean forceAWTOverSwing
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  forceAWTOverSwing  Z
    MethodParameters:
                   Name  Flags
      forceAWTOverSwing  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setAutoOpenTerminalEmulatorWindow(boolean);
    descriptor: (Z)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // boolean autoOpenTerminalFrame
         0: .line 351
            aload 0 /* this */
            iload 1 /* autoOpenTerminalFrame */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.autoOpenTerminalFrame:Z
         1: .line 352
            aload 0 /* this */
            areturn
        end local 1 // boolean autoOpenTerminalFrame
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    2     0                   this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  autoOpenTerminalFrame  Z
    MethodParameters:
                       Name  Flags
      autoOpenTerminalFrame  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setTerminalEmulatorTitle(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // java.lang.String title
         0: .line 361
            aload 0 /* this */
            aload 1 /* title */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.title:Ljava/lang/String;
         1: .line 362
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String title
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  title  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      title  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setTerminalEmulatorFrameAutoCloseTrigger(com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger);
    descriptor: (Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorAutoCloseTrigger;)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger autoCloseTrigger
         0: .line 372
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.autoCloseTriggers:Ljava/util/EnumSet;
            invokevirtual java.util.EnumSet.clear:()V
         1: .line 373
            aload 1 /* autoCloseTrigger */
            ifnull 3
         2: .line 374
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.autoCloseTriggers:Ljava/util/EnumSet;
            aload 1 /* autoCloseTrigger */
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 376
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger autoCloseTrigger
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    4     1  autoCloseTrigger  Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorAutoCloseTrigger;
    MethodParameters:
                  Name  Flags
      autoCloseTrigger  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory addTerminalEmulatorFrameAutoCloseTrigger(com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger);
    descriptor: (Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorAutoCloseTrigger;)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger autoCloseTrigger
         0: .line 385
            aload 1 /* autoCloseTrigger */
            ifnull 2
         1: .line 386
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.autoCloseTriggers:Ljava/util/EnumSet;
            aload 1 /* autoCloseTrigger */
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         2: .line 388
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.terminal.swing.TerminalEmulatorAutoCloseTrigger autoCloseTrigger
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    3     1  autoCloseTrigger  Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorAutoCloseTrigger;
    MethodParameters:
                  Name  Flags
      autoCloseTrigger  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setTerminalEmulatorColorConfiguration(com.googlecode.lanterna.terminal.swing.TerminalEmulatorColorConfiguration);
    descriptor: (Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorColorConfiguration;)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // com.googlecode.lanterna.terminal.swing.TerminalEmulatorColorConfiguration colorConfiguration
         0: .line 397
            aload 0 /* this */
            aload 1 /* colorConfiguration */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.colorConfiguration:Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorColorConfiguration;
         1: .line 398
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.terminal.swing.TerminalEmulatorColorConfiguration colorConfiguration
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  colorConfiguration  Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorColorConfiguration;
    MethodParameters:
                    Name  Flags
      colorConfiguration  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setTerminalEmulatorDeviceConfiguration(com.googlecode.lanterna.terminal.swing.TerminalEmulatorDeviceConfiguration);
    descriptor: (Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorDeviceConfiguration;)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // com.googlecode.lanterna.terminal.swing.TerminalEmulatorDeviceConfiguration deviceConfiguration
         0: .line 407
            aload 0 /* this */
            aload 1 /* deviceConfiguration */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.deviceConfiguration:Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorDeviceConfiguration;
         1: .line 408
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.terminal.swing.TerminalEmulatorDeviceConfiguration deviceConfiguration
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    2     0                 this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  deviceConfiguration  Lcom/googlecode/lanterna/terminal/swing/TerminalEmulatorDeviceConfiguration;
    MethodParameters:
                     Name  Flags
      deviceConfiguration  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setTerminalEmulatorFontConfiguration(com.googlecode.lanterna.terminal.swing.AWTTerminalFontConfiguration);
    descriptor: (Lcom/googlecode/lanterna/terminal/swing/AWTTerminalFontConfiguration;)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // com.googlecode.lanterna.terminal.swing.AWTTerminalFontConfiguration fontConfiguration
         0: .line 417
            aload 0 /* this */
            aload 1 /* fontConfiguration */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.fontConfiguration:Lcom/googlecode/lanterna/terminal/swing/AWTTerminalFontConfiguration;
         1: .line 418
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.terminal.swing.AWTTerminalFontConfiguration fontConfiguration
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  fontConfiguration  Lcom/googlecode/lanterna/terminal/swing/AWTTerminalFontConfiguration;
    MethodParameters:
                   Name  Flags
      fontConfiguration  

  public com.googlecode.lanterna.terminal.DefaultTerminalFactory setMouseCaptureMode(com.googlecode.lanterna.terminal.MouseCaptureMode);
    descriptor: (Lcom/googlecode/lanterna/terminal/MouseCaptureMode;)Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // com.googlecode.lanterna.terminal.MouseCaptureMode mouseCaptureMode
         0: .line 434
            aload 0 /* this */
            aload 1 /* mouseCaptureMode */
            putfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.mouseCaptureMode:Lcom/googlecode/lanterna/terminal/MouseCaptureMode;
         1: .line 435
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.terminal.MouseCaptureMode mouseCaptureMode
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    2     1  mouseCaptureMode  Lcom/googlecode/lanterna/terminal/MouseCaptureMode;
    MethodParameters:
                  Name  Flags
      mouseCaptureMode  

  public com.googlecode.lanterna.screen.TerminalScreen createScreen();
    descriptor: ()Lcom/googlecode/lanterna/screen/TerminalScreen;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
         0: .line 444
            new com.googlecode.lanterna.screen.TerminalScreen
            dup
            aload 0 /* this */
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.createTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
            invokespecial com.googlecode.lanterna.screen.TerminalScreen.<init>:(Lcom/googlecode/lanterna/terminal/Terminal;)V
            areturn
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
    Exceptions:
      throws java.io.IOException

  private com.googlecode.lanterna.terminal.Terminal createWindowsTerminal();
    descriptor: ()Lcom/googlecode/lanterna/terminal/Terminal;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
         0: .line 449
            ldc "com.googlecode.lanterna.terminal.WindowsTerminal"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 1 /* nativeImplementation */
        start local 1 // java.lang.Class nativeImplementation
         1: .line 450
            aload 1 /* nativeImplementation */
            iconst_4
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/io/InputStream;
            aastore
            dup
            iconst_1
            ldc Ljava/io/OutputStream;
            aastore
            dup
            iconst_2
            ldc Ljava/nio/charset/Charset;
            aastore
            dup
            iconst_3
            ldc Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;
            aastore
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            astore 2 /* constructor */
        start local 2 // java.lang.reflect.Constructor constructor
         2: .line 451
            aload 2 /* constructor */
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputStream:Ljava/io/InputStream;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.outputStream:Ljava/io/OutputStream;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.charset:Ljava/nio/charset/Charset;
            aastore
            dup
            iconst_3
            getstatic com.googlecode.lanterna.terminal.ansi.UnixLikeTerminal$CtrlCBehaviour.CTRL_C_KILLS_APPLICATION:Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;
            aastore
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.googlecode.lanterna.terminal.Terminal
         3: areturn
        end local 2 // java.lang.reflect.Constructor constructor
        end local 1 // java.lang.Class nativeImplementation
         4: .line 453
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         5: .line 455
            aload 0 /* this */
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.outputStream:Ljava/io/OutputStream;
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputStream:Ljava/io/InputStream;
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.charset:Ljava/nio/charset/Charset;
            invokevirtual com.googlecode.lanterna.terminal.DefaultTerminalFactory.createCygwinTerminal:(Ljava/io/OutputStream;Ljava/io/InputStream;Ljava/nio/charset/Charset;)Lcom/googlecode/lanterna/terminal/Terminal;
         6: areturn
         7: .line 456
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 1 /* e */
        start local 1 // java.io.IOException e
         8: .line 457
            new java.io.IOException
            dup
            ldc "To start java on Windows, use javaw! (see https://github.com/mabe02/lanterna/issues/335 )"
            aload 1 /* e */
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.io.IOException e
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    9     0                  this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            1    4     1  nativeImplementation  Ljava/lang/Class<*>;
            2    4     2           constructor  Ljava/lang/reflect/Constructor<*>;
            8    9     1                     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     3       4  Class java.lang.Exception
           5     6       7  Class java.io.IOException
    Exceptions:
      throws java.io.IOException

  private com.googlecode.lanterna.terminal.Terminal createCygwinTerminal(java.io.OutputStream, java.io.InputStream, java.nio.charset.Charset);
    descriptor: (Ljava/io/OutputStream;Ljava/io/InputStream;Ljava/nio/charset/Charset;)Lcom/googlecode/lanterna/terminal/Terminal;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // java.io.OutputStream outputStream
        start local 2 // java.io.InputStream inputStream
        start local 3 // java.nio.charset.Charset charset
         0: .line 463
            new com.googlecode.lanterna.terminal.ansi.CygwinTerminal
            dup
            aload 2 /* inputStream */
            aload 1 /* outputStream */
            aload 3 /* charset */
            invokespecial com.googlecode.lanterna.terminal.ansi.CygwinTerminal.<init>:(Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/nio/charset/Charset;)V
            astore 4 /* cygTerminal */
        start local 4 // com.googlecode.lanterna.terminal.ansi.CygwinTerminal cygTerminal
         1: .line 464
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputTimeout:I
            iflt 3
         2: .line 465
            aload 4 /* cygTerminal */
            invokevirtual com.googlecode.lanterna.terminal.ansi.CygwinTerminal.getInputDecoder:()Lcom/googlecode/lanterna/input/InputDecoder;
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputTimeout:I
            invokevirtual com.googlecode.lanterna.input.InputDecoder.setTimeoutUnits:(I)V
         3: .line 467
      StackMap locals: com.googlecode.lanterna.terminal.ansi.CygwinTerminal
      StackMap stack:
            aload 4 /* cygTerminal */
            areturn
        end local 4 // com.googlecode.lanterna.terminal.ansi.CygwinTerminal cygTerminal
        end local 3 // java.nio.charset.Charset charset
        end local 2 // java.io.InputStream inputStream
        end local 1 // java.io.OutputStream outputStream
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0    4     1  outputStream  Ljava/io/OutputStream;
            0    4     2   inputStream  Ljava/io/InputStream;
            0    4     3       charset  Ljava/nio/charset/Charset;
            1    4     4   cygTerminal  Lcom/googlecode/lanterna/terminal/ansi/CygwinTerminal;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      outputStream  
      inputStream   
      charset       

  private com.googlecode.lanterna.terminal.Terminal createUnixTerminal(java.io.OutputStream, java.io.InputStream, java.nio.charset.Charset);
    descriptor: (Ljava/io/OutputStream;Ljava/io/InputStream;Ljava/nio/charset/Charset;)Lcom/googlecode/lanterna/terminal/Terminal;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
        start local 1 // java.io.OutputStream outputStream
        start local 2 // java.io.InputStream inputStream
        start local 3 // java.nio.charset.Charset charset
         0: .line 473
            ldc "com.googlecode.lanterna.terminal.NativeGNULinuxTerminal"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 5 /* nativeImplementation */
        start local 5 // java.lang.Class nativeImplementation
         1: .line 474
            aload 5 /* nativeImplementation */
            iconst_4
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/io/InputStream;
            aastore
            dup
            iconst_1
            ldc Ljava/io/OutputStream;
            aastore
            dup
            iconst_2
            ldc Ljava/nio/charset/Charset;
            aastore
            dup
            iconst_3
            ldc Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;
            aastore
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            astore 6 /* constructor */
        start local 6 // java.lang.reflect.Constructor constructor
         2: .line 475
            aload 6 /* constructor */
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* inputStream */
            aastore
            dup
            iconst_1
            aload 1 /* outputStream */
            aastore
            dup
            iconst_2
            aload 3 /* charset */
            aastore
            dup
            iconst_3
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.unixTerminalCtrlCBehaviour:Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;
            aastore
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.googlecode.lanterna.terminal.ansi.UnixTerminal
            astore 4 /* unixTerminal */
        end local 6 // java.lang.reflect.Constructor constructor
        end local 5 // java.lang.Class nativeImplementation
        start local 4 // com.googlecode.lanterna.terminal.ansi.UnixTerminal unixTerminal
         3: .line 476
            goto 6
        end local 4 // com.googlecode.lanterna.terminal.ansi.UnixTerminal unixTerminal
         4: .line 477
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         5: .line 478
            new com.googlecode.lanterna.terminal.ansi.UnixTerminal
            dup
            aload 2 /* inputStream */
            aload 1 /* outputStream */
            aload 3 /* charset */
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.unixTerminalCtrlCBehaviour:Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;
            invokespecial com.googlecode.lanterna.terminal.ansi.UnixTerminal.<init>:(Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/nio/charset/Charset;Lcom/googlecode/lanterna/terminal/ansi/UnixLikeTerminal$CtrlCBehaviour;)V
            astore 4 /* unixTerminal */
        start local 4 // com.googlecode.lanterna.terminal.ansi.UnixTerminal unixTerminal
         6: .line 480
      StackMap locals: com.googlecode.lanterna.terminal.ansi.UnixTerminal
      StackMap stack:
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.mouseCaptureMode:Lcom/googlecode/lanterna/terminal/MouseCaptureMode;
            ifnull 8
         7: .line 481
            aload 4 /* unixTerminal */
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.mouseCaptureMode:Lcom/googlecode/lanterna/terminal/MouseCaptureMode;
            invokevirtual com.googlecode.lanterna.terminal.ansi.UnixTerminal.setMouseCaptureMode:(Lcom/googlecode/lanterna/terminal/MouseCaptureMode;)V
         8: .line 483
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputTimeout:I
            iflt 10
         9: .line 484
            aload 4 /* unixTerminal */
            invokevirtual com.googlecode.lanterna.terminal.ansi.UnixTerminal.getInputDecoder:()Lcom/googlecode/lanterna/input/InputDecoder;
            aload 0 /* this */
            getfield com.googlecode.lanterna.terminal.DefaultTerminalFactory.inputTimeout:I
            invokevirtual com.googlecode.lanterna.input.InputDecoder.setTimeoutUnits:(I)V
        10: .line 486
      StackMap locals:
      StackMap stack:
            aload 4 /* unixTerminal */
            areturn
        end local 4 // com.googlecode.lanterna.terminal.ansi.UnixTerminal unixTerminal
        end local 3 // java.nio.charset.Charset charset
        end local 2 // java.io.InputStream inputStream
        end local 1 // java.io.OutputStream outputStream
        end local 0 // com.googlecode.lanterna.terminal.DefaultTerminalFactory this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   11     0                  this  Lcom/googlecode/lanterna/terminal/DefaultTerminalFactory;
            0   11     1          outputStream  Ljava/io/OutputStream;
            0   11     2           inputStream  Ljava/io/InputStream;
            0   11     3               charset  Ljava/nio/charset/Charset;
            3    4     4          unixTerminal  Lcom/googlecode/lanterna/terminal/ansi/UnixTerminal;
            6   11     4          unixTerminal  Lcom/googlecode/lanterna/terminal/ansi/UnixTerminal;
            1    3     5  nativeImplementation  Ljava/lang/Class<*>;
            2    3     6           constructor  Ljava/lang/reflect/Constructor<*>;
      Exception table:
        from    to  target  type
           0     3       4  Class java.lang.Exception
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      outputStream  
      inputStream   
      charset       

  private static boolean isOperatingSystemWindows();
    descriptor: ()Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 494
            ldc "os.name"
            ldc ""
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            ldc "windows"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "DefaultTerminalFactory.java"
InnerClasses:
  public final CtrlCBehaviour = com.googlecode.lanterna.terminal.ansi.UnixLikeTerminal$CtrlCBehaviour of com.googlecode.lanterna.terminal.ansi.UnixLikeTerminal