//# 2 errors, 594 messages
//#
/*
    //#ChannelCommandParser.java:1:1: class: com.dmdirc.commandparser.parsers.ChannelCommandParser
    //#ChannelCommandParser.java:1:1: method: com.dmdirc.commandparser.parsers.ChannelCommandParser.com.dmdirc.commandparser.parsers.ChannelCommandParser__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.commandparser.parsers;

import com.dmdirc.Channel;
import com.dmdirc.Server;
import com.dmdirc.commandparser.CommandArguments;
import com.dmdirc.commandparser.CommandManager;
import com.dmdirc.commandparser.CommandType;
import com.dmdirc.commandparser.commands.ChannelCommand;
import com.dmdirc.commandparser.commands.ChatCommand;
import com.dmdirc.commandparser.commands.Command;
import com.dmdirc.commandparser.commands.GlobalCommand;
import com.dmdirc.commandparser.commands.ServerCommand;
import com.dmdirc.ui.interfaces.InputWindow;

/**
 * A command parser that is tailored for use in a channel environment. Handles
 * both channel and server commands.
 * @author chris
 */
public final class ChannelCommandParser extends CommandParser {
    
    /**
     * 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;
    
    /**
     * The server instance that this parser is attached to.
     */
    private final Server server;
    /**
     * The channel instance that this parser is attached to.
     */
    private final Channel channel;
    
