public class com.googlecode.lanterna.gui2.Label extends com.googlecode.lanterna.gui2.AbstractComponent<com.googlecode.lanterna.gui2.Label>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.googlecode.lanterna.gui2.Label
  super_class: com.googlecode.lanterna.gui2.AbstractComponent
{
  private java.lang.String[] lines;
    descriptor: [Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Integer labelWidth;
    descriptor: Ljava/lang/Integer;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.gui2.Label this
        start local 1 // java.lang.String text
         0: .line 46
            aload 0 /* this */
            invokespecial com.googlecode.lanterna.gui2.AbstractComponent.<init>:()V
         1: .line 47
            aload 0 /* this */
            aconst_null
            putfield com.googlecode.lanterna.gui2.Label.lines:[Ljava/lang/String;
         2: .line 48
            aload 0 /* this */
            getstatic com.googlecode.lanterna.TerminalSize.ZERO:Lcom/googlecode/lanterna/TerminalSize;
            putfield com.googlecode.lanterna.gui2.Label.labelSize:Lcom/googlecode/lanterna/TerminalSize;
         3: .line 49
            aload 0 /* this */
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            putfield com.googlecode.lanterna.gui2.Label.labelWidth:Ljava/lang/Integer;
         4: .line 50
            aload 0 /* this */
            aconst_null
            putfield com.googlecode.lanterna.gui2.Label.foregroundColor:Lcom/googlecode/lanterna/TextColor;
         5: .line 51
            aload 0 /* this */
            aconst_null
            putfield com.googlecode.lanterna.gui2.Label.backgroundColor:Lcom/googlecode/lanterna/TextColor;
         6: .line 52
            aload 0 /* this */
            ldc Lcom/googlecode/lanterna/SGR;
            invokestatic java.util.EnumSet.noneOf:(Ljava/lang/Class;)Ljava/util/EnumSet;
            putfield com.googlecode.lanterna.gui2.Label.additionalStyles:Ljava/util/EnumSet;
         7: .line 53
            aload 0 /* this */
            aload 1 /* text */
            invokevirtual com.googlecode.lanterna.gui2.Label.setText:(Ljava/lang/String;)V
         8: .line 54
            return
        end local 1 // java.lang.String text
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/googlecode/lanterna/gui2/Label;
            0    9     1  text  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      text  

  protected void setLines(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.gui2.Label this
        start local 1 // java.lang.String[] lines
         0: .line 63
            aload 0 /* this */
            aload 1 /* lines */
            putfield com.googlecode.lanterna.gui2.Label.lines:[Ljava/lang/String;
         1: .line 64
            return
        end local 1 // java.lang.String[] lines
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/googlecode/lanterna/gui2/Label;
            0    2     1  lines  [Ljava/lang/String;
    MethodParameters:
       Name  Flags
      lines  

  public synchronized void setText(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.gui2.Label this
        start local 1 // java.lang.String text
         0: .line 71
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* text */
            invokevirtual com.googlecode.lanterna.gui2.Label.splitIntoMultipleLines:(Ljava/lang/String;)[Ljava/lang/String;
            invokevirtual com.googlecode.lanterna.gui2.Label.setLines:([Ljava/lang/String;)V
         1: .line 72
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.lines:[Ljava/lang/String;
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.labelSize:Lcom/googlecode/lanterna/TerminalSize;
            invokevirtual com.googlecode.lanterna.gui2.Label.getBounds:([Ljava/lang/String;Lcom/googlecode/lanterna/TerminalSize;)Lcom/googlecode/lanterna/TerminalSize;
            putfield com.googlecode.lanterna.gui2.Label.labelSize:Lcom/googlecode/lanterna/TerminalSize;
         2: .line 73
            aload 0 /* this */
            invokevirtual com.googlecode.lanterna.gui2.Label.invalidate:()V
         3: .line 74
            return
        end local 1 // java.lang.String text
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/googlecode/lanterna/gui2/Label;
            0    4     1  text  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      text  

  public synchronized java.lang.String getText();
    descriptor: ()Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.googlecode.lanterna.gui2.Label this
         0: .line 82
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.lines:[Ljava/lang/String;
            arraylength
            ifne 2
         1: .line 83
            ldc ""
            areturn
         2: .line 85
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.lines:[Ljava/lang/String;
            iconst_0
            aaload
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 1 /* bob */
        start local 1 // java.lang.StringBuilder bob
         3: .line 86
            iconst_1
            istore 2 /* i */
        start local 2 // int i
         4: goto 7
         5: .line 87
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 1 /* bob */
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.lines:[Ljava/lang/String;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 86
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.lines:[Ljava/lang/String;
            arraylength
            if_icmplt 5
        end local 2 // int i
         8: .line 89
            aload 1 /* bob */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder bob
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/googlecode/lanterna/gui2/Label;
            3    9     1   bob  Ljava/lang/StringBuilder;
            4    8     2     i  I

  protected java.lang.String[] splitIntoMultipleLines(java.lang.String);
    descriptor: (Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.gui2.Label this
        start local 1 // java.lang.String text
         0: .line 99
            aload 1 /* text */
            ldc "\r"
            ldc ""
            invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
            ldc "\n"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            areturn
        end local 1 // java.lang.String text
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/googlecode/lanterna/gui2/Label;
            0    1     1  text  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      text  

  protected com.googlecode.lanterna.TerminalSize getBounds(java.lang.String[], com.googlecode.lanterna.TerminalSize);
    descriptor: ([Ljava/lang/String;Lcom/googlecode/lanterna/TerminalSize;)Lcom/googlecode/lanterna/TerminalSize;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=9, args_size=3
        start local 0 // com.googlecode.lanterna.gui2.Label this
        start local 1 // java.lang.String[] lines
        start local 2 // com.googlecode.lanterna.TerminalSize currentBounds
         0: .line 111
            aload 2 /* currentBounds */
            ifnonnull 2
         1: .line 112
            getstatic com.googlecode.lanterna.TerminalSize.ZERO:Lcom/googlecode/lanterna/TerminalSize;
            astore 2 /* currentBounds */
         2: .line 114
      StackMap locals:
      StackMap stack:
            aload 2 /* currentBounds */
            aload 1 /* lines */
            arraylength
            invokevirtual com.googlecode.lanterna.TerminalSize.withRows:(I)Lcom/googlecode/lanterna/TerminalSize;
            astore 2 /* currentBounds */
         3: .line 115
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.labelWidth:Ljava/lang/Integer;
            ifnull 4
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.labelWidth:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            ifne 14
         4: .line 116
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* preferredWidth */
        start local 3 // int preferredWidth
         5: .line 117
            aload 1 /* lines */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 11
      StackMap locals: com.googlecode.lanterna.gui2.Label java.lang.String[] com.googlecode.lanterna.TerminalSize int top int int java.lang.String[]
      StackMap stack:
         6: aload 7
            iload 5
            aaload
            astore 4 /* line */
        start local 4 // java.lang.String line
         7: .line 118
            aload 4 /* line */
            invokestatic com.googlecode.lanterna.TerminalTextUtils.getColumnWidth:(Ljava/lang/String;)I
            istore 8 /* lineWidth */
        start local 8 // int lineWidth
         8: .line 119
            iload 3 /* preferredWidth */
            iload 8 /* lineWidth */
            if_icmpge 10
         9: .line 120
            iload 8 /* lineWidth */
            istore 3 /* preferredWidth */
        end local 8 // int lineWidth
        end local 4 // java.lang.String line
        10: .line 117
      StackMap locals:
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        11: iload 5
            iload 6
            if_icmplt 6
        12: .line 123
            aload 2 /* currentBounds */
            iload 3 /* preferredWidth */
            invokevirtual com.googlecode.lanterna.TerminalSize.withColumns:(I)Lcom/googlecode/lanterna/TerminalSize;
            astore 2 /* currentBounds */
        end local 3 // int preferredWidth
        13: .line 124
            goto 16
        14: .line 126
      StackMap locals: com.googlecode.lanterna.gui2.Label java.lang.String[] com.googlecode.lanterna.TerminalSize
      StackMap stack:
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.labelWidth:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            aload 1 /* lines */
            invokestatic com.googlecode.lanterna.TerminalTextUtils.getWordWrappedText:(I[Ljava/lang/String;)Ljava/util/List;
            astore 3 /* wordWrapped */
        start local 3 // java.util.List wordWrapped
        15: .line 127
            aload 2 /* currentBounds */
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.labelWidth:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            invokevirtual com.googlecode.lanterna.TerminalSize.withColumns:(I)Lcom/googlecode/lanterna/TerminalSize;
            aload 3 /* wordWrapped */
            invokeinterface java.util.List.size:()I
            invokevirtual com.googlecode.lanterna.TerminalSize.withRows:(I)Lcom/googlecode/lanterna/TerminalSize;
            astore 2 /* currentBounds */
        end local 3 // java.util.List wordWrapped
        16: .line 129
      StackMap locals:
      StackMap stack:
            aload 2 /* currentBounds */
            areturn
        end local 2 // com.googlecode.lanterna.TerminalSize currentBounds
        end local 1 // java.lang.String[] lines
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   17     0            this  Lcom/googlecode/lanterna/gui2/Label;
            0   17     1           lines  [Ljava/lang/String;
            0   17     2   currentBounds  Lcom/googlecode/lanterna/TerminalSize;
            5   13     3  preferredWidth  I
            7   10     4            line  Ljava/lang/String;
            8   10     8       lineWidth  I
           15   16     3     wordWrapped  Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
               Name  Flags
      lines          
      currentBounds  

  public synchronized com.googlecode.lanterna.gui2.Label setForegroundColor(com.googlecode.lanterna.TextColor);
    descriptor: (Lcom/googlecode/lanterna/TextColor;)Lcom/googlecode/lanterna/gui2/Label;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.gui2.Label this
        start local 1 // com.googlecode.lanterna.TextColor foregroundColor
         0: .line 140
            aload 0 /* this */
            aload 1 /* foregroundColor */
            putfield com.googlecode.lanterna.gui2.Label.foregroundColor:Lcom/googlecode/lanterna/TextColor;
         1: .line 141
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.TextColor foregroundColor
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lcom/googlecode/lanterna/gui2/Label;
            0    2     1  foregroundColor  Lcom/googlecode/lanterna/TextColor;
    MethodParameters:
                 Name  Flags
      foregroundColor  

  public com.googlecode.lanterna.TextColor getForegroundColor();
    descriptor: ()Lcom/googlecode/lanterna/TextColor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.googlecode.lanterna.gui2.Label this
         0: .line 151
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.foregroundColor:Lcom/googlecode/lanterna/TextColor;
            areturn
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/googlecode/lanterna/gui2/Label;

  public synchronized com.googlecode.lanterna.gui2.Label setBackgroundColor(com.googlecode.lanterna.TextColor);
    descriptor: (Lcom/googlecode/lanterna/TextColor;)Lcom/googlecode/lanterna/gui2/Label;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.gui2.Label this
        start local 1 // com.googlecode.lanterna.TextColor backgroundColor
         0: .line 162
            aload 0 /* this */
            aload 1 /* backgroundColor */
            putfield com.googlecode.lanterna.gui2.Label.backgroundColor:Lcom/googlecode/lanterna/TextColor;
         1: .line 163
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.TextColor backgroundColor
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lcom/googlecode/lanterna/gui2/Label;
            0    2     1  backgroundColor  Lcom/googlecode/lanterna/TextColor;
    MethodParameters:
                 Name  Flags
      backgroundColor  

  public com.googlecode.lanterna.TextColor getBackgroundColor();
    descriptor: ()Lcom/googlecode/lanterna/TextColor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.googlecode.lanterna.gui2.Label this
         0: .line 173
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.backgroundColor:Lcom/googlecode/lanterna/TextColor;
            areturn
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/googlecode/lanterna/gui2/Label;

  public synchronized com.googlecode.lanterna.gui2.Label addStyle(com.googlecode.lanterna.SGR);
    descriptor: (Lcom/googlecode/lanterna/SGR;)Lcom/googlecode/lanterna/gui2/Label;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.gui2.Label this
        start local 1 // com.googlecode.lanterna.SGR sgr
         0: .line 182
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.additionalStyles:Ljava/util/EnumSet;
            aload 1 /* sgr */
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         1: .line 183
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.SGR sgr
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/googlecode/lanterna/gui2/Label;
            0    2     1   sgr  Lcom/googlecode/lanterna/SGR;
    MethodParameters:
      Name  Flags
      sgr   

  public synchronized com.googlecode.lanterna.gui2.Label removeStyle(com.googlecode.lanterna.SGR);
    descriptor: (Lcom/googlecode/lanterna/SGR;)Lcom/googlecode/lanterna/gui2/Label;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.gui2.Label this
        start local 1 // com.googlecode.lanterna.SGR sgr
         0: .line 193
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.additionalStyles:Ljava/util/EnumSet;
            aload 1 /* sgr */
            invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
            pop
         1: .line 194
            aload 0 /* this */
            areturn
        end local 1 // com.googlecode.lanterna.SGR sgr
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/googlecode/lanterna/gui2/Label;
            0    2     1   sgr  Lcom/googlecode/lanterna/SGR;
    MethodParameters:
      Name  Flags
      sgr   

  public synchronized com.googlecode.lanterna.gui2.Label setLabelWidth(java.lang.Integer);
    descriptor: (Ljava/lang/Integer;)Lcom/googlecode/lanterna/gui2/Label;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.googlecode.lanterna.gui2.Label this
        start local 1 // java.lang.Integer labelWidth
         0: .line 212
            aload 0 /* this */
            aload 1 /* labelWidth */
            putfield com.googlecode.lanterna.gui2.Label.labelWidth:Ljava/lang/Integer;
         1: .line 213
            aload 0 /* this */
            areturn
        end local 1 // java.lang.Integer labelWidth
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/googlecode/lanterna/gui2/Label;
            0    2     1  labelWidth  Ljava/lang/Integer;
    MethodParameters:
            Name  Flags
      labelWidth  

  public java.lang.Integer getLabelWidth();
    descriptor: ()Ljava/lang/Integer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.googlecode.lanterna.gui2.Label this
         0: .line 229
            aload 0 /* this */
            getfield com.googlecode.lanterna.gui2.Label.labelWidth:Ljava/lang/Integer;
            areturn
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/googlecode/lanterna/gui2/Label;

  protected com.googlecode.lanterna.gui2.ComponentRenderer<com.googlecode.lanterna.gui2.Label> createDefaultRenderer();
    descriptor: ()Lcom/googlecode/lanterna/gui2/ComponentRenderer;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.googlecode.lanterna.gui2.Label this
         0: .line 234
            new com.googlecode.lanterna.gui2.Label$1
            dup
            aload 0 /* this */
            invokespecial com.googlecode.lanterna.gui2.Label$1.<init>:(Lcom/googlecode/lanterna/gui2/Label;)V
            areturn
        end local 0 // com.googlecode.lanterna.gui2.Label this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/googlecode/lanterna/gui2/Label;
    Signature: ()Lcom/googlecode/lanterna/gui2/ComponentRenderer<Lcom/googlecode/lanterna/gui2/Label;>;
}
Signature: Lcom/googlecode/lanterna/gui2/AbstractComponent<Lcom/googlecode/lanterna/gui2/Label;>;
SourceFile: "Label.java"
NestMembers:
  com.googlecode.lanterna.gui2.Label$1
InnerClasses:
  com.googlecode.lanterna.gui2.Label$1