//# 0 errors, 385 messages
//#
/*
    //#AliasSubstitutionsPanel.java:1:1: class: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1
    //#AliasSubstitutionsPanel.java:1:1: method: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1.com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1__static_init
    //#AliasSubstitutionsPanel.java:1:1: class: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel
    //#AliasSubstitutionsPanel.java:1:1: method: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init
 * Copyright (c) 2006-2009 Chris Smith, Shane Mc Cormack, Gregory Holmes
 * 
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */

package com.dmdirc.addons.ui_swing.dialogs.aliases;

import com.dmdirc.actions.ActionSubstitutor;
import com.dmdirc.actions.CoreActionType;
import com.dmdirc.actions.interfaces.ActionType;
import com.dmdirc.addons.ui_swing.components.substitutions.Substitution;
import com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionLabel;
import com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel;

import java.util.ArrayList;
import java.util.Map.Entry;

import javax.swing.SwingUtilities;


/**
 * Lists substitutions for aliases.
 */
public class AliasSubstitutionsPanel extends SubstitutionsPanel<ActionType>  {
    //#AliasSubstitutionsPanel.java:41: method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.setType(Object)
    //#input(void setType(Object)): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel]
    //#input(void setType(Object)): __Descendant_Table[others]
    //#input(void setType(Object)): __Dispatch_Table.setType(Lcom/dmdirc/actions/interfaces/ActionType;)V
    //#input(void setType(Object)): this
    //#input(void setType(Object)): this.__Tag
    //#input(void setType(Object)): x0
    //#pre[2] (void setType(Object)): this.__Tag == com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel
    //#unanalyzed(void setType(Object)): Effects-of-calling:javax.swing.SwingUtilities:invokeLater
    //#AliasSubstitutionsPanel.java:41: end of method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.setType(Object)
    //#AliasSubstitutionsPanel.java:41: method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$002(AliasSubstitutionsPanel, List)
    //#input(List access$002(AliasSubstitutionsPanel, List)): x0
    //#input(List access$002(AliasSubstitutionsPanel, List)): x1
    //#output(List access$002(AliasSubstitutionsPanel, List)): return_value
    //#output(List access$002(AliasSubstitutionsPanel, List)): x0.substitutions
    //#pre[1] (List access$002(AliasSubstitutionsPanel, List)): x0 != null
    //#post(List access$002(AliasSubstitutionsPanel, List)): return_value == x1
    //#post(List access$002(AliasSubstitutionsPanel, List)): init'ed(return_value)
    //#post(List access$002(AliasSubstitutionsPanel, List)): x0.substitutions == return_value
    //#AliasSubstitutionsPanel.java:41: end of method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$002(AliasSubstitutionsPanel, List)
    //#AliasSubstitutionsPanel.java:41: method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$100(AliasSubstitutionsPanel)
    //#input(List access$100(AliasSubstitutionsPanel)): x0
    //#input(List access$100(AliasSubstitutionsPanel)): x0.substitutions
    //#output(List access$100(AliasSubstitutionsPanel)): return_value
    //#pre[1] (List access$100(AliasSubstitutionsPanel)): x0 != null
    //#pre[2] (List access$100(AliasSubstitutionsPanel)): init'ed(x0.substitutions)
    //#post(List access$100(AliasSubstitutionsPanel)): return_value == x0.substitutions
    //#post(List access$100(AliasSubstitutionsPanel)): init'ed(return_value)
    //#AliasSubstitutionsPanel.java:41: end of method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$100(AliasSubstitutionsPanel)
    //#AliasSubstitutionsPanel.java:41: method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$200(AliasSubstitutionsPanel)
    //#input(List access$200(AliasSubstitutionsPanel)): x0
    //#input(List access$200(AliasSubstitutionsPanel)): x0.substitutions
    //#output(List access$200(AliasSubstitutionsPanel)): return_value
    //#pre[1] (List access$200(AliasSubstitutionsPanel)): x0 != null
    //#pre[2] (List access$200(AliasSubstitutionsPanel)): init'ed(x0.substitutions)
    //#post(List access$200(AliasSubstitutionsPanel)): return_value == x0.substitutions
    //#post(List access$200(AliasSubstitutionsPanel)): init'ed(return_value)
    //#AliasSubstitutionsPanel.java:41: end of method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$200(AliasSubstitutionsPanel)
    //#AliasSubstitutionsPanel.java:41: method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$300(AliasSubstitutionsPanel)
    //#input(List access$300(AliasSubstitutionsPanel)): x0
    //#input(List access$300(AliasSubstitutionsPanel)): x0.substitutions
    //#output(List access$300(AliasSubstitutionsPanel)): return_value
    //#pre[1] (List access$300(AliasSubstitutionsPanel)): x0 != null
    //#pre[2] (List access$300(AliasSubstitutionsPanel)): init'ed(x0.substitutions)
    //#post(List access$300(AliasSubstitutionsPanel)): return_value == x0.substitutions
    //#post(List access$300(AliasSubstitutionsPanel)): init'ed(return_value)
    //#AliasSubstitutionsPanel.java:41: end of method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$300(AliasSubstitutionsPanel)
    //#AliasSubstitutionsPanel.java:41: method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$400(AliasSubstitutionsPanel)
    //#input(List access$400(AliasSubstitutionsPanel)): x0
    //#input(List access$400(AliasSubstitutionsPanel)): x0.substitutions
    //#output(List access$400(AliasSubstitutionsPanel)): return_value
    //#pre[1] (List access$400(AliasSubstitutionsPanel)): x0 != null
    //#pre[2] (List access$400(AliasSubstitutionsPanel)): init'ed(x0.substitutions)
    //#post(List access$400(AliasSubstitutionsPanel)): return_value == x0.substitutions
    //#post(List access$400(AliasSubstitutionsPanel)): init'ed(return_value)
    //#AliasSubstitutionsPanel.java:41: end of method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$400(AliasSubstitutionsPanel)
    //#AliasSubstitutionsPanel.java:41: method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$500(AliasSubstitutionsPanel)
    //#input(List access$500(AliasSubstitutionsPanel)): x0
    //#input(List access$500(AliasSubstitutionsPanel)): x0.substitutions
    //#output(List access$500(AliasSubstitutionsPanel)): return_value
    //#pre[1] (List access$500(AliasSubstitutionsPanel)): x0 != null
    //#pre[2] (List access$500(AliasSubstitutionsPanel)): init'ed(x0.substitutions)
    //#post(List access$500(AliasSubstitutionsPanel)): return_value == x0.substitutions
    //#post(List access$500(AliasSubstitutionsPanel)): init'ed(return_value)
    //#AliasSubstitutionsPanel.java:41: end of method: List com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$500(AliasSubstitutionsPanel)
    //#AliasSubstitutionsPanel.java:41: method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$600(AliasSubstitutionsPanel)
    //#input(void access$600(AliasSubstitutionsPanel)): ". Drag and drop, or click on an item when "._tainted
    //#input(void access$600(AliasSubstitutionsPanel)): "; "._tainted
    //#input(void access$600(AliasSubstitutionsPanel)): "body { font-family: "._tainted
    //#input(void access$600(AliasSubstitutionsPanel)): "editing the field, to insert it."._tainted
    //#input(void access$600(AliasSubstitutionsPanel)): "font-size: "._tainted
    //#input(void access$600(AliasSubstitutionsPanel)): "pt; }"._tainted
    //#input(void access$600(AliasSubstitutionsPanel)): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel]
    //#input(void access$600(AliasSubstitutionsPanel)): __Descendant_Table[others]
    //#input(void access$600(AliasSubstitutionsPanel)): __Dispatch_Table.layoutComponents()V
    //#input(void access$600(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionLabel]
    //#input(void access$600(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionLabel.__Descendant_Table[others]
    //#input(void access$600(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel$Alignment.VERTICAL
    //#input(void access$600(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/text/TextLabel]
    //#input(void access$600(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[others]
    //#input(void access$600(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.getDocument()Ljavax/swing/text/StyledDocument;
    //#input(void access$600(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.setText(Ljava/lang/String;)V
    //#input(void access$600(AliasSubstitutionsPanel)): x0
    //#input(void access$600(AliasSubstitutionsPanel)): x0.__Tag
    //#input(void access$600(AliasSubstitutionsPanel)): x0.alignment
    //#input(void access$600(AliasSubstitutionsPanel)): x0.description
    //#input(void access$600(AliasSubstitutionsPanel)): x0.description._tainted
    //#input(void access$600(AliasSubstitutionsPanel)): x0.substitutions
    //#pre[1] (void access$600(AliasSubstitutionsPanel)): x0 != null
    //#pre[2] (void access$600(AliasSubstitutionsPanel)): x0.__Tag == com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel
    //#pre[3] (void access$600(AliasSubstitutionsPanel)): x0.alignment != null
    //#pre[4] (void access$600(AliasSubstitutionsPanel)): init'ed(x0.description)
    //#pre[6] (void access$600(AliasSubstitutionsPanel)): x0.substitutions != null
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel$Alignment:equals
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:isVisible
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:setVisible
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:removeAll
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.StyledDocument:setParagraphAttributes
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.DefaultStyledDocument
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.JTextPane
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.html.HTMLEditorKit
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditorKit
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.plaf.basic.BasicTextPaneUI
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setUI
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.UIManager:getFont
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.html.HTMLDocument:getStyleSheet
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:java.awt.Font:getFamily
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:java.awt.Font:getSize
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.html.StyleSheet:addRule
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setOpaque
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditable
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setHighlighter
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:java.awt.Insets
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setMargin
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.SimpleAttributeSet
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.StyleConstants:setAlignment
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:add
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.JSeparator
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:getComponentCount
    //#unanalyzed(void access$600(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.JLabel
    //#AliasSubstitutionsPanel.java:41: end of method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$600(AliasSubstitutionsPanel)
    //#AliasSubstitutionsPanel.java:41: method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$700(AliasSubstitutionsPanel)
    //#input(void access$700(AliasSubstitutionsPanel)): ". Drag and drop, or click on an item when "._tainted
    //#input(void access$700(AliasSubstitutionsPanel)): "; "._tainted
    //#input(void access$700(AliasSubstitutionsPanel)): "body { font-family: "._tainted
    //#input(void access$700(AliasSubstitutionsPanel)): "editing the field, to insert it."._tainted
    //#input(void access$700(AliasSubstitutionsPanel)): "font-size: "._tainted
    //#input(void access$700(AliasSubstitutionsPanel)): "pt; }"._tainted
    //#input(void access$700(AliasSubstitutionsPanel)): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel]
    //#input(void access$700(AliasSubstitutionsPanel)): __Descendant_Table[others]
    //#input(void access$700(AliasSubstitutionsPanel)): __Dispatch_Table.layoutComponents()V
    //#input(void access$700(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionLabel]
    //#input(void access$700(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionLabel.__Descendant_Table[others]
    //#input(void access$700(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel$Alignment.VERTICAL
    //#input(void access$700(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/text/TextLabel]
    //#input(void access$700(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[others]
    //#input(void access$700(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.getDocument()Ljavax/swing/text/StyledDocument;
    //#input(void access$700(AliasSubstitutionsPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.setText(Ljava/lang/String;)V
    //#input(void access$700(AliasSubstitutionsPanel)): x0
    //#input(void access$700(AliasSubstitutionsPanel)): x0.__Tag
    //#input(void access$700(AliasSubstitutionsPanel)): x0.alignment
    //#input(void access$700(AliasSubstitutionsPanel)): x0.description
    //#input(void access$700(AliasSubstitutionsPanel)): x0.description._tainted
    //#input(void access$700(AliasSubstitutionsPanel)): x0.substitutions
    //#pre[1] (void access$700(AliasSubstitutionsPanel)): x0 != null
    //#pre[2] (void access$700(AliasSubstitutionsPanel)): x0.__Tag == com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel
    //#pre[3] (void access$700(AliasSubstitutionsPanel)): x0.alignment != null
    //#pre[4] (void access$700(AliasSubstitutionsPanel)): init'ed(x0.description)
    //#pre[6] (void access$700(AliasSubstitutionsPanel)): x0.substitutions != null
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel$Alignment:equals
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:isVisible
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:setVisible
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:removeAll
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.StyledDocument:setParagraphAttributes
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.DefaultStyledDocument
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.JTextPane
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.html.HTMLEditorKit
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditorKit
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.plaf.basic.BasicTextPaneUI
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setUI
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.UIManager:getFont
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.html.HTMLDocument:getStyleSheet
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:java.awt.Font:getFamily
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:java.awt.Font:getSize
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.html.StyleSheet:addRule
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setOpaque
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditable
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setHighlighter
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:java.awt.Insets
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setMargin
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.SimpleAttributeSet
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.text.StyleConstants:setAlignment
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:add
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.JSeparator
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:getComponentCount
    //#unanalyzed(void access$700(AliasSubstitutionsPanel)): Effects-of-calling:javax.swing.JLabel
    //#AliasSubstitutionsPanel.java:41: end of method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.access$700(AliasSubstitutionsPanel)