    /**
     * Creates a new instance of ChannelCommandParser.
     * @param newServer The server instance that this parser is attached to
     * @param newChannel The channel instance that this parser is attached to
     */
    public ChannelCommandParser(final Server newServer, final Channel newChannel) {
        super();
    //#ChannelCommandParser.java:66: method: void com.dmdirc.commandparser.parsers.ChannelCommandParser.com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)
    //#ChannelCommandParser.java:66: Warning: suspicious precondition
    //#    The precondition for this.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: com.dmdirc.commandparser.parsers.ChannelCommandParser
    //#    method: void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)
    //#    suspicious precondition index: [12]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): ""._tainted
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): "."._tainted
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): "<Unknown>"._tainted
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): "@"._tainted
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): "Config option not found: "._tainted
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): "commandhistory"._tainted
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): "general"._tainted
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): __Dispatch_Table.loadCommands()V
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1).length
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1)[0..4_294_967_295]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/addons/urlcatcher/UrlListCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/addons/urlcatcher/UrlListCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/CommandInfo.__Descendant_Table[others]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/CommandInfo.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/CommandInfo.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/CommandManager.commands
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/CommandManager.parsers
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/CommandType.TYPE_CHANNEL
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/CommandType.TYPE_CHAT
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/CommandType.TYPE_GLOBAL
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/CommandType.TYPE_QUERY
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/CommandType.TYPE_SERVER
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/ChannelCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/ChannelCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/ChatCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/ChatCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/Command.__Descendant_Table[others]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/GlobalCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/GlobalCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/QueryCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/QueryCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/ServerCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/ServerCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/Ban.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/Ban.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/ChannelSettings.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/ChannelSettings.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/Cycle.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/Cycle.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/KickReason.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/KickReason.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/Mode.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/Mode.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/Names.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/Names.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/Part.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/Part.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/SetNickColour.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/SetNickColour.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/ShowTopic.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/channel/ShowTopic.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/chat/Me.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/chat/Me.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Active.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Active.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/AliasCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/AliasCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/AllServers.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/AllServers.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Clear.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Clear.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Debug.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Debug.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Echo.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Echo.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Exit.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Exit.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Help.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Help.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Ifplugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Ifplugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/LoadPlugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/LoadPlugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/NewServer.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/NewServer.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Notify.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Notify.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/OpenWindow.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/OpenWindow.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/ReloadActions.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/ReloadActions.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/ReloadIdentities.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/ReloadIdentities.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/ReloadPlugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/ReloadPlugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/SaveConfig.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/SaveConfig.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Set.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/Set.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/UnloadPlugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/global/UnloadPlugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/AllChannels.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/AllChannels.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Away.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Away.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Back.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Back.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/ChangeServer.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/ChangeServer.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Ctcp.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Ctcp.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Disconnect.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Disconnect.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Ignore.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Ignore.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/JoinChannelCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/JoinChannelCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Message.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Message.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Nick.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Nick.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Notice.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Notice.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/OpenQuery.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/OpenQuery.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Raw.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Raw.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/RawServerCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/RawServerCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Reconnect.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Reconnect.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Umode.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/commands/server/Umode.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/ChannelCommandParser]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/CommandParser]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/GlobalCommandParser]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/QueryCommandParser]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/ServerCommandParser]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[others]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/parsers/CommandParser.__Dispatch_Table.loadCommands()V
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/parsers/GlobalCommandParser.__Dispatch_Table.loadCommands()V
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/parsers/QueryCommandParser.__Dispatch_Table.loadCommands()V
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/commandparser/parsers/ServerCommandParser.__Dispatch_Table.loadCommands()V
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigManager$1.$SwitchMap$com$dmdirc$config$ConfigTarget$TYPE
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigManager.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigManager.__Descendant_Table[others]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getOptionInt(Ljava/lang/String;Ljava/lang/String;)I
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigManager.__Dispatch_Table.identityApplies(Lcom/dmdirc/config/Identity;)Z
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigManager.stats
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/ConfigSource]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigSource.__Descendant_Table[others]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigSource.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigTarget.__Descendant_Table[com/dmdirc/config/ConfigTarget]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigTarget.__Descendant_Table[others]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigTarget.__Dispatch_Table.getData()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/ConfigTarget.__Dispatch_Table.getType()Lcom/dmdirc/config/ConfigTarget$TYPE;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/Identity.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/Identity.__Descendant_Table[others]
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/Identity.__Dispatch_Table.addListener(Lcom/dmdirc/interfaces/ConfigChangeListener;)V
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/Identity.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/Identity.__Dispatch_Table.getTarget()Lcom/dmdirc/config/ConfigTarget;
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/Identity.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/IdentityManager.__Class_Obj.__Lock
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/IdentityManager.globalconfig
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/IdentityManager.globalconfig.__Tag
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/IdentityManager.globalconfig.file
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/IdentityManager.globalconfig.sources
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/IdentityManager.identities
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/IdentityManager.managers
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): newChannel
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): newServer
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this
    //#input(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.__Tag
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/IdentityManager.globalconfig
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): java.lang.StringBuilder:toString(...)._tainted
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ArrayList(getSources#1) num objects
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ArrayList(getSources#1).__Lock
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1) num objects
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).__Lock
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).__Tag
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).channel
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).file
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).ircd
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).listeners
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).network
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).server
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).sources
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new Hashtable(CommandParser#1) num objects
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new MapList(ConfigManager#1) num objects
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new RollingList(CommandParser#2) num objects
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.__Tag
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.channel
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.commands
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.history
    //#output(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.server
    //#new obj(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): java.lang.StringBuilder:toString(...)
    //#new obj(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ArrayList(getSources#1)
    //#new obj(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1)
    //#new obj(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new Hashtable(CommandParser#1)
    //#new obj(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new MapList(ConfigManager#1)
    //#new obj(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new RollingList(CommandParser#2)
    //#pre[11] (void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): init'ed(com/dmdirc/config/IdentityManager.globalconfig)
    //#pre[12] (void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.__Tag in {com/dmdirc/commandparser/parsers/ChannelCommandParser, com/dmdirc/commandparser/parsers/CommandParser, com/dmdirc/commandparser/parsers/GlobalCommandParser, com/dmdirc/commandparser/parsers/QueryCommandParser, com/dmdirc/commandparser/parsers/ServerCommandParser}
    //#pre[1] (void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): (soft) init'ed(com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1)[0..4_294_967_295])
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/IdentityManager.globalconfig == One-of{old com/dmdirc/config/IdentityManager.globalconfig, &new ConfigManager(getGlobalConfig#1)}
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): com/dmdirc/config/IdentityManager.globalconfig != null
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): java.lang.StringBuilder:toString(...)._tainted == 0
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.__Tag == old this.__Tag
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.__Tag in {com/dmdirc/commandparser/parsers/ChannelCommandParser, com/dmdirc/commandparser/parsers/CommandParser, com/dmdirc/commandparser/parsers/GlobalCommandParser, com/dmdirc/commandparser/parsers/QueryCommandParser, com/dmdirc/commandparser/parsers/ServerCommandParser}
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.channel == newChannel
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): init'ed(this.channel)
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.commands == &new Hashtable(CommandParser#1)
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.history == &new RollingList(CommandParser#2)
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): this.server == newServer
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): init'ed(this.server)
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ArrayList(getSources#1) num objects <= 1
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1) num objects == new ArrayList(getSources#1) num objects
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new MapList(ConfigManager#1) num objects == new ArrayList(getSources#1) num objects
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): init'ed(new ArrayList(getSources#1).__Lock)
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): init'ed(new ConfigManager(getGlobalConfig#1).__Lock)
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).__Tag == com/dmdirc/config/ConfigManager
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).channel == &java.lang.StringBuilder:toString(...)
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): init'ed(new ConfigManager(getGlobalConfig#1).file)
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).ircd == &""
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).network == &""
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).server == &""
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).listeners == &new MapList(ConfigManager#1)
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new ConfigManager(getGlobalConfig#1).sources == &new ArrayList(getSources#1)
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new Hashtable(CommandParser#1) num objects == 1
    //#post(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): new RollingList(CommandParser#2) num objects == 1
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:loadCommands
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.Hashtable
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:com.dmdirc.logger.Logger:assertTrue
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.List:add
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:getTarget
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:com.dmdirc.config.ConfigTarget$TYPE:ordinal
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.String:equalsIgnoreCase
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:addListener
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:getSources
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:com.dmdirc.config.ConfigSource
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:com.dmdirc.util.MapList
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:addConfigManager
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.Collections:sort
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.Map:containsKey
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.Map:get
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.Integer:intValue
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.Integer:valueOf
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:hasOption
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:getOption
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.IllegalArgumentException
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.String:trim
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.Integer:parseInt
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomain
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:com.dmdirc.util.ConfigFile:isKeyDomain
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:com.dmdirc.util.RollingList
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.HashMap
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:getName
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.String:toLowerCase
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:getType
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.Map:entrySet
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.Set:iterator
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.Map$Entry:getKey
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:com.dmdirc.commandparser.CommandType:equals
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:java.util.Map$Entry:getValue
    //#unanalyzed(void com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)): Effects-of-calling:com.dmdirc.util.MapList:add
        
        this.server = newServer;
        this.channel = newChannel;
    }
    //#ChannelCommandParser.java:70: end of method: void com.dmdirc.commandparser.parsers.ChannelCommandParser.com.dmdirc.commandparser.parsers.ChannelCommandParser(Server, Channel)
    
    /** {@inheritDoc} */
    @Override
    protected void loadCommands() {
        CommandManager.loadCommands(this, CommandType.TYPE_GLOBAL,
    //#ChannelCommandParser.java:75: method: void com.dmdirc.commandparser.parsers.ChannelCommandParser.loadCommands()
    //#ChannelCommandParser.java:75: ?precondition failure
    //#    com/dmdirc/commandparser/CommandManager.loadCommands: (soft) supertypes[0..4_294_967_295] != null
    //#    severity: SUPPRESSED
    //#    class: com.dmdirc.commandparser.parsers.ChannelCommandParser
    //#    method: void loadCommands()
    //#    basic block: Entry_BB_1
    //#    assertion: (soft) loadCommands.Param_1[0..4_294_967_295] != null
    //#    callee: void com/dmdirc/commandparser/CommandManager.loadCommands(CommandParser, CommandType[])
    //#    callee assertion: (soft) supertypes[0..4_294_967_295] != null
    //#    callee file: CommandManager.java
    //#    callee precondition index: [5]
    //#    callee srcpos: 320
    //#    VN: loadCommands.Param_1[0..4_294_967_295]
    //#    Expected: Inverse{null}
    //#    Bad: Addr_Set{null, Invalid}
    //#    Attribs:  Ptr  null in Bad  Soft
    //#input(void loadCommands()): com/dmdirc/addons/urlcatcher/UrlListCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/addons/urlcatcher/UrlListCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/CommandInfo.__Descendant_Table[others]
    //#input(void loadCommands()): com/dmdirc/commandparser/CommandInfo.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/CommandInfo.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/CommandManager.commands
    //#input(void loadCommands()): com/dmdirc/commandparser/CommandManager.parsers
    //#input(void loadCommands()): com/dmdirc/commandparser/CommandType.TYPE_CHANNEL
    //#input(void loadCommands()): com/dmdirc/commandparser/CommandType.TYPE_CHAT
    //#input(void loadCommands()): com/dmdirc/commandparser/CommandType.TYPE_GLOBAL
    //#input(void loadCommands()): com/dmdirc/commandparser/CommandType.TYPE_QUERY
    //#input(void loadCommands()): com/dmdirc/commandparser/CommandType.TYPE_SERVER
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/ChannelCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/ChannelCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/ChatCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/ChatCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/Command.__Descendant_Table[others]
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/GlobalCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/GlobalCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/QueryCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/QueryCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/ServerCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/ServerCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/Ban.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/Ban.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/ChannelSettings.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/ChannelSettings.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/Cycle.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/Cycle.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/KickReason.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/KickReason.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/Mode.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/Mode.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/Names.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/Names.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/Part.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/Part.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/SetNickColour.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/SetNickColour.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/ShowTopic.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/channel/ShowTopic.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/chat/Me.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/chat/Me.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Active.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Active.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/AliasCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/AliasCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/AllServers.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/AllServers.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Clear.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Clear.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Debug.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Debug.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Echo.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Echo.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Exit.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Exit.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Help.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Help.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Ifplugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Ifplugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/LoadPlugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/LoadPlugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/NewServer.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/NewServer.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Notify.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Notify.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/OpenWindow.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/OpenWindow.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/ReloadActions.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/ReloadActions.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/ReloadIdentities.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/ReloadIdentities.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/ReloadPlugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/ReloadPlugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/SaveConfig.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/SaveConfig.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Set.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/Set.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/UnloadPlugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/global/UnloadPlugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/AllChannels.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/AllChannels.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Away.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Away.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Back.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Back.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/ChangeServer.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/ChangeServer.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Ctcp.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Ctcp.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Disconnect.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Disconnect.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Ignore.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Ignore.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/JoinChannelCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/JoinChannelCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Message.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Message.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Nick.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Nick.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Notice.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Notice.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/OpenQuery.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/OpenQuery.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Raw.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Raw.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/RawServerCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/RawServerCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Reconnect.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Reconnect.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Umode.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void loadCommands()): com/dmdirc/commandparser/commands/server/Umode.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void loadCommands()): this
    //#input(void loadCommands()): this.commands
    //#pre[2] (void loadCommands()): (soft) this.commands != null
    //#unanalyzed(void loadCommands()): Effects-of-calling:java.util.HashMap
    //#unanalyzed(void loadCommands()): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void loadCommands()): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void loadCommands()): Effects-of-calling:getName
    //#unanalyzed(void loadCommands()): Effects-of-calling:java.lang.String:toLowerCase
    //#unanalyzed(void loadCommands()): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void loadCommands()): Effects-of-calling:getType
    //#unanalyzed(void loadCommands()): Effects-of-calling:java.util.Map:entrySet
    //#unanalyzed(void loadCommands()): Effects-of-calling:java.util.Set:iterator
    //#unanalyzed(void loadCommands()): Effects-of-calling:java.util.Map$Entry:getKey
    //#unanalyzed(void loadCommands()): Effects-of-calling:com.dmdirc.commandparser.CommandType:equals
    //#unanalyzed(void loadCommands()): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void loadCommands()): Effects-of-calling:java.util.Map$Entry:getValue
    //#unanalyzed(void loadCommands()): Effects-of-calling:com.dmdirc.util.MapList:add
                CommandType.TYPE_SERVER, CommandType.TYPE_CHANNEL);
    }
    //#ChannelCommandParser.java:77: end of method: void com.dmdirc.commandparser.parsers.ChannelCommandParser.loadCommands()
    
    /** {@inheritDoc} */
    @Override
    protected void executeCommand(final InputWindow origin,
            final boolean isSilent, final Command command, final CommandArguments args) {
        if (command instanceof ChannelCommand) {
    //#ChannelCommandParser.java:83: method: void com.dmdirc.commandparser.parsers.ChannelCommandParser.executeCommand(InputWindow, bool, Command, CommandArguments)
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): "((\S+\s*){"._tainted
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): "(\S+\s*){"._tainted
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): "}"._tainted
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): "}).*?"._tainted
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): args
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): args.__Tag
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): args.line
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): args.line._tainted
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): args.words
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): args.words.length
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/addons/urlcatcher/UrlListCommand.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Descendant_Table[com/dmdirc/commandparser/CommandArguments]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Descendant_Table[others]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Dispatch_Table.getArguments()[Ljava/lang/String;
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Dispatch_Table.getArgumentsAsString()Ljava/lang/String;
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Dispatch_Table.getArgumentsAsString(I)Ljava/lang/String;
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Dispatch_Table.getWordsAsString(I)Ljava/lang/String;
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Dispatch_Table.getWordsAsString(II)Ljava/lang/String;
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Dispatch_Table.parse()V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/CommandManager.commandChar
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Descendant_Table[com/dmdirc/commandparser/commands/ChannelCommand]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Descendant_Table[com/dmdirc/commandparser/commands/channel/Ban]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Descendant_Table[com/dmdirc/commandparser/commands/channel/ChannelSettings]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Descendant_Table[com/dmdirc/commandparser/commands/channel/Cycle]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Descendant_Table[com/dmdirc/commandparser/commands/channel/KickReason]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Descendant_Table[com/dmdirc/commandparser/commands/channel/Mode]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Descendant_Table[com/dmdirc/commandparser/commands/channel/Names]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Descendant_Table[com/dmdirc/commandparser/commands/channel/Part]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Descendant_Table[com/dmdirc/commandparser/commands/channel/SetNickColour]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Descendant_Table[com/dmdirc/commandparser/commands/channel/ShowTopic]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Descendant_Table[others]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChannelCommand.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/Channel;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChatCommand.__Descendant_Table[com/dmdirc/commandparser/commands/ChatCommand]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChatCommand.__Descendant_Table[com/dmdirc/commandparser/commands/chat/Me]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChatCommand.__Descendant_Table[others]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ChatCommand.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/MessageTarget;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/GlobalCommand.__Descendant_Table[others]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/GlobalCommand.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/ServerCommand]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/AllChannels]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/Away]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/Back]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/ChangeServer]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/Ctcp]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/Disconnect]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/Ignore]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/JoinChannelCommand]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/Message]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/Nick]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/Notice]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/OpenQuery]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/RawServerCommand]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/Raw]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/Reconnect]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[com/dmdirc/commandparser/commands/server/Umode]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Descendant_Table[others]
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/ServerCommand.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/channel/Ban.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/Channel;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/channel/ChannelSettings.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/Channel;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/channel/Cycle.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/Channel;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/channel/KickReason.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/Channel;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/channel/Mode.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/Channel;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/channel/Names.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/Channel;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/channel/Part.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/Channel;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/channel/SetNickColour.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/Channel;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/channel/ShowTopic.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/Channel;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/chat/Me.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;Lcom/dmdirc/MessageTarget;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/Active.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/AliasCommand.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/AllServers.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/Clear.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/Debug.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/Echo.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/Exit.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/Help.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/Ifplugin.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/LoadPlugin.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/NewServer.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/Notify.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/OpenWindow.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/ReloadActions.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/ReloadIdentities.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/ReloadPlugin.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/SaveConfig.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/Set.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/global/UnloadPlugin.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/AllChannels.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/Away.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/Back.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/ChangeServer.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/Ctcp.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/Disconnect.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/Ignore.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/JoinChannelCommand.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/Message.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/Nick.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/Notice.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/OpenQuery.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/Raw.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/RawServerCommand.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/Reconnect.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): com/dmdirc/commandparser/commands/server/Umode.__Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/Server;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): command
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): command.__Tag
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): isSilent
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): origin
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): this
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): this.channel
    //#input(void executeCommand(InputWindow, bool, Command, CommandArguments)): this.server
    //#output(void executeCommand(InputWindow, bool, Command, CommandArguments)): args.words
    //#output(void executeCommand(InputWindow, bool, Command, CommandArguments)): java.lang.String:split(...)._tainted
    //#output(void executeCommand(InputWindow, bool, Command, CommandArguments)): java.lang.String:split(...).length
    //#new obj(void executeCommand(InputWindow, bool, Command, CommandArguments)): java.lang.String:split(...)
    //#pre[8] (void executeCommand(InputWindow, bool, Command, CommandArguments)): command != null
    //#pre[1] (void executeCommand(InputWindow, bool, Command, CommandArguments)): (soft) args != null
    //#pre[3] (void executeCommand(InputWindow, bool, Command, CommandArguments)): (soft) args.__Tag == com/dmdirc/commandparser/CommandArguments
    //#pre[4] (void executeCommand(InputWindow, bool, Command, CommandArguments)): (soft) args.line != null
    //#pre[7] (void executeCommand(InputWindow, bool, Command, CommandArguments)): (soft) init'ed(com/dmdirc/commandparser/CommandManager.commandChar)
    //#pre[11] (void executeCommand(InputWindow, bool, Command, CommandArguments)): (soft) init'ed(args.words)
    //#pre[14] (void executeCommand(InputWindow, bool, Command, CommandArguments)): (soft) this.channel != null
    //#post(void executeCommand(InputWindow, bool, Command, CommandArguments)): init'ed(args.words)
    //#post(void executeCommand(InputWindow, bool, Command, CommandArguments)): init'ed(java.lang.String:split(...)._tainted)
    //#post(void executeCommand(InputWindow, bool, Command, CommandArguments)): java.lang.String:split(...)._tainted == 0
    //#post(void executeCommand(InputWindow, bool, Command, CommandArguments)): init'ed(java.lang.String:split(...).length)
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:getArgumentsAsString
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:getArguments
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:showUsage
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:com.dmdirc.MessageTarget:sendAction
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:java.util.regex.Pattern:compile
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:java.util.regex.Pattern:matcher
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:java.util.regex.Matcher:matches
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:java.util.regex.Matcher:group
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:java.lang.String:split
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:java.util.Arrays:copyOfRange
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:com.dmdirc.ui.interfaces.InputWindow:addLine
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:getCommandChar
    //#unanalyzed(void executeCommand(InputWindow, bool, Command, CommandArguments)): Effects-of-calling:java.lang.Character:valueOf
    //#test_vector(void executeCommand(InputWindow, bool, Command, CommandArguments)): command.__Tag: {0..436_223, 436_225..436_991, 436_993..441_087, 441_089..442_623, 442_625..443_391, 443_393..443_903, 443_905..444_415, 444_417..444_927, 444_929..445_439, 445_441..445_951, 445_953..446_463, 446_465..446_975, 446_977..447_487, 447_489..458_495, 458_497..459_263, 459_265..459_775, 459_777..460_287, 460_289..460_799, 460_801..461_311, 461_313..461_823, 461_825..462_335, 462_337..462_847, 462_849..463_359, 463_361..463_871, 463_873..464_383, 464_385..464_895, 464_897..465_407, 465_409..465_919, 465_921..466_431, 466_433..+Inf}, {436_224, 442_624, 443_392, 443_904, 444_416, 444_928, 445_440, 445_952, 446_464, 446_976}, {436_992, 447_488}, {441_088, 458_496, 459_264, 459_776, 460_288, 460_800, 461_312, 461_824, 462_336, 462_848, 463_360, 463_872, 464_384, 464_896, 465_408, 465_920, 466_432}
            ((ChannelCommand) command).execute(origin, server, channel, isSilent, args);
    //#ChannelCommandParser.java:84: Warning: call too complex - analysis skipped
    //#    call on void execute(InputWindow, Server, Channel, bool, CommandArguments)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.parsers.ChannelCommandParser
    //#    method: void executeCommand(InputWindow, bool, Command, CommandArguments)
    //#    unanalyzed callee: void execute(InputWindow, Server, Channel, bool, CommandArguments)
        } else if (command instanceof ChatCommand) {
            ((ChatCommand) command).execute(origin, server, channel, isSilent, args);
        } else if (command instanceof ServerCommand) {
            ((ServerCommand) command).execute(origin, server, isSilent, args);
    //#ChannelCommandParser.java:88: Warning: call too complex - analysis skipped
    //#    call on void execute(InputWindow, Server, bool, CommandArguments)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.parsers.ChannelCommandParser
    //#    method: void executeCommand(InputWindow, bool, Command, CommandArguments)
    //#    unanalyzed callee: void execute(InputWindow, Server, bool, CommandArguments)
        } else {
            ((GlobalCommand) command).execute(origin, isSilent, args);
    //#ChannelCommandParser.java:90: ?ClassCastException check
    //#    com/dmdirc/commandparser/commands/GlobalCommand.__Descendant_Table[command.__Tag] != null
    //#    severity: SUPPRESSED
    //#    class: com.dmdirc.commandparser.parsers.ChannelCommandParser
    //#    method: void executeCommand(InputWindow, bool, Command, CommandArguments)
    //#    basic block: bb_16
    //#    assertion: com/dmdirc/commandparser/commands/GlobalCommand.__Descendant_Table[command.__Tag] != null
    //#    VN: !(com/dmdirc/commandparser/commands/GlobalCommand.__Descendant_Table[command.__Tag] == null)
    //#    Expected: {-Inf..-1, 1..+Inf}
    //#    Bad: {0}
    //#    Attribs:  Int  Bad singleton  Bad overlaps +/-1000  Bad > Exp
    //#ChannelCommandParser.java:90: Warning: call too complex - analysis skipped
    //#    call on void execute(InputWindow, bool, CommandArguments)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.parsers.ChannelCommandParser
    //#    method: void executeCommand(InputWindow, bool, Command, CommandArguments)
    //#    unanalyzed callee: void execute(InputWindow, bool, CommandArguments)
        }
    }
    //#ChannelCommandParser.java:92: end of method: void com.dmdirc.commandparser.parsers.ChannelCommandParser.executeCommand(InputWindow, bool, Command, CommandArguments)
    
    /**
     * Called when the input was a line of text that was not a command. This normally
     * means it is sent to the server/channel/user as-is, with no further processing.
     *
     * @param origin The window in which the command was typed
     * @param line The line input by the user
     */
    @Override
    protected void handleNonCommand(final InputWindow origin, final String line) {
        channel.sendLine(line);
    //#ChannelCommandParser.java:103: method: void com.dmdirc.commandparser.parsers.ChannelCommandParser.handleNonCommand(InputWindow, String)
    //#ChannelCommandParser.java:103: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.Channel:sendLine(String)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.parsers.ChannelCommandParser
    //#    method: void handleNonCommand(InputWindow, String)
    //#    unanalyzed callee: void com.dmdirc.Channel:sendLine(String)
    //#input(void handleNonCommand(InputWindow, String)): line
    //#input(void handleNonCommand(InputWindow, String)): this
    //#input(void handleNonCommand(InputWindow, String)): this.channel
    //#pre[3] (void handleNonCommand(InputWindow, String)): this.channel != null
    }
    //#ChannelCommandParser.java:104: end of method: void com.dmdirc.commandparser.parsers.ChannelCommandParser.handleNonCommand(InputWindow, String)
    
}
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Descendant_Table[com/dmdirc/commandparser/parsers/ChannelCommandParser]
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.addHistory(Ljava/lang/String;)V
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.executeCommand(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/commands/Command;Lcom/dmdirc/commandparser/CommandArguments;)V
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.getCommandOptions(Lcom/dmdirc/commandparser/commands/Command;)Lcom/dmdirc/commandparser/commands/CommandOptions;
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.getCommandTime(Ljava/lang/String;)J
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.getCommands()Ljava/util/Map;
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.handleInvalidCommand(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/commandparser/CommandArguments;)V
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.handleNonCommand(Lcom/dmdirc/ui/interfaces/InputWindow;Ljava/lang/String;)V
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.hasCommandOptions(Lcom/dmdirc/commandparser/commands/Command;)Z
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.loadCommands()V
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.parseCommand(Lcom/dmdirc/ui/interfaces/InputWindow;Ljava/lang/String;)V
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.parseCommand(Lcom/dmdirc/ui/interfaces/InputWindow;Ljava/lang/String;Z)V
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.parseCommandCtrl(Lcom/dmdirc/ui/interfaces/InputWindow;Ljava/lang/String;)V
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.registerCommand(Lcom/dmdirc/commandparser/commands/Command;Lcom/dmdirc/commandparser/CommandInfo;)V
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.unregisterCommand(Lcom/dmdirc/commandparser/CommandInfo;)V
    //#output(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/ChannelCommandParser]
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Descendant_Table[com/dmdirc/commandparser/parsers/ChannelCommandParser] == &__Dispatch_Table
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/ChannelCommandParser] == &__Dispatch_Table
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.addHistory(Ljava/lang/String;)V == &com/dmdirc/commandparser/parsers/CommandParser.addHistory
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.executeCommand(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/commands/Command;Lcom/dmdirc/commandparser/CommandArguments;)V == &executeCommand
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.getCommandOptions(Lcom/dmdirc/commandparser/commands/Command;)Lcom/dmdirc/commandparser/commands/CommandOptions; == &com/dmdirc/commandparser/parsers/CommandParser.getCommandOptions
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.getCommandTime(Ljava/lang/String;)J == &com/dmdirc/commandparser/parsers/CommandParser.getCommandTime
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.getCommands()Ljava/util/Map; == &com/dmdirc/commandparser/parsers/CommandParser.getCommands
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.handleInvalidCommand(Lcom/dmdirc/ui/interfaces/InputWindow;Lcom/dmdirc/commandparser/CommandArguments;)V == &com/dmdirc/commandparser/parsers/CommandParser.handleInvalidCommand
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.handleNonCommand(Lcom/dmdirc/ui/interfaces/InputWindow;Ljava/lang/String;)V == &handleNonCommand
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.hasCommandOptions(Lcom/dmdirc/commandparser/commands/Command;)Z == &com/dmdirc/commandparser/parsers/CommandParser.hasCommandOptions
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.loadCommands()V == &loadCommands
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.parseCommand(Lcom/dmdirc/ui/interfaces/InputWindow;Ljava/lang/String;)V == &com/dmdirc/commandparser/parsers/CommandParser.parseCommand
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.parseCommand(Lcom/dmdirc/ui/interfaces/InputWindow;Ljava/lang/String;Z)V == &com/dmdirc/commandparser/parsers/CommandParser.parseCommand
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.parseCommandCtrl(Lcom/dmdirc/ui/interfaces/InputWindow;Ljava/lang/String;)V == &com/dmdirc/commandparser/parsers/CommandParser.parseCommandCtrl
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.registerCommand(Lcom/dmdirc/commandparser/commands/Command;Lcom/dmdirc/commandparser/CommandInfo;)V == &com/dmdirc/commandparser/parsers/CommandParser.registerCommand
    //#post(com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init): __Dispatch_Table.unregisterCommand(Lcom/dmdirc/commandparser/CommandInfo;)V == &com/dmdirc/commandparser/parsers/CommandParser.unregisterCommand
    //#ChannelCommandParser.java:: end of method: com.dmdirc.commandparser.parsers.ChannelCommandParser.com.dmdirc.commandparser.parsers.ChannelCommandParser__static_init
    //#ChannelCommandParser.java:: end of class: com.dmdirc.commandparser.parsers.ChannelCommandParser