    /**
     * A version number for this class. It should be changed whenever the class
     * structure is changed (or anything else that would prevent serialized
     * objects being unserialized with the new class).
     */
    private static final long serialVersionUID = 1;

    /** Instantiates the panel. */
    public AliasSubstitutionsPanel() {
        super("Substitutions may be used in the response field", 
    //#AliasSubstitutionsPanel.java:52: method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()
    //#AliasSubstitutionsPanel.java:52: Warning: suspicious precondition
    //#    The precondition for this.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()
    //#    suspicious precondition index: [1]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): __Descendant_Table[others]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): __Dispatch_Table.setType(Lcom/dmdirc/actions/interfaces/ActionType;)V
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): __Dispatch_Table.setType(Ljava/lang/Object;)V
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): com.dmdirc.actions.CoreActionType.UNKNOWN_COMMAND
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel$Alignment.VERTICAL
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionSubstitutionsPanel]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel.__Descendant_Table[others]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel.__Dispatch_Table.setType(Ljava/lang/Object;)V
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionSubstitutionsPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionSubstitutionsPanel]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionSubstitutionsPanel.__Descendant_Table[others]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionSubstitutionsPanel.__Dispatch_Table.setType(Lcom/dmdirc/actions/interfaces/ActionType;)V
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionSubstitutionsPanel.__Dispatch_Table.setType(Ljava/lang/Object;)V
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): this
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): this.__Tag
    //#output(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): this.__Tag
    //#output(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): this.alignment
    //#output(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): this.description
    //#pre[1] (void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): this.__Tag in {com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionSubstitutionsPanel, com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel}
    //#presumption(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): init'ed(com.dmdirc.actions.CoreActionType.UNKNOWN_COMMAND)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): this.__Tag == old this.__Tag
    //#post(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): this.__Tag in {com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionSubstitutionsPanel, com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel}
    //#post(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): this.alignment == &com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel$Alignment__static_init.new SubstitutionsPanel$Alignment(SubstitutionsPanel$Alignment__static_init#2)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): this.description == &"Substitutions may be used in the response field"
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): Effects-of-calling:javax.swing.SwingUtilities:invokeLater
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:getBorder
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): Effects-of-calling:javax.swing.BorderFactory:createTitledBorder
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:setBorder
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel$Alignment:equals
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): Effects-of-calling:net.miginfocom.swing.MigLayout
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:setLayout
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): Effects-of-calling:javax.swing.JPanel
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()): Effects-of-calling:setType
                SubstitutionsPanel.Alignment.VERTICAL, 
                CoreActionType.UNKNOWN_COMMAND);
    }
    //#AliasSubstitutionsPanel.java:55: end of method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel()

    /**
     * Sets the action type for this substitution panel.
     * 
     * @param type New action type
     */
    @Override
    public void setType(final ActionType type) {
        SwingUtilities.invokeLater(new Runnable() {
    //#AliasSubstitutionsPanel.java:64: method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1.com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1(AliasSubstitutionsPanel, ActionType)
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1(AliasSubstitutionsPanel, ActionType)): Param_1
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1(AliasSubstitutionsPanel, ActionType)): Param_2
    //#input(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1(AliasSubstitutionsPanel, ActionType)): this
    //#output(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1(AliasSubstitutionsPanel, ActionType)): this.this$0
    //#output(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1(AliasSubstitutionsPanel, ActionType)): this.val$type
    //#post(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1(AliasSubstitutionsPanel, ActionType)): this.this$0 == Param_1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1(AliasSubstitutionsPanel, ActionType)): init'ed(this.this$0)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1(AliasSubstitutionsPanel, ActionType)): this.val$type == Param_2
    //#post(void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1(AliasSubstitutionsPanel, ActionType)): init'ed(this.val$type)
    //#AliasSubstitutionsPanel.java:64: end of method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1.com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1(AliasSubstitutionsPanel, ActionType)
    //#AliasSubstitutionsPanel.java:64: method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.setType(ActionType)
    //#input(void setType(ActionType)): this
    //#input(void setType(ActionType)): type

            /** {@inheritDoc} */
            @Override
            public void run() {
                substitutions = new ArrayList<SubstitutionLabel>();
    //#AliasSubstitutionsPanel.java:69: method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1.run()
    //#input(void run()): " onwards"._tainted
    //#input(void run()): "$"._tainted
    //#input(void run()): "-"._tainted
    //#input(void run()): ". Drag and drop, or click on an item when "._tainted
    //#input(void run()): "; "._tainted
    //#input(void run()): "Argument #"._tainted
    //#input(void run()): "body { font-family: "._tainted
    //#input(void run()): "editing the field, to insert it."._tainted
    //#input(void run()): "font-size: "._tainted
    //#input(void run()): "pt; }"._tainted
    //#input(void run()): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionLabel]
    //#input(void run()): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionLabel.__Descendant_Table[others]
    //#input(void run()): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionLabel.java.awt.Color.GRAY
    //#input(void run()): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel$Alignment.VERTICAL
    //#input(void run()): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/text/TextLabel]
    //#input(void run()): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[others]
    //#input(void run()): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.getDocument()Ljavax/swing/text/StyledDocument;
    //#input(void run()): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.setText(Ljava/lang/String;)V
    //#input(void run()): com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel]
    //#input(void run()): com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel.__Descendant_Table[others]
    //#input(void run()): com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel.__Dispatch_Table.layoutComponents()V
    //#input(void run()): this
    //#input(void run()): this.this$0
    //#input(void run()): this.this$0.__Tag
    //#input(void run()): this.this$0.alignment
    //#input(void run()): this.this$0.description
    //#input(void run()): this.this$0.description._tainted
    //#input(void run()): this.val$type
    //#output(void run()): new ArrayList(run#1) num objects
    //#output(void run()): this.this$0.substitutions
    //#new obj(void run()): new ArrayList(run#1)
    //#pre[2] (void run()): this.this$0 != null
    //#pre[3] (void run()): this.__Tag == com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel
    //#pre[4] (void run()): this.alignment != null
    //#pre[5] (void run()): init'ed(this.description)
    //#presumption(void run()): com.dmdirc.actions.ActionSubstitutor:getComponentSubstitutions(...)@74 != null
    //#presumption(void run()): com.dmdirc.actions.ActionSubstitutor:getConfigSubstitutions(...)@80 != null
    //#presumption(void run()): com.dmdirc.actions.ActionSubstitutor:getServerSubstitutions(...)@85 != null
    //#presumption(void run()): java.util.Iterator:next(...)@74 != null
    //#presumption(void run()): java.util.Iterator:next(...)@85 != null
    //#presumption(void run()): java.util.Map:entrySet(...)@74 != null
    //#presumption(void run()): java.util.Map:entrySet(...)@85 != null
    //#post(void run()): this.this$0.substitutions == &new ArrayList(run#1)
    //#post(void run()): new ArrayList(run#1) num objects == 1
    //#unanalyzed(void run()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void run()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void run()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void run()): Effects-of-calling:java.awt.dnd.DragSource:getDefaultDragSource
    //#unanalyzed(void run()): Effects-of-calling:java.awt.dnd.DragSource:createDefaultDragGestureRecognizer
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionLabel:setText
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionLabel:getFont
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Font:getSize
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Font:deriveFont
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionLabel:setFont
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.BorderFactory:createLineBorder
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.BorderFactory:createEmptyBorder
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.BorderFactory:createCompoundBorder
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionLabel:setBorder
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionLabel:setContentAreaFilled
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Insets
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionLabel:setMargin
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionLabel:addMouseListener
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionLabel:addFocusListener
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionLabel:addActionListener
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JButton
    //#unanalyzed(void run()): Effects-of-calling:layoutComponents
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel$Alignment:equals
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:isVisible
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:setVisible
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:removeAll
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void run()): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void run()): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.StyledDocument:setParagraphAttributes
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.DefaultStyledDocument
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.html.HTMLEditorKit
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditorKit
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.plaf.basic.BasicTextPaneUI
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setUI
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.UIManager:getFont
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.html.HTMLDocument:getStyleSheet
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Font:getFamily
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.html.StyleSheet:addRule
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setOpaque
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditable
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setHighlighter
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setMargin
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.SimpleAttributeSet
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.StyleConstants:setAlignment
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:add
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JSeparator
    //#unanalyzed(void run()): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void run()): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void run()): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.substitutions.SubstitutionsPanel:getComponentCount
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JLabel
    //#test_vector(void run()): this.val$type: Addr_Set{null}, Inverse{null}
    //#test_vector(void run()): java.util.Iterator:hasNext(...)@74: {0}, {1}
    //#test_vector(void run()): java.util.Iterator:hasNext(...)@80: {0}, {1}
    //#test_vector(void run()): java.util.Iterator:hasNext(...)@85: {0}, {1}

                if (type != null) {
                    final ActionSubstitutor sub = new ActionSubstitutor(type);
    //#AliasSubstitutionsPanel.java:72: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.actions.ActionSubstitutor(ActionType)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1
    //#    method: void run()
    //#    unanalyzed callee: void com.dmdirc.actions.ActionSubstitutor(ActionType)

                    for (final Entry<String, String> entry : sub.getComponentSubstitutions().
    //#AliasSubstitutionsPanel.java:74: Warning: method not available - call not analyzed
    //#    call on Map com.dmdirc.actions.ActionSubstitutor:getComponentSubstitutions()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1
    //#    method: void run()
    //#    unanalyzed callee: Map com.dmdirc.actions.ActionSubstitutor:getComponentSubstitutions()
                            entrySet()) {
                        substitutions.add(new SubstitutionLabel(new Substitution(entry.getValue(),
                                entry.getKey())));
                    }

                    for (final String entry : sub.getConfigSubstitutions()) {
    //#AliasSubstitutionsPanel.java:80: Warning: method not available - call not analyzed
    //#    call on Set com.dmdirc.actions.ActionSubstitutor:getConfigSubstitutions()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1
    //#    method: void run()
    //#    unanalyzed callee: Set com.dmdirc.actions.ActionSubstitutor:getConfigSubstitutions()
                        substitutions.add(new SubstitutionLabel(new Substitution(entry,
                                entry)));
                    }

                    for (final Entry<String, String> entry : sub.getServerSubstitutions().
    //#AliasSubstitutionsPanel.java:85: Warning: method not available - call not analyzed
    //#    call on Map com.dmdirc.actions.ActionSubstitutor:getServerSubstitutions()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1
    //#    method: void run()
    //#    unanalyzed callee: Map com.dmdirc.actions.ActionSubstitutor:getServerSubstitutions()
                            entrySet()) {
                        substitutions.add(new SubstitutionLabel(new Substitution(entry.getValue(),
                                entry.getKey())));
                    }
                    
                    for (int i = 1; i < 4; i++) {
                        substitutions.add(new SubstitutionLabel(new Substitution("Argument #" + i, Integer.toString(i))));
                    }
                    
                    for (int i = 1; i < 4; i++) {
                        substitutions.add(new SubstitutionLabel(new Substitution("Argument #" + i + " onwards", i + "-")));
                    }
                }

                layoutComponents();
                validate();
    //#AliasSubstitutionsPanel.java:101: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel:validate()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1
    //#    method: void run()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel:validate()
                layoutComponents();
            }
    //#AliasSubstitutionsPanel.java:103: end of method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1.run()
        });
    }
    //#AliasSubstitutionsPanel.java:105: end of method: void com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.setType(ActionType)
}
    //#output(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel$1]
    //#output(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1__static_init): __Dispatch_Table.run()V
    //#post(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel$1] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1__static_init): __Dispatch_Table.run()V == &run
    //#AliasSubstitutionsPanel.java:: end of method: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1.com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1__static_init
    //#AliasSubstitutionsPanel.java:: end of class: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel$1
    //#output(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel]
    //#output(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Dispatch_Table.addListeners()V
    //#output(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Dispatch_Table.initComponents()V
    //#output(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Dispatch_Table.layoutComponents()V
    //#output(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Dispatch_Table.setType(Lcom/dmdirc/actions/interfaces/ActionType;)V
    //#output(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Dispatch_Table.setType(Ljava/lang/Object;)V
    //#output(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel]
    //#post(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/aliases/AliasSubstitutionsPanel] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Dispatch_Table.addListeners()V == &com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel.addListeners
    //#post(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Dispatch_Table.initComponents()V == &com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel.initComponents
    //#post(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Dispatch_Table.layoutComponents()V == &com/dmdirc/addons/ui_swing/components/substitutions/SubstitutionsPanel.layoutComponents
    //#post(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Dispatch_Table.setType(Lcom/dmdirc/actions/interfaces/ActionType;)V == &setType
    //#post(com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init): __Dispatch_Table.setType(Ljava/lang/Object;)V == &setType
    //#AliasSubstitutionsPanel.java:: end of method: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel.com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel__static_init
    //#AliasSubstitutionsPanel.java:: end of class: com.dmdirc.addons.ui_swing.dialogs.aliases.AliasSubstitutionsPanel
