//# 0 errors, 1,140 messages
//#
/*
    //#Set.java:1:1: class: com.dmdirc.commandparser.commands.global.Set
    //#Set.java:1:1: method: com.dmdirc.commandparser.commands.global.Set.com.dmdirc.commandparser.commands.global.Set__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.commands.global;

import com.dmdirc.commandparser.CommandArguments;
import com.dmdirc.commandparser.CommandManager;
import com.dmdirc.commandparser.commands.GlobalCommand;
import com.dmdirc.commandparser.commands.IntelligentCommand;
import com.dmdirc.config.ConfigManager;
import com.dmdirc.config.Identity;
import com.dmdirc.config.IdentityManager;
import com.dmdirc.ui.input.AdditionalTabTargets;
import com.dmdirc.ui.interfaces.InputWindow;

import java.util.List;

/**
 * The set command allows the user to inspect and change global config settings.
 *
 * @author chris
 */
public final class Set extends GlobalCommand implements IntelligentCommand {
    
    /**
     * Creates a new instance of Set.
     */
    public Set() {
        super();
    //#Set.java:48: method: void com.dmdirc.commandparser.commands.global.Set.com.dmdirc.commandparser.commands.global.Set()
    //#input(void com.dmdirc.commandparser.commands.global.Set()): __Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): __Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/addons/urlcatcher/UrlListCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/addons/urlcatcher/UrlListCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandInfo.__Descendant_Table[others]
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandInfo.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandInfo.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandManager.com.dmdirc.ui.input.TabCompletionType.COMMAND
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandManager.commandChar
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandManager.commands
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandManager.parsers
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandType.TYPE_CHANNEL
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandType.TYPE_CHAT
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandType.TYPE_GLOBAL
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandType.TYPE_QUERY
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/CommandType.TYPE_SERVER
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/ChannelCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/ChannelCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/ChatCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/ChatCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/GlobalCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/GlobalCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/QueryCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/QueryCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/ServerCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/ServerCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/Ban.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/Ban.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/ChannelSettings.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/ChannelSettings.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/Cycle.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/Cycle.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/KickReason.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/KickReason.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/Mode.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/Mode.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/Names.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/Names.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/Part.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/Part.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/SetNickColour.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/SetNickColour.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/ShowTopic.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/channel/ShowTopic.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/chat/Me.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/chat/Me.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Active.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Active.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/AliasCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/AliasCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/AllServers.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/AllServers.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Clear.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Clear.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Debug.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Debug.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Echo.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Echo.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Exit.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Exit.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Help.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Help.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Ifplugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Ifplugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/LoadPlugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/LoadPlugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/NewServer.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/NewServer.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Notify.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/Notify.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/OpenWindow.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/OpenWindow.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/ReloadActions.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/ReloadActions.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/ReloadIdentities.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/ReloadIdentities.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/ReloadPlugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/ReloadPlugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/SaveConfig.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/SaveConfig.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/UnloadPlugin.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/global/UnloadPlugin.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/AllChannels.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/AllChannels.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Away.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Away.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Back.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Back.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/ChangeServer.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/ChangeServer.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Ctcp.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Ctcp.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Disconnect.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Disconnect.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Ignore.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Ignore.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/JoinChannelCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/JoinChannelCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Message.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Message.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Nick.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Nick.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Notice.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Notice.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/OpenQuery.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/OpenQuery.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Raw.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Raw.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/RawServerCommand.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/RawServerCommand.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Reconnect.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Reconnect.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Umode.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/commands/server/Umode.__Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/ChannelCommandParser]
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/CommandParser]
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/GlobalCommandParser]
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/QueryCommandParser]
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[com/dmdirc/commandparser/parsers/ServerCommandParser]
    //#input(void com.dmdirc.commandparser.commands.global.Set()): com/dmdirc/commandparser/parsers/CommandParser.__Descendant_Table[others]
    //#input(void com.dmdirc.commandparser.commands.global.Set()): this
    //#input(void com.dmdirc.commandparser.commands.global.Set()): this.__Tag
    //#output(void com.dmdirc.commandparser.commands.global.Set()): this.__Tag
    //#pre[1] (void com.dmdirc.commandparser.commands.global.Set()): init'ed(com/dmdirc/commandparser/CommandManager.commandChar)
    //#post(void com.dmdirc.commandparser.commands.global.Set()): this.__Tag == old this.__Tag
    //#post(void com.dmdirc.commandparser.commands.global.Set()): init'ed(this.__Tag)
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:getName
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:java.lang.String:toLowerCase
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:java.util.Map:remove
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.ui.input.TabCompleter:addEntry
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.ui.input.TabCompleter:removeEntry
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.ServerManager:getServerManager
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.ServerManager:getServers
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:getType
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.Server:getTabCompleter
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.Server:getChannels
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.Server:getChannel
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.Channel:getTabCompleter
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.Server:getQueries
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.Query:getTabCompleter
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.util.MapList:containsKey
    //#unanalyzed(void com.dmdirc.commandparser.commands.global.Set()): Effects-of-calling:com.dmdirc.util.MapList:get
        
        CommandManager.registerCommand(this);
    }
    //#Set.java:51: end of method: void com.dmdirc.commandparser.commands.global.Set.com.dmdirc.commandparser.commands.global.Set()
    
    /** {@inheritDoc} */
    @Override
    public void execute(final InputWindow origin, final boolean isSilent,
            final CommandArguments args) {
        int i = 0;
    //#Set.java:57: method: void com.dmdirc.commandparser.commands.global.Set.execute(InputWindow, bool, CommandArguments)
    //#input(void execute(InputWindow, bool, CommandArguments)): " has been set to: "._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): " has been unset."._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): " is: "._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): " to "._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): ""._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "'."._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "': "._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "((\S+\s*){"._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "(\S+\s*){"._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): ", "._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "."._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): ": setting "._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "<Unknown>"._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "@"._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "Config option not found: "._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "Option not found: "._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "Options in domain '"._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "The current value of "._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "There are no options in the domain '"._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "Unnamed"._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "Valid domains (use "._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "set <domain> to see options within a domain): "._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "}"._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): "}).*?"._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): args
    //#input(void execute(InputWindow, bool, CommandArguments)): args.__Tag
    //#input(void execute(InputWindow, bool, CommandArguments)): args.line
    //#input(void execute(InputWindow, bool, CommandArguments)): args.line._tainted
    //#input(void execute(InputWindow, bool, CommandArguments)): args.words
    //#input(void execute(InputWindow, bool, CommandArguments)): args.words.length
    //#input(void execute(InputWindow, bool, CommandArguments)): com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1).length
    //#input(void execute(InputWindow, bool, CommandArguments)): com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1)[0..4_294_967_295]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Descendant_Table[com/dmdirc/commandparser/CommandArguments]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Descendant_Table[others]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Dispatch_Table.getArguments()[Ljava/lang/String;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Dispatch_Table.getArgumentsAsString(I)Ljava/lang/String;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Dispatch_Table.getWordsAsString(I)Ljava/lang/String;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Dispatch_Table.getWordsAsString(II)Ljava/lang/String;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/commandparser/CommandArguments.__Dispatch_Table.parse()V
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/commandparser/CommandManager.commandChar
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager$1.$SwitchMap$com$dmdirc$config$ConfigTarget$TYPE
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.__Descendant_Table[others]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.__Dispatch_Table.configChanged(Ljava/lang/String;Ljava/lang/String;)V
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getDomains()Ljava/util/Set;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getOptions(Ljava/lang/String;)Ljava/util/Map;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getScope(Ljava/lang/String;Ljava/lang/String;)Lcom/dmdirc/config/Identity;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.__Dispatch_Table.hasOptionString(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.__Dispatch_Table.identityApplies(Lcom/dmdirc/config/Identity;)Z
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.__Dispatch_Table.removeIdentity(Lcom/dmdirc/config/Identity;)V
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigManager.stats
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/ConfigSource]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigSource.__Descendant_Table[others]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigSource.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigSource.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigTarget$TYPE.GLOBAL
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigTarget.__Descendant_Table[com/dmdirc/config/ConfigTarget]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigTarget.__Descendant_Table[others]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigTarget.__Dispatch_Table.getData()Ljava/lang/String;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/ConfigTarget.__Dispatch_Table.getType()Lcom/dmdirc/config/ConfigTarget$TYPE;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.DOMAIN
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.LOGGER
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Descendant_Table[others]
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Dispatch_Table.addListener(Lcom/dmdirc/interfaces/ConfigChangeListener;)V
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Dispatch_Table.equals(Ljava/lang/Object;)Z
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Dispatch_Table.getDomains()Ljava/util/Set;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Dispatch_Table.getOptions(Ljava/lang/String;)Ljava/util/Map;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Dispatch_Table.getTarget()Lcom/dmdirc/config/ConfigTarget;
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Dispatch_Table.removeListener(Lcom/dmdirc/interfaces/ConfigChangeListener;)V
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Dispatch_Table.setOption(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/Identity.__Dispatch_Table.unsetOption(Ljava/lang/String;Ljava/lang/String;)V
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.__Class_Obj.__Lock
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.__Tag
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.file
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.globalConfig
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.globalConfig.__Tag
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.globalConfig.listeners
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.globalConfig.sources
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.listeners
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.myTarget
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.myTarget.__Tag
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.myTarget.type
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.globalconfig
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.globalconfig.__Lock
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.globalconfig.__Tag
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.globalconfig.file
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.globalconfig.sources
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.globalconfig.sources.__Lock
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.identities
    //#input(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.managers
    //#input(void execute(InputWindow, bool, CommandArguments)): isSilent
    //#input(void execute(InputWindow, bool, CommandArguments)): origin
    //#input(void execute(InputWindow, bool, CommandArguments)): this
    //#output(void execute(InputWindow, bool, CommandArguments)): args.words
    //#output(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.globalConfig
    //#output(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.config.needSave
    //#output(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.globalconfig
    //#output(void execute(InputWindow, bool, CommandArguments)): java.lang.String:split(...)._tainted
    //#output(void execute(InputWindow, bool, CommandArguments)): java.lang.String:split(...).length
    //#output(void execute(InputWindow, bool, CommandArguments)): java.lang.StringBuilder:toString(...)._tainted
    //#output(void execute(InputWindow, bool, CommandArguments)): new ArrayList(getSources#1) num objects
    //#output(void execute(InputWindow, bool, CommandArguments)): new ArrayList(getSources#1).__Lock
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1) num objects
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).__Lock
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).__Tag
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).channel
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).file
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).ircd
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).listeners
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).network
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).server
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).sources
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(setOption#2) num objects
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(setOption#2).__Tag
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(setOption#2).channel
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(setOption#2).ircd
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(setOption#2).listeners
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(setOption#2).network
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(setOption#2).server
    //#output(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(setOption#2).sources
    //#output(void execute(InputWindow, bool, CommandArguments)): new MapList(ConfigManager#1) num objects
    //#new obj(void execute(InputWindow, bool, CommandArguments)): java.lang.String:split(...)
    //#new obj(void execute(InputWindow, bool, CommandArguments)): java.lang.StringBuilder:toString(...)
    //#new obj(void execute(InputWindow, bool, CommandArguments)): new ArrayList(getSources#1)
    //#new obj(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1)
    //#new obj(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(setOption#2)
    //#new obj(void execute(InputWindow, bool, CommandArguments)): new MapList(ConfigManager#1)
    //#pre[1] (void execute(InputWindow, bool, CommandArguments)): args != null
    //#pre[3] (void execute(InputWindow, bool, CommandArguments)): args.__Tag == com/dmdirc/commandparser/CommandArguments
    //#pre[24] (void execute(InputWindow, bool, CommandArguments)): init'ed(args.words)
    //#pre[27] (void execute(InputWindow, bool, CommandArguments)): init'ed(com/dmdirc/config/IdentityManager.globalconfig)
    //#pre[4] (void execute(InputWindow, bool, CommandArguments)): (soft) args.line != null
    //#pre[7] (void execute(InputWindow, bool, CommandArguments)): (soft) init'ed(com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1)[0..4_294_967_295])
    //#pre[10] (void execute(InputWindow, bool, CommandArguments)): (soft) init'ed(com/dmdirc/commandparser/CommandManager.commandChar)
    //#pre[11] (void execute(InputWindow, bool, CommandArguments)): (soft) com/dmdirc/config/IdentityManager.config != null
    //#pre[13] (void execute(InputWindow, bool, CommandArguments)): (soft) com/dmdirc/config/IdentityManager.config.__Tag == com/dmdirc/config/Identity
    //#pre[14] (void execute(InputWindow, bool, CommandArguments)): (soft) com/dmdirc/config/IdentityManager.config.file != null
    //#pre[19] (void execute(InputWindow, bool, CommandArguments)): (soft) com/dmdirc/config/IdentityManager.config.listeners != null
    //#pre[20] (void execute(InputWindow, bool, CommandArguments)): (soft) com/dmdirc/config/IdentityManager.config.myTarget != null
    //#pre[21] (void execute(InputWindow, bool, CommandArguments)): (soft) com/dmdirc/config/IdentityManager.config.myTarget.__Tag == com/dmdirc/config/ConfigTarget
    //#pre[22] (void execute(InputWindow, bool, CommandArguments)): (soft) init'ed(com/dmdirc/config/IdentityManager.config.myTarget.type)
    //#pre[25] (void execute(InputWindow, bool, CommandArguments)): (soft) init'ed(com/dmdirc/config/IdentityManager.config.globalConfig)
    //#presumption(void execute(InputWindow, bool, CommandArguments)): i < getArguments(...).length@75
    //#presumption(void execute(InputWindow, bool, CommandArguments)): i < getArguments(...).length@78
    //#presumption(void execute(InputWindow, bool, CommandArguments)): i <= getArguments(...).length@78 - 2
    //#presumption(void execute(InputWindow, bool, CommandArguments)): i < getArguments(...).length@82
    //#presumption(void execute(InputWindow, bool, CommandArguments)): i <= getArguments(...).length@83 - 2
    //#presumption(void execute(InputWindow, bool, CommandArguments)): i <= getArguments(...).length@83 - 3
    //#presumption(void execute(InputWindow, bool, CommandArguments)): i < getArguments(...).length@85
    //#presumption(void execute(InputWindow, bool, CommandArguments)): i <= getArguments(...).length@87 - 2
    //#presumption(void execute(InputWindow, bool, CommandArguments)): i <= getArguments(...).length@87 - 3
    //#presumption(void execute(InputWindow, bool, CommandArguments)): i < getArguments(...).length@91
    //#presumption(void execute(InputWindow, bool, CommandArguments)): i <= getArguments(...).length@91 - 2
    //#presumption(void execute(InputWindow, bool, CommandArguments)): com.dmdirc.Server:getConfigManager(...)@67 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): com.dmdirc.Server:getServerIdentity(...)@66 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): com.dmdirc.WritableFrameContainer:getServer(...)@66 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): com.dmdirc.WritableFrameContainer:getServer(...)@67 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): com.dmdirc.ui.interfaces.InputWindow:getContainer(...)@62 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): com.dmdirc.ui.interfaces.InputWindow:getContainer(...)@66 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): com.dmdirc.ui.interfaces.InputWindow:getContainer(...)@67 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@62 >= 1
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@75 >= 1
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@78 >= 1
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@78 >= 2
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@82 >= 1
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@83 >= 2
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@83 >= 3
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@85 >= 1
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@87 >= 2
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@87 >= 3
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@91 >= 1
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@91 >= 2
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...)[i]@82 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): getArguments(...)[i]@85 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): identity.__Tag@67 == com/dmdirc/config/Identity
    //#presumption(void execute(InputWindow, bool, CommandArguments)): identity.file@67 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): identity.listeners@66 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): identity.myTarget.__Tag@67 == com/dmdirc/config/ConfigTarget
    //#presumption(void execute(InputWindow, bool, CommandArguments)): identity.myTarget@66 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): java.util.Arrays:copyOfRange(...)@99 != null
    //#presumption(void execute(InputWindow, bool, CommandArguments)): manager.__Tag == com/dmdirc/config/ConfigManager
    //#presumption(void execute(InputWindow, bool, CommandArguments)): manager.sources != null
    //#post(void execute(InputWindow, bool, CommandArguments)): args.words != null
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(com/dmdirc/config/IdentityManager.config.globalConfig)
    //#post(void execute(InputWindow, bool, CommandArguments)): possibly_updated(com/dmdirc/config/IdentityManager.config.needSave)
    //#post(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.globalconfig == One-of{old com/dmdirc/config/IdentityManager.globalconfig, &new ConfigManager(getGlobalConfig#1)}
    //#post(void execute(InputWindow, bool, CommandArguments)): com/dmdirc/config/IdentityManager.globalconfig != null
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(java.lang.String:split(...)._tainted)
    //#post(void execute(InputWindow, bool, CommandArguments)): java.lang.String:split(...)._tainted == 0
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(java.lang.String:split(...).length)
    //#post(void execute(InputWindow, bool, CommandArguments)): java.lang.StringBuilder:toString(...)._tainted == 0
    //#post(void execute(InputWindow, bool, CommandArguments)): new ArrayList(getSources#1) num objects <= 1
    //#post(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1) num objects == new ArrayList(getSources#1) num objects
    //#post(void execute(InputWindow, bool, CommandArguments)): new MapList(ConfigManager#1) num objects == new ArrayList(getSources#1) num objects
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(new ArrayList(getSources#1).__Lock)
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(new ConfigManager(getGlobalConfig#1).__Lock)
    //#post(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).__Tag == com/dmdirc/config/ConfigManager
    //#post(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).channel == &java.lang.StringBuilder:toString(...)
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(new ConfigManager(getGlobalConfig#1).file)
    //#post(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).ircd == &""
    //#post(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).network == &""
    //#post(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).server == &""
    //#post(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).listeners == &new MapList(ConfigManager#1)
    //#post(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(getGlobalConfig#1).sources == &new ArrayList(getSources#1)
    //#post(void execute(InputWindow, bool, CommandArguments)): new ConfigManager(setOption#2) num objects <= 1
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(new ConfigManager(setOption#2).__Tag)
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(new ConfigManager(setOption#2).channel)
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(new ConfigManager(setOption#2).ircd)
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(new ConfigManager(setOption#2).listeners)
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(new ConfigManager(setOption#2).network)
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(new ConfigManager(setOption#2).server)
    //#post(void execute(InputWindow, bool, CommandArguments)): init'ed(new ConfigManager(setOption#2).sources)
    //#post(void execute(InputWindow, bool, CommandArguments)): new MapList(ConfigManager#1) num objects <= 1
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:hasOption
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Map:containsKey
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Map:get
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.Integer:intValue
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.Integer:valueOf
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:getOption
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.IllegalArgumentException
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomain
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:com.dmdirc.util.ConfigFile:isKeyDomain
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:sendLine
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.ArrayList:iterator
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:com.dmdirc.interfaces.ConfigChangeListener:configChanged
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomains
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.List:add
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Map:remove
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Map:keySet
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.HashMap
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.List:remove
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.HashSet
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.logging.Logger:finer
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:getSources
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:addListener
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:com.dmdirc.config.ConfigSource
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:com.dmdirc.util.MapList
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:addConfigManager
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:com.dmdirc.util.MapList:containsKey
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:com.dmdirc.util.MapList:get
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.List:addAll
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:getDomains
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.List:contains
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Set:iterator
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:getOptions
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:equals
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:removeListener
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:com.dmdirc.logger.Logger:assertTrue
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:getTarget
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:com.dmdirc.config.ConfigTarget$TYPE:ordinal
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.String:equalsIgnoreCase
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Collections:sort
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.StringBuffer
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.StringBuffer:append
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.List:size
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.List:get
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Map:putAll
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.StringBuffer:length
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.StringBuffer:substring
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Set:addAll
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:getCommandChar
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:com.dmdirc.ui.interfaces.InputWindow:addLine
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.lang.String:split
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.Arrays:copyOfRange
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.regex.Pattern:compile
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.regex.Pattern:matcher
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.regex.Matcher:matches
    //#unanalyzed(void execute(InputWindow, bool, CommandArguments)): Effects-of-calling:java.util.regex.Matcher:group
    //#test_vector(void execute(InputWindow, bool, CommandArguments)): origin: Addr_Set{null}, Inverse{null}
    //#test_vector(void execute(InputWindow, bool, CommandArguments)): com.dmdirc.WritableFrameContainer:getServer(...)@62: Addr_Set{null}, Inverse{null}
    //#test_vector(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@62: {0}, {1..+Inf}
    //#test_vector(void execute(InputWindow, bool, CommandArguments)): getArguments(...).length@70: {0}, {2}
    //#test_vector(void execute(InputWindow, bool, CommandArguments)): java.lang.String:equalsIgnoreCase(...)@62: {0}, {1}
    //#test_vector(void execute(InputWindow, bool, CommandArguments)): java.lang.String:equalsIgnoreCase(...)@82: {0}, {1}
    //#test_vector(void execute(InputWindow, bool, CommandArguments)): java.lang.String:equalsIgnoreCase(...)@85: {0}, {1}
        
        Identity identity = IdentityManager.getConfigIdentity();
        ConfigManager manager = IdentityManager.getGlobalConfig();
        
        if (args.getArguments().length > 0
    //#Set.java:62: Warning: method not available - call not analyzed
    //#    call on WritableFrameContainer com.dmdirc.ui.interfaces.InputWindow:getContainer()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: void execute(InputWindow, bool, CommandArguments)
    //#    unanalyzed callee: WritableFrameContainer com.dmdirc.ui.interfaces.InputWindow:getContainer()
    //#Set.java:62: Warning: method not available - call not analyzed
    //#    call on Server com.dmdirc.WritableFrameContainer:getServer()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: void execute(InputWindow, bool, CommandArguments)
    //#    unanalyzed callee: Server com.dmdirc.WritableFrameContainer:getServer()
                && "--server".equalsIgnoreCase(args.getArguments()[0]) && origin != null
                && origin.getContainer().getServer() != null) {
            i = 1;
            identity = origin.getContainer().getServer().getServerIdentity();
    //#Set.java:66: Warning: method not available - call not analyzed
    //#    call on WritableFrameContainer com.dmdirc.ui.interfaces.InputWindow:getContainer()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: void execute(InputWindow, bool, CommandArguments)
    //#    unanalyzed callee: WritableFrameContainer com.dmdirc.ui.interfaces.InputWindow:getContainer()
    //#Set.java:66: Warning: method not available - call not analyzed
    //#    call on Server com.dmdirc.WritableFrameContainer:getServer()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: void execute(InputWindow, bool, CommandArguments)
    //#    unanalyzed callee: Server com.dmdirc.WritableFrameContainer:getServer()
    //#Set.java:66: Warning: method not available - call not analyzed
    //#    call on Identity com.dmdirc.Server:getServerIdentity()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: void execute(InputWindow, bool, CommandArguments)
    //#    unanalyzed callee: Identity com.dmdirc.Server:getServerIdentity()
            manager = origin.getContainer().getServer().getConfigManager();
    //#Set.java:67: Warning: method not available - call not analyzed
    //#    call on WritableFrameContainer com.dmdirc.ui.interfaces.InputWindow:getContainer()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: void execute(InputWindow, bool, CommandArguments)
    //#    unanalyzed callee: WritableFrameContainer com.dmdirc.ui.interfaces.InputWindow:getContainer()
    //#Set.java:67: Warning: method not available - call not analyzed
    //#    call on Server com.dmdirc.WritableFrameContainer:getServer()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: void execute(InputWindow, bool, CommandArguments)
    //#    unanalyzed callee: Server com.dmdirc.WritableFrameContainer:getServer()
    //#Set.java:67: Warning: method not available - call not analyzed
    //#    call on ConfigManager com.dmdirc.Server:getConfigManager()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: void execute(InputWindow, bool, CommandArguments)
    //#    unanalyzed callee: ConfigManager com.dmdirc.Server:getConfigManager()
        }
        
        switch (args.getArguments().length - i) {
        case 0:
            doDomainList(origin, isSilent, manager);
            break;
        case 1:
            doOptionsList(origin, isSilent, manager, args.getArguments()[i]);
            break;
        case 2:
            doShowOption(origin, isSilent, manager, args.getArguments()[i],
                    args.getArguments()[1 + i]);
            break;
        default:
            if (args.getArguments()[i].equalsIgnoreCase("--unset")) {
                doUnsetOption(origin, isSilent, identity, args.getArguments()[1 + i],
                        args.getArguments()[2 + i]);
            } else if (args.getArguments()[i].equalsIgnoreCase("--append")
                    && args.getArguments().length > 3 + i) {
                doAppendOption(origin, isSilent, identity, manager, 
                        args.getArguments()[1 + i], args.getArguments()[2 + i],
                        args.getArgumentsAsString(3 + i));
            } else {
                doSetOption(origin, isSilent, identity, args.getArguments()[i],
                        args.getArguments()[1 + i], args.getArgumentsAsString(2 + i));
            }
        }
    }
    //#Set.java:95: end of method: void com.dmdirc.commandparser.commands.global.Set.execute(InputWindow, bool, CommandArguments)
    
    /**
     * Shows the user a list of valid domains.
     *
     * @param origin The window the command was issued from
     * @param isSilent Whether or not the command is being silenced or not
     * @param manager The config manager to use to retrieve data
     */
    private void doDomainList(final InputWindow origin, final boolean isSilent,
            final ConfigManager manager) {
        final StringBuffer output = new StringBuffer(67);
    //#Set.java:106: method: void com.dmdirc.commandparser.commands.global.Set.doDomainList(InputWindow, bool, ConfigManager)
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): ", "._tainted
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): "Valid domains (use "._tainted
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): "set <domain> to see options within a domain): "._tainted
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): com/dmdirc/commandparser/CommandManager.commandChar
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): com/dmdirc/config/ConfigManager.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): com/dmdirc/config/ConfigManager.__Descendant_Table[others]
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getDomains()Ljava/util/Set;
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): com/dmdirc/config/Identity.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): com/dmdirc/config/Identity.__Descendant_Table[others]
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): com/dmdirc/config/Identity.__Dispatch_Table.getDomains()Ljava/util/Set;
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): isSilent
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): manager
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): manager.__Tag
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): manager.sources
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): origin
    //#input(void doDomainList(InputWindow, bool, ConfigManager)): this
    //#pre[1] (void doDomainList(InputWindow, bool, ConfigManager)): init'ed(com/dmdirc/commandparser/CommandManager.commandChar)
    //#pre[3] (void doDomainList(InputWindow, bool, ConfigManager)): manager != null
    //#pre[4] (void doDomainList(InputWindow, bool, ConfigManager)): manager.__Tag == com/dmdirc/config/ConfigManager
    //#pre[5] (void doDomainList(InputWindow, bool, ConfigManager)): manager.sources != null
    //#presumption(void doDomainList(InputWindow, bool, ConfigManager)): java.lang.StringBuffer:length(...)@117 >= -2_147_483_646
    //#unanalyzed(void doDomainList(InputWindow, bool, ConfigManager)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void doDomainList(InputWindow, bool, ConfigManager)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void doDomainList(InputWindow, bool, ConfigManager)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void doDomainList(InputWindow, bool, ConfigManager)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void doDomainList(InputWindow, bool, ConfigManager)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomains
    //#unanalyzed(void doDomainList(InputWindow, bool, ConfigManager)): Effects-of-calling:java.util.Map:keySet
    //#unanalyzed(void doDomainList(InputWindow, bool, ConfigManager)): Effects-of-calling:java.util.HashSet
    //#unanalyzed(void doDomainList(InputWindow, bool, ConfigManager)): Effects-of-calling:getDomains
    //#unanalyzed(void doDomainList(InputWindow, bool, ConfigManager)): Effects-of-calling:java.util.Set:addAll
    //#unanalyzed(void doDomainList(InputWindow, bool, ConfigManager)): Effects-of-calling:com.dmdirc.ui.interfaces.InputWindow:addLine
    //#test_vector(void doDomainList(InputWindow, bool, ConfigManager)): java.util.Iterator:hasNext(...)@112: {0}, {1}
        
        output.append("Valid domains (use ");
        output.append(CommandManager.getCommandChar());
        output.append("set <domain> to see options within a domain): ");
        
        for (String domain : manager.getDomains()) {
            output.append(domain);
            output.append(", ");
        }
        
        sendLine(origin, isSilent, FORMAT_OUTPUT, output.substring(0, output.length() - 2));
    }
    //#Set.java:118: end of method: void com.dmdirc.commandparser.commands.global.Set.doDomainList(InputWindow, bool, ConfigManager)
    
    /**
     * Shows the user a list of valid options within a domain.
     *
     * @param origin The window the command was issued from
     * @param isSilent Whether or not the command is being silenced or not
     * @param manager The config manager to use to retrieve data
     * @param domain The domain to be inspected
     */
    private void doOptionsList(final InputWindow origin,
            final boolean isSilent, final ConfigManager manager, final String domain) {
        final StringBuffer output = new StringBuffer(24);
    //#Set.java:130: method: void com.dmdirc.commandparser.commands.global.Set.doOptionsList(InputWindow, bool, ConfigManager, String)
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): "'."._tainted
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): "': "._tainted
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): ", "._tainted
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): "Options in domain '"._tainted
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): "There are no options in the domain '"._tainted
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): com/dmdirc/config/ConfigManager.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): com/dmdirc/config/ConfigManager.__Descendant_Table[others]
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getOptions(Ljava/lang/String;)Ljava/util/Map;
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): com/dmdirc/config/Identity.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): com/dmdirc/config/Identity.__Descendant_Table[others]
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): com/dmdirc/config/Identity.__Dispatch_Table.getOptions(Ljava/lang/String;)Ljava/util/Map;
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): domain
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): domain._tainted
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): isSilent
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): manager
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): manager.__Tag
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): manager.sources
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): origin
    //#input(void doOptionsList(InputWindow, bool, ConfigManager, String)): this
    //#pre[4] (void doOptionsList(InputWindow, bool, ConfigManager, String)): manager != null
    //#pre[5] (void doOptionsList(InputWindow, bool, ConfigManager, String)): manager.__Tag == com/dmdirc/config/ConfigManager
    //#pre[6] (void doOptionsList(InputWindow, bool, ConfigManager, String)): manager.sources != null
    //#presumption(void doOptionsList(InputWindow, bool, ConfigManager, String)): java.lang.StringBuffer:length(...)@145 >= -2_147_483_646
    //#presumption(void doOptionsList(InputWindow, bool, ConfigManager, String)): java.util.Map:keySet(...)@138 != null
    //#unanalyzed(void doOptionsList(InputWindow, bool, ConfigManager, String)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void doOptionsList(InputWindow, bool, ConfigManager, String)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomain
    //#unanalyzed(void doOptionsList(InputWindow, bool, ConfigManager, String)): Effects-of-calling:java.util.HashMap
    //#unanalyzed(void doOptionsList(InputWindow, bool, ConfigManager, String)): Effects-of-calling:getOptions
    //#unanalyzed(void doOptionsList(InputWindow, bool, ConfigManager, String)): Effects-of-calling:java.util.List:size
    //#unanalyzed(void doOptionsList(InputWindow, bool, ConfigManager, String)): Effects-of-calling:java.util.List:get
    //#unanalyzed(void doOptionsList(InputWindow, bool, ConfigManager, String)): Effects-of-calling:java.util.Map:putAll
    //#unanalyzed(void doOptionsList(InputWindow, bool, ConfigManager, String)): Effects-of-calling:com.dmdirc.ui.interfaces.InputWindow:addLine
    //#test_vector(void doOptionsList(InputWindow, bool, ConfigManager, String)): java.util.Iterator:hasNext(...)@138: {0}, {1}
        
        output.append("Options in domain '");
        output.append(domain);
        output.append("': ");
        
        boolean found = false;
        
        for (String option : manager.getOptions(domain).keySet()) {
            output.append(option);
            output.append(", ");
            found = true;
        }
        
        if (found) {
            sendLine(origin, isSilent, FORMAT_OUTPUT, output.substring(0, output.length() - 2));
        } else {
            sendLine(origin, isSilent, FORMAT_ERROR, 
                    "There are no options in the domain '" + domain + "'.");
        }
    }
    //#Set.java:150: end of method: void com.dmdirc.commandparser.commands.global.Set.doOptionsList(InputWindow, bool, ConfigManager, String)
    
    /**
     * Shows the user the current value of one option.
     *
     * @param origin The window the command was issued from
     * @param isSilent Whether or not the command is being silenced or not
     * @param manager The config manager to use to retrieve data
     * @param domain The domain of the option
     * @param option The name of the option
     */
    private void doShowOption(final InputWindow origin,
            final boolean isSilent, final ConfigManager manager,
            final String domain, final String option) {
        if (manager.hasOptionString(domain, option)) {
    //#Set.java:164: method: void com.dmdirc.commandparser.commands.global.Set.doShowOption(InputWindow, bool, ConfigManager, String, String)
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): " is: "._tainted
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): "."._tainted
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): "Config option not found: "._tainted
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): "Option not found: "._tainted
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): "The current value of "._tainted
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigManager.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigManager.__Descendant_Table[others]
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.hasOptionString(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigManager.stats
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/ConfigSource]
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigSource.__Descendant_Table[others]
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigSource.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/ConfigSource.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/Identity.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/Identity.__Descendant_Table[others]
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): domain
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): domain._tainted
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): isSilent
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): manager
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): manager.__Tag
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): manager.file
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): manager.sources
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): option
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): option._tainted
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): origin
    //#input(void doShowOption(InputWindow, bool, ConfigManager, String, String)): this
    //#pre[5] (void doShowOption(InputWindow, bool, ConfigManager, String, String)): manager != null
    //#pre[7] (void doShowOption(InputWindow, bool, ConfigManager, String, String)): manager.__Tag == com/dmdirc/config/ConfigManager
    //#pre[9] (void doShowOption(InputWindow, bool, ConfigManager, String, String)): (soft) manager.sources != null
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:hasOption
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.util.Map:containsKey
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.util.Map:get
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.lang.Integer:intValue
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.lang.Integer:valueOf
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:getOption
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.lang.IllegalArgumentException
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomain
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:com.dmdirc.util.ConfigFile:isKeyDomain
    //#unanalyzed(void doShowOption(InputWindow, bool, ConfigManager, String, String)): Effects-of-calling:com.dmdirc.ui.interfaces.InputWindow:addLine
            sendLine(origin, isSilent, FORMAT_OUTPUT, "The current value of "
                    + domain + "." + option + " is: " + manager.getOption(domain, option));
        } else {
            sendLine(origin, isSilent, FORMAT_ERROR, "Option not found: " + domain + "." + option);
        }
    }
    //#Set.java:170: end of method: void com.dmdirc.commandparser.commands.global.Set.doShowOption(InputWindow, bool, ConfigManager, String, String)
    
    /**
     * Sets the value of the specified option.
     *
     * @param origin The window the command was issued from
     * @param isSilent Whether or not the command is being silenced or not
     * @param identity The identity to use to set data
     * @param domain The domain of the option
     * @param option The name of the option
     * @param newvalue The value the option should be set to
     */
    private void doSetOption(final InputWindow origin,
            final boolean isSilent, final Identity identity,
            final String domain, final String option, final String newvalue) {
        identity.setOption(domain, option, newvalue);
    //#Set.java:185: method: void com.dmdirc.commandparser.commands.global.Set.doSetOption(InputWindow, bool, Identity, String, String, String)
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): " has been set to: "._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): " to "._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): ""._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): "."._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): ": setting "._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): "<Unknown>"._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): "@"._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): "Config option not found: "._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): "Unnamed"._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1).length
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1)[0..4_294_967_295]
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigManager$1.$SwitchMap$com$dmdirc$config$ConfigTarget$TYPE
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigManager.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigManager.__Descendant_Table[others]
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.configChanged(Ljava/lang/String;Ljava/lang/String;)V
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getScope(Ljava/lang/String;Ljava/lang/String;)Lcom/dmdirc/config/Identity;
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.identityApplies(Lcom/dmdirc/config/Identity;)Z
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.removeIdentity(Lcom/dmdirc/config/Identity;)V
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigManager.stats
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigTarget$TYPE.GLOBAL
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigTarget.__Descendant_Table[com/dmdirc/config/ConfigTarget]
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigTarget.__Descendant_Table[others]
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigTarget.__Dispatch_Table.getData()Ljava/lang/String;
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/ConfigTarget.__Dispatch_Table.getType()Lcom/dmdirc/config/ConfigTarget$TYPE;
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.DOMAIN
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.LOGGER
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Descendant_Table[others]
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.addListener(Lcom/dmdirc/interfaces/ConfigChangeListener;)V
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.equals(Ljava/lang/Object;)Z
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.getDomains()Ljava/util/Set;
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.getOptions(Ljava/lang/String;)Ljava/util/Map;
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.getTarget()Lcom/dmdirc/config/ConfigTarget;
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.removeListener(Lcom/dmdirc/interfaces/ConfigChangeListener;)V
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.setOption(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.unsetOption(Ljava/lang/String;Ljava/lang/String;)V
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/IdentityManager.identities
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): com/dmdirc/config/IdentityManager.managers
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): domain
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): domain._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.__Tag
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.file
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.globalConfig
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.globalConfig.__Tag
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.globalConfig.listeners
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.globalConfig.sources
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.listeners
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.myTarget
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.myTarget.__Tag
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.myTarget.type
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): isSilent
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): newvalue
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): newvalue._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): option
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): option._tainted
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): origin
    //#input(void doSetOption(InputWindow, bool, Identity, String, String, String)): this
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.globalConfig
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.needSave
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): java.lang.StringBuilder:toString(...)._tainted
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ArrayList(getSources#1) num objects
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ArrayList(getSources#1).__Lock
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ConfigManager(setOption#2) num objects
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ConfigManager(setOption#2).__Tag
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ConfigManager(setOption#2).channel
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ConfigManager(setOption#2).ircd
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ConfigManager(setOption#2).listeners
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ConfigManager(setOption#2).network
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ConfigManager(setOption#2).server
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ConfigManager(setOption#2).sources
    //#output(void doSetOption(InputWindow, bool, Identity, String, String, String)): new MapList(ConfigManager#1) num objects
    //#new obj(void doSetOption(InputWindow, bool, Identity, String, String, String)): java.lang.StringBuilder:toString(...)
    //#new obj(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ArrayList(getSources#1)
    //#new obj(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ConfigManager(setOption#2)
    //#new obj(void doSetOption(InputWindow, bool, Identity, String, String, String)): new MapList(ConfigManager#1)
    //#pre[7] (void doSetOption(InputWindow, bool, Identity, String, String, String)): identity != null
    //#pre[9] (void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.__Tag == com/dmdirc/config/Identity
    //#pre[10] (void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.file != null
    //#pre[16] (void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.myTarget != null
    //#pre[17] (void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.myTarget.__Tag == com/dmdirc/config/ConfigTarget
    //#pre[18] (void doSetOption(InputWindow, bool, Identity, String, String, String)): init'ed(identity.myTarget.type)
    //#pre[1] (void doSetOption(InputWindow, bool, Identity, String, String, String)): (soft) init'ed(com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1)[0..4_294_967_295])
    //#pre[15] (void doSetOption(InputWindow, bool, Identity, String, String, String)): (soft) identity.listeners != null
    //#pre[23] (void doSetOption(InputWindow, bool, Identity, String, String, String)): (soft) init'ed(identity.globalConfig)
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): identity.globalConfig == One-of{old identity.globalConfig, &new ConfigManager(setOption#2)}
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): init'ed(identity.globalConfig)
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): possibly_updated(identity.needSave)
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): java.lang.StringBuilder:toString(...)._tainted == 0
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ArrayList(getSources#1) num objects <= 1
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): new ConfigManager(setOption#2) num objects == new ArrayList(getSources#1) num objects
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): new MapList(ConfigManager#1) num objects == new ArrayList(getSources#1) num objects
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): init'ed(new ArrayList(getSources#1).__Lock)
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): init'ed(new ConfigManager(setOption#2).__Tag)
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): init'ed(new ConfigManager(setOption#2).channel)
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): init'ed(new ConfigManager(setOption#2).ircd)
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): init'ed(new ConfigManager(setOption#2).listeners)
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): init'ed(new ConfigManager(setOption#2).network)
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): init'ed(new ConfigManager(setOption#2).server)
    //#post(void doSetOption(InputWindow, bool, Identity, String, String, String)): init'ed(new ConfigManager(setOption#2).sources)
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.Map:containsKey
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.Map:get
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.lang.Integer:intValue
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.lang.Integer:valueOf
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:hasOption
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:getOption
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.lang.IllegalArgumentException
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomain
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:com.dmdirc.util.ConfigFile:isKeyDomain
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.ArrayList:iterator
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:com.dmdirc.interfaces.ConfigChangeListener:configChanged
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomains
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.List:add
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.Map:remove
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.Map:keySet
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.HashMap
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.List:remove
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.HashSet
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.logging.Logger:finer
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:getSources
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:addListener
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:com.dmdirc.config.ConfigSource
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:com.dmdirc.util.MapList
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:addConfigManager
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:com.dmdirc.util.MapList:containsKey
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:com.dmdirc.util.MapList:get
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.List:addAll
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:getDomains
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.List:contains
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.Set:iterator
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:getOptions
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:equals
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:removeListener
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:com.dmdirc.logger.Logger:assertTrue
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:getTarget
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:com.dmdirc.config.ConfigTarget$TYPE:ordinal
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.lang.String:equalsIgnoreCase
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:java.util.Collections:sort
    //#unanalyzed(void doSetOption(InputWindow, bool, Identity, String, String, String)): Effects-of-calling:com.dmdirc.ui.interfaces.InputWindow:addLine
        
        sendLine(origin, isSilent, FORMAT_OUTPUT, domain + "." + option +
                " has been set to: " + newvalue);
    }
    //#Set.java:189: end of method: void com.dmdirc.commandparser.commands.global.Set.doSetOption(InputWindow, bool, Identity, String, String, String)
    
    /**
     * Appends data to the specified option.
     *
     * @param origin The window the command was issued from
     * @param isSilent Whether or not the command is being silenced or not
     * @param identity The identity to use to set data
     * @param manager The config manager to use to retrieve data
     * @param domain The domain of the option
     * @param option The name of the option
     * @param data The data to be appended
     */
    private void doAppendOption(final InputWindow origin,
            final boolean isSilent, final Identity identity, final ConfigManager manager,
            final String domain,final String option, final String data) {
        doSetOption(origin, isSilent, identity, domain, option,
    //#Set.java:205: method: void com.dmdirc.commandparser.commands.global.Set.doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): " has been set to: "._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): " to "._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): ""._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): "."._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): ": setting "._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): "<Unknown>"._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): "@"._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): "Config option not found: "._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): "Unnamed"._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1).length
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1)[0..4_294_967_295]
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigManager$1.$SwitchMap$com$dmdirc$config$ConfigTarget$TYPE
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigManager.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigManager.__Descendant_Table[others]
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.configChanged(Ljava/lang/String;Ljava/lang/String;)V
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getScope(Ljava/lang/String;Ljava/lang/String;)Lcom/dmdirc/config/Identity;
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.hasOptionString(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.identityApplies(Lcom/dmdirc/config/Identity;)Z
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigManager.__Dispatch_Table.removeIdentity(Lcom/dmdirc/config/Identity;)V
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigManager.stats
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/ConfigSource]
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigSource.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigSource.__Descendant_Table[others]
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigSource.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigSource.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigTarget$TYPE.GLOBAL
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigTarget.__Descendant_Table[com/dmdirc/config/ConfigTarget]
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigTarget.__Descendant_Table[others]
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigTarget.__Dispatch_Table.getData()Ljava/lang/String;
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/ConfigTarget.__Dispatch_Table.getType()Lcom/dmdirc/config/ConfigTarget$TYPE;
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.DOMAIN
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.LOGGER
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Descendant_Table[others]
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.addListener(Lcom/dmdirc/interfaces/ConfigChangeListener;)V
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.equals(Ljava/lang/Object;)Z
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.getDomains()Ljava/util/Set;
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.getOption(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.getOptions(Ljava/lang/String;)Ljava/util/Map;
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.getTarget()Lcom/dmdirc/config/ConfigTarget;
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.hasOption(Ljava/lang/String;Ljava/lang/String;)Z
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.removeListener(Lcom/dmdirc/interfaces/ConfigChangeListener;)V
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.setOption(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.unsetOption(Ljava/lang/String;Ljava/lang/String;)V
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/IdentityManager.identities
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): com/dmdirc/config/IdentityManager.managers
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): data
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): data._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): domain
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): domain._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.__Tag
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.file
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.globalConfig
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.globalConfig.__Tag
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.globalConfig.listeners
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.globalConfig.sources
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.listeners
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.myTarget
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.myTarget.__Tag
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.myTarget.type
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): isSilent
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): manager
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): manager.__Tag
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): manager.file
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): manager.sources
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): option
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): option._tainted
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): origin
    //#input(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): this
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.globalConfig
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.needSave
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): java.lang.StringBuilder:toString(...)._tainted
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ArrayList(getSources#1) num objects
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ArrayList(getSources#1).__Lock
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ConfigManager(setOption#2) num objects
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ConfigManager(setOption#2).__Tag
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ConfigManager(setOption#2).channel
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ConfigManager(setOption#2).ircd
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ConfigManager(setOption#2).listeners
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ConfigManager(setOption#2).network
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ConfigManager(setOption#2).server
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ConfigManager(setOption#2).sources
    //#output(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new MapList(ConfigManager#1) num objects
    //#new obj(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): java.lang.StringBuilder:toString(...)
    //#new obj(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ArrayList(getSources#1)
    //#new obj(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ConfigManager(setOption#2)
    //#new obj(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new MapList(ConfigManager#1)
    //#pre[8] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity != null
    //#pre[10] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.__Tag == com/dmdirc/config/Identity
    //#pre[11] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.file != null
    //#pre[17] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.myTarget != null
    //#pre[18] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.myTarget.__Tag == com/dmdirc/config/ConfigTarget
    //#pre[19] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): init'ed(identity.myTarget.type)
    //#pre[21] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): manager != null
    //#pre[23] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): manager.__Tag == com/dmdirc/config/ConfigManager
    //#pre[1] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): (soft) init'ed(com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1)[0..4_294_967_295])
    //#pre[16] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): (soft) identity.listeners != null
    //#pre[25] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): (soft) manager.sources != null
    //#pre[27] (void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): (soft) init'ed(identity.globalConfig)
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): identity.globalConfig == One-of{old identity.globalConfig, &new ConfigManager(setOption#2)}
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): init'ed(identity.globalConfig)
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): possibly_updated(identity.needSave)
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): java.lang.StringBuilder:toString(...)._tainted == 0
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ArrayList(getSources#1) num objects <= 1
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new ConfigManager(setOption#2) num objects == new ArrayList(getSources#1) num objects
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): new MapList(ConfigManager#1) num objects == new ArrayList(getSources#1) num objects
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): init'ed(new ArrayList(getSources#1).__Lock)
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): init'ed(new ConfigManager(setOption#2).__Tag)
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): init'ed(new ConfigManager(setOption#2).channel)
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): init'ed(new ConfigManager(setOption#2).ircd)
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): init'ed(new ConfigManager(setOption#2).listeners)
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): init'ed(new ConfigManager(setOption#2).network)
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): init'ed(new ConfigManager(setOption#2).server)
    //#post(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): init'ed(new ConfigManager(setOption#2).sources)
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:hasOption
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.Map:containsKey
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.Map:get
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.lang.Integer:intValue
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.lang.Integer:valueOf
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:getOption
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.lang.IllegalArgumentException
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomain
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:com.dmdirc.util.ConfigFile:isKeyDomain
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:sendLine
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.ArrayList:iterator
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:com.dmdirc.interfaces.ConfigChangeListener:configChanged
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomains
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.List:add
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.Map:remove
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.Map:keySet
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.HashMap
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.List:remove
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.HashSet
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.logging.Logger:finer
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:getSources
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:addListener
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:com.dmdirc.config.ConfigSource
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:com.dmdirc.util.MapList
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:addConfigManager
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:com.dmdirc.util.MapList:containsKey
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:com.dmdirc.util.MapList:get
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.List:addAll
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:getDomains
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.List:contains
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.Set:iterator
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:getOptions
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:equals
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:removeListener
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:com.dmdirc.logger.Logger:assertTrue
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:getTarget
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:com.dmdirc.config.ConfigTarget$TYPE:ordinal
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.lang.String:equalsIgnoreCase
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:java.util.Collections:sort
    //#unanalyzed(void doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)): Effects-of-calling:com.dmdirc.ui.interfaces.InputWindow:addLine
                (manager.hasOptionString(domain, option) ?
                    manager.getOption(domain, option) : "") + data);
    }
    //#Set.java:208: end of method: void com.dmdirc.commandparser.commands.global.Set.doAppendOption(InputWindow, bool, Identity, ConfigManager, String, String, String)
    
    /**
     * Unsets the specified option.
     *
     * @param origin The window the command was issued from
     * @param isSilent Whether or not the command is being silenced or not
     * @param identity The identity to use to set data
     * @param domain The domain of the option
     * @param option The name of the option
     */
    private void doUnsetOption(final InputWindow origin,
            final boolean isSilent, final Identity identity, final String domain,
            final String option) {
        identity.unsetOption(domain, option);
    //#Set.java:222: method: void com.dmdirc.commandparser.commands.global.Set.doUnsetOption(InputWindow, bool, Identity, String, String)
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): " has been unset."._tainted
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): "."._tainted
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): com/dmdirc/config/Identity.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): com/dmdirc/config/Identity.__Descendant_Table[others]
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): com/dmdirc/config/Identity.__Dispatch_Table.unsetOption(Ljava/lang/String;Ljava/lang/String;)V
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): domain
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): domain._tainted
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): identity
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): identity.__Tag
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): identity.file
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): identity.listeners
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): isSilent
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): option
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): option._tainted
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): origin
    //#input(void doUnsetOption(InputWindow, bool, Identity, String, String)): this
    //#output(void doUnsetOption(InputWindow, bool, Identity, String, String)): identity.needSave
    //#pre[4] (void doUnsetOption(InputWindow, bool, Identity, String, String)): identity != null
    //#pre[6] (void doUnsetOption(InputWindow, bool, Identity, String, String)): identity.__Tag == com/dmdirc/config/Identity
    //#pre[7] (void doUnsetOption(InputWindow, bool, Identity, String, String)): identity.file != null
    //#post(void doUnsetOption(InputWindow, bool, Identity, String, String)): identity.needSave == 1
    //#unanalyzed(void doUnsetOption(InputWindow, bool, Identity, String, String)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomain
    //#unanalyzed(void doUnsetOption(InputWindow, bool, Identity, String, String)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void doUnsetOption(InputWindow, bool, Identity, String, String)): Effects-of-calling:java.util.ArrayList:iterator
    //#unanalyzed(void doUnsetOption(InputWindow, bool, Identity, String, String)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void doUnsetOption(InputWindow, bool, Identity, String, String)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void doUnsetOption(InputWindow, bool, Identity, String, String)): Effects-of-calling:com.dmdirc.interfaces.ConfigChangeListener:configChanged
    //#unanalyzed(void doUnsetOption(InputWindow, bool, Identity, String, String)): Effects-of-calling:java.util.Map:remove
    //#unanalyzed(void doUnsetOption(InputWindow, bool, Identity, String, String)): Effects-of-calling:com.dmdirc.ui.interfaces.InputWindow:addLine
        
        sendLine(origin, isSilent, FORMAT_OUTPUT, domain + "." + option + " has been unset.");
    }
    //#Set.java:225: end of method: void com.dmdirc.commandparser.commands.global.Set.doUnsetOption(InputWindow, bool, Identity, String, String)
    
    /** {@inheritDoc} */
    @Override
    public String getName() {
        return "set";
    //#Set.java:230: method: String com.dmdirc.commandparser.commands.global.Set.getName()
    //#output(String getName()): return_value
    //#post(String getName()): return_value == &"set"
    //#Set.java:230: end of method: String com.dmdirc.commandparser.commands.global.Set.getName()
    }
    
    /** {@inheritDoc} */
    @Override
    public boolean showInHelp() {
        return true;
    //#Set.java:236: method: bool com.dmdirc.commandparser.commands.global.Set.showInHelp()
    //#output(bool showInHelp()): return_value
    //#post(bool showInHelp()): return_value == 1
    //#Set.java:236: end of method: bool com.dmdirc.commandparser.commands.global.Set.showInHelp()
    }
    
    /** {@inheritDoc} */
    @Override
    public String getHelp() {
        return "set [--server] [domain [option [newvalue]]] - inspect or change configuration settings"
    //#Set.java:242: method: String com.dmdirc.commandparser.commands.global.Set.getHelp()
    //#output(String getHelp()): return_value
    //#post(String getHelp()): return_value == &"set [--server] [domain [option [newvalue]]] - inspect or change config ... set [--server] --unset <domain> <option> - unsets the specified option"
    //#Set.java:242: end of method: String com.dmdirc.commandparser.commands.global.Set.getHelp()
                + "\nset [--server] --append <domain> <option> <data> - appends data to the specified option"
                + "\nset [--server] --unset <domain> <option> - unsets the specified option";
    }
    
    /** {@inheritDoc} */
    @Override
    public AdditionalTabTargets getSuggestions(final int arg, final List<String> previousArgs) {
        final AdditionalTabTargets res = new AdditionalTabTargets();
    //#Set.java:250: method: AdditionalTabTargets com.dmdirc.commandparser.commands.global.Set.getSuggestions(int, List)
    //#Set.java:250: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.input.AdditionalTabTargets()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: AdditionalTabTargets getSuggestions(int, List)
    //#    unanalyzed callee: void com.dmdirc.ui.input.AdditionalTabTargets()
    //#input(AdditionalTabTargets getSuggestions(int, List)): ""._tainted
    //#input(AdditionalTabTargets getSuggestions(int, List)): "<Unknown>"._tainted
    //#input(AdditionalTabTargets getSuggestions(int, List)): "@"._tainted
    //#input(AdditionalTabTargets getSuggestions(int, List)): arg
    //#input(AdditionalTabTargets getSuggestions(int, List)): com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1).length
    //#input(AdditionalTabTargets getSuggestions(int, List)): com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1)[0..4_294_967_295]
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/ConfigManager$1.$SwitchMap$com$dmdirc$config$ConfigTarget$TYPE
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/ConfigManager.__Descendant_Table[com/dmdirc/config/ConfigManager]
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/ConfigManager.__Descendant_Table[others]
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getDomains()Ljava/util/Set;
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/ConfigManager.__Dispatch_Table.getOptions(Ljava/lang/String;)Ljava/util/Map;
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/ConfigManager.__Dispatch_Table.identityApplies(Lcom/dmdirc/config/Identity;)Z
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/ConfigTarget.__Descendant_Table[com/dmdirc/config/ConfigTarget]
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/ConfigTarget.__Descendant_Table[others]
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/ConfigTarget.__Dispatch_Table.getData()Ljava/lang/String;
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/ConfigTarget.__Dispatch_Table.getType()Lcom/dmdirc/config/ConfigTarget$TYPE;
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/Identity.__Descendant_Table[com/dmdirc/config/Identity]
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/Identity.__Descendant_Table[others]
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/Identity.__Dispatch_Table.addListener(Lcom/dmdirc/interfaces/ConfigChangeListener;)V
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/Identity.__Dispatch_Table.getDomains()Ljava/util/Set;
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/Identity.__Dispatch_Table.getOptions(Ljava/lang/String;)Ljava/util/Map;
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/Identity.__Dispatch_Table.getTarget()Lcom/dmdirc/config/ConfigTarget;
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/IdentityManager.__Class_Obj.__Lock
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/IdentityManager.globalconfig
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/IdentityManager.globalconfig.__Tag
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/IdentityManager.globalconfig.sources
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/IdentityManager.globalconfig.sources.__Lock
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/IdentityManager.identities
    //#input(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/IdentityManager.managers
    //#input(AdditionalTabTargets getSuggestions(int, List)): previousArgs
    //#output(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/IdentityManager.globalconfig
    //#output(AdditionalTabTargets getSuggestions(int, List)): java.lang.StringBuilder:toString(...)._tainted
    //#output(AdditionalTabTargets getSuggestions(int, List)): new AdditionalTabTargets(getSuggestions#1) num objects
    //#output(AdditionalTabTargets getSuggestions(int, List)): new ArrayList(getSources#1) num objects
    //#output(AdditionalTabTargets getSuggestions(int, List)): new ArrayList(getSources#1).__Lock
    //#output(AdditionalTabTargets getSuggestions(int, List)): new ConfigManager(getGlobalConfig#1) num objects
    //#output(AdditionalTabTargets getSuggestions(int, List)): new ConfigManager(getGlobalConfig#1).__Tag
    //#output(AdditionalTabTargets getSuggestions(int, List)): new ConfigManager(getGlobalConfig#1).channel
    //#output(AdditionalTabTargets getSuggestions(int, List)): new ConfigManager(getGlobalConfig#1).ircd
    //#output(AdditionalTabTargets getSuggestions(int, List)): new ConfigManager(getGlobalConfig#1).listeners
    //#output(AdditionalTabTargets getSuggestions(int, List)): new ConfigManager(getGlobalConfig#1).network
    //#output(AdditionalTabTargets getSuggestions(int, List)): new ConfigManager(getGlobalConfig#1).server
    //#output(AdditionalTabTargets getSuggestions(int, List)): new ConfigManager(getGlobalConfig#1).sources
    //#output(AdditionalTabTargets getSuggestions(int, List)): new MapList(ConfigManager#1) num objects
    //#output(AdditionalTabTargets getSuggestions(int, List)): return_value
    //#new obj(AdditionalTabTargets getSuggestions(int, List)): java.lang.StringBuilder:toString(...)
    //#new obj(AdditionalTabTargets getSuggestions(int, List)): new AdditionalTabTargets(getSuggestions#1)
    //#new obj(AdditionalTabTargets getSuggestions(int, List)): new ArrayList(getSources#1)
    //#new obj(AdditionalTabTargets getSuggestions(int, List)): new ConfigManager(getGlobalConfig#1)
    //#new obj(AdditionalTabTargets getSuggestions(int, List)): new MapList(ConfigManager#1)
    //#pre[2] (AdditionalTabTargets getSuggestions(int, List)): (soft) init'ed(com.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1)[0..4_294_967_295])
    //#pre[5] (AdditionalTabTargets getSuggestions(int, List)): (soft) init'ed(com/dmdirc/config/IdentityManager.globalconfig)
    //#pre[6] (AdditionalTabTargets getSuggestions(int, List)): (soft) previousArgs != null
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): getGlobalConfig(...).__Tag == com/dmdirc/config/ConfigManager
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): getGlobalConfig(...).__Tag == com/dmdirc/config/ConfigManager
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): getGlobalConfig(...).__Tag == com/dmdirc/config/ConfigManager
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): getGlobalConfig(...).__Tag == com/dmdirc/config/ConfigManager
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): getGlobalConfig(...).sources != null
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): getGlobalConfig(...).sources != null
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): getGlobalConfig(...).sources != null
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): getGlobalConfig(...).sources != null
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): java.util.List:get(...)@259 != null
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): java.util.List:get(...)@259 != null
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): java.util.List:get(...)@259 != null
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): java.util.List:get(...)@267 != null
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): java.util.List:get(...)@267 != null
    //#presumption(AdditionalTabTargets getSuggestions(int, List)): java.util.List:get(...)@267 != null
    //#post(AdditionalTabTargets getSuggestions(int, List)): com/dmdirc/config/IdentityManager.globalconfig == One-of{old com/dmdirc/config/IdentityManager.globalconfig, &new ConfigManager(getGlobalConfig#1)}
    //#post(AdditionalTabTargets getSuggestions(int, List)): init'ed(com/dmdirc/config/IdentityManager.globalconfig)
    //#post(AdditionalTabTargets getSuggestions(int, List)): java.lang.StringBuilder:toString(...)._tainted == 0
    //#post(AdditionalTabTargets getSuggestions(int, List)): return_value == &new AdditionalTabTargets(getSuggestions#1)
    //#post(AdditionalTabTargets getSuggestions(int, List)): new AdditionalTabTargets(getSuggestions#1) num objects == 1
    //#post(AdditionalTabTargets getSuggestions(int, List)): new ArrayList(getSources#1) num objects <= 1
    //#post(AdditionalTabTargets getSuggestions(int, List)): init'ed(new ArrayList(getSources#1).__Lock)
    //#post(AdditionalTabTargets getSuggestions(int, List)): new ConfigManager(getGlobalConfig#1) num objects <= 1
    //#post(AdditionalTabTargets getSuggestions(int, List)): init'ed(new ConfigManager(getGlobalConfig#1).__Tag)
    //#post(AdditionalTabTargets getSuggestions(int, List)): init'ed(new ConfigManager(getGlobalConfig#1).channel)
    //#post(AdditionalTabTargets getSuggestions(int, List)): init'ed(new ConfigManager(getGlobalConfig#1).ircd)
    //#post(AdditionalTabTargets getSuggestions(int, List)): init'ed(new ConfigManager(getGlobalConfig#1).listeners)
    //#post(AdditionalTabTargets getSuggestions(int, List)): init'ed(new ConfigManager(getGlobalConfig#1).network)
    //#post(AdditionalTabTargets getSuggestions(int, List)): init'ed(new ConfigManager(getGlobalConfig#1).server)
    //#post(AdditionalTabTargets getSuggestions(int, List)): init'ed(new ConfigManager(getGlobalConfig#1).sources)
    //#post(AdditionalTabTargets getSuggestions(int, List)): new MapList(ConfigManager#1) num objects <= 1
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomain
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:com.dmdirc.util.ConfigFile:getKeyDomains
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.List:add
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.Map:keySet
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.HashMap
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.HashSet
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:getSources
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:addListener
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:com.dmdirc.config.ConfigSource
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:com.dmdirc.util.MapList
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:addConfigManager
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:getDomains
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:getOptions
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:com.dmdirc.logger.Logger:assertTrue
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:getTarget
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:com.dmdirc.config.ConfigTarget$TYPE:ordinal
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.lang.String:equalsIgnoreCase
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.Collections:sort
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.List:size
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.List:get
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.Map:putAll
    //#unanalyzed(AdditionalTabTargets getSuggestions(int, List)): Effects-of-calling:java.util.Set:addAll
    //#test_vector(AdditionalTabTargets getSuggestions(int, List)): arg: {2}, {0}, {1}
    //#test_vector(AdditionalTabTargets getSuggestions(int, List)): java.lang.String:equalsIgnoreCase(...)@259: {1}, {0}
    //#test_vector(AdditionalTabTargets getSuggestions(int, List)): java.lang.String:equalsIgnoreCase(...)@259: {0}, {1}
    //#test_vector(AdditionalTabTargets getSuggestions(int, List)): java.lang.String:equalsIgnoreCase(...)@267: {1}, {0}
    //#test_vector(AdditionalTabTargets getSuggestions(int, List)): java.lang.String:equalsIgnoreCase(...)@267: {0}, {1}
    //#test_vector(AdditionalTabTargets getSuggestions(int, List)): java.util.List:size(...)@258: {-2_147_483_648..0}, {1..4_294_967_295}
        
        if (arg == 0) {
            res.addAll(IdentityManager.getGlobalConfig().getDomains());
    //#Set.java:253: Warning: method not available - call not analyzed
    //#    call on bool com.dmdirc.ui.input.AdditionalTabTargets:addAll(Collection)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: AdditionalTabTargets getSuggestions(int, List)
    //#    unanalyzed callee: bool com.dmdirc.ui.input.AdditionalTabTargets:addAll(Collection)
            res.add("--unset");
    //#Set.java:254: Warning: method not available - call not analyzed
    //#    call on bool com.dmdirc.ui.input.AdditionalTabTargets:add(Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: AdditionalTabTargets getSuggestions(int, List)
    //#    unanalyzed callee: bool com.dmdirc.ui.input.AdditionalTabTargets:add(Object)
            res.add("--append");
    //#Set.java:255: Warning: method not available - call not analyzed
    //#    call on bool com.dmdirc.ui.input.AdditionalTabTargets:add(Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: AdditionalTabTargets getSuggestions(int, List)
    //#    unanalyzed callee: bool com.dmdirc.ui.input.AdditionalTabTargets:add(Object)
            res.add("--server");
    //#Set.java:256: Warning: method not available - call not analyzed
    //#    call on bool com.dmdirc.ui.input.AdditionalTabTargets:add(Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: AdditionalTabTargets getSuggestions(int, List)
    //#    unanalyzed callee: bool com.dmdirc.ui.input.AdditionalTabTargets:add(Object)
            res.excludeAll();
    //#Set.java:257: Warning: method not available - call not analyzed
    //#    call on AdditionalTabTargets com.dmdirc.ui.input.AdditionalTabTargets:excludeAll()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: AdditionalTabTargets getSuggestions(int, List)
    //#    unanalyzed callee: AdditionalTabTargets com.dmdirc.ui.input.AdditionalTabTargets:excludeAll()
        } else if (arg == 1 && previousArgs.size() >= 1) {
            if (previousArgs.get(0).equalsIgnoreCase("--unset")
                    || previousArgs.get(0).equalsIgnoreCase("--append")
                    || previousArgs.get(0).equalsIgnoreCase("--server")) {
                res.addAll(IdentityManager.getGlobalConfig().getDomains());
    //#Set.java:262: Warning: method not available - call not analyzed
    //#    call on bool com.dmdirc.ui.input.AdditionalTabTargets:addAll(Collection)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: AdditionalTabTargets getSuggestions(int, List)
    //#    unanalyzed callee: bool com.dmdirc.ui.input.AdditionalTabTargets:addAll(Collection)
            } else {
                res.addAll(IdentityManager.getGlobalConfig().getOptions(previousArgs.get(0)).keySet());
    //#Set.java:264: Warning: method not available - call not analyzed
    //#    call on bool com.dmdirc.ui.input.AdditionalTabTargets:addAll(Collection)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: AdditionalTabTargets getSuggestions(int, List)
    //#    unanalyzed callee: bool com.dmdirc.ui.input.AdditionalTabTargets:addAll(Collection)
            }
            res.excludeAll();
    //#Set.java:266: Warning: method not available - call not analyzed
    //#    call on AdditionalTabTargets com.dmdirc.ui.input.AdditionalTabTargets:excludeAll()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: AdditionalTabTargets getSuggestions(int, List)
    //#    unanalyzed callee: AdditionalTabTargets com.dmdirc.ui.input.AdditionalTabTargets:excludeAll()
        } else if (arg == 2 && (previousArgs.get(0).equalsIgnoreCase("--unset")
                || previousArgs.get(0).equalsIgnoreCase("--append")
                || previousArgs.get(0).equalsIgnoreCase("--server"))) {
            res.addAll(IdentityManager.getGlobalConfig().getOptions(previousArgs.get(1)).keySet());
    //#Set.java:270: Warning: method not available - call not analyzed
    //#    call on bool com.dmdirc.ui.input.AdditionalTabTargets:addAll(Collection)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: AdditionalTabTargets getSuggestions(int, List)
    //#    unanalyzed callee: bool com.dmdirc.ui.input.AdditionalTabTargets:addAll(Collection)
            res.excludeAll();
    //#Set.java:271: Warning: method not available - call not analyzed
    //#    call on AdditionalTabTargets com.dmdirc.ui.input.AdditionalTabTargets:excludeAll()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.commandparser.commands.global.Set
    //#    method: AdditionalTabTargets getSuggestions(int, List)
    //#    unanalyzed callee: AdditionalTabTargets com.dmdirc.ui.input.AdditionalTabTargets:excludeAll()
        }
        
        return res;
    //#Set.java:274: end of method: AdditionalTabTargets com.dmdirc.commandparser.commands.global.Set.getSuggestions(int, List)
    }
    
}
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Descendant_Table[com/dmdirc/commandparser/commands/global/Set]
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doAppendOption(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/Identity;Lcom/dmdirc/config/ConfigManager;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doDomainList(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/ConfigManager;)V
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doOptionsList(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/ConfigManager;Ljava/lang/String;)V
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doSetOption(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/Identity;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doShowOption(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/ConfigManager;Ljava/lang/String;Ljava/lang/String;)V
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doUnsetOption(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/Identity;Ljava/lang/String;Ljava/lang/String;)V
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.getHelp()Ljava/lang/String;
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.getName()Ljava/lang/String;
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.getSuggestions(ILjava/util/List;)Lcom/dmdirc/ui/input/AdditionalTabTargets;
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType;
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.sendLine(Lcom/dmdirc/ui/interfaces/InputWindow;ZLjava/lang/String;[Ljava/lang/Object;)V
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.showInHelp()Z
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.showUsage(Lcom/dmdirc/ui/interfaces/InputWindow;ZLjava/lang/String;Ljava/lang/String;)V
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): com/dmdirc/commandparser/CommandInfo.__Descendant_Table[com/dmdirc/commandparser/commands/global/Set]
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): com/dmdirc/commandparser/commands/Command.__Descendant_Table[com/dmdirc/commandparser/commands/global/Set]
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): com/dmdirc/commandparser/commands/GlobalCommand.__Descendant_Table[com/dmdirc/commandparser/commands/global/Set]
    //#output(com.dmdirc.commandparser.commands.global.Set__static_init): com/dmdirc/commandparser/commands/IntelligentCommand.__Descendant_Table[com/dmdirc/commandparser/commands/global/Set]
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Descendant_Table[com/dmdirc/commandparser/commands/global/Set] == &__Dispatch_Table
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): com/dmdirc/commandparser/CommandInfo.__Descendant_Table[com/dmdirc/commandparser/commands/global/Set] == &__Dispatch_Table
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): com/dmdirc/commandparser/commands/Command.__Descendant_Table[com/dmdirc/commandparser/commands/global/Set] == &__Dispatch_Table
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): com/dmdirc/commandparser/commands/GlobalCommand.__Descendant_Table[com/dmdirc/commandparser/commands/global/Set] == &__Dispatch_Table
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): com/dmdirc/commandparser/commands/IntelligentCommand.__Descendant_Table[com/dmdirc/commandparser/commands/global/Set] == &__Dispatch_Table
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doAppendOption(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/Identity;Lcom/dmdirc/config/ConfigManager;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V == &doAppendOption
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doDomainList(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/ConfigManager;)V == &doDomainList
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doOptionsList(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/ConfigManager;Ljava/lang/String;)V == &doOptionsList
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doSetOption(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/Identity;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V == &doSetOption
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doShowOption(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/ConfigManager;Ljava/lang/String;Ljava/lang/String;)V == &doShowOption
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.doUnsetOption(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/config/Identity;Ljava/lang/String;Ljava/lang/String;)V == &doUnsetOption
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.execute(Lcom/dmdirc/ui/interfaces/InputWindow;ZLcom/dmdirc/commandparser/CommandArguments;)V == &execute
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.getHelp()Ljava/lang/String; == &getHelp
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.getName()Ljava/lang/String; == &getName
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.getSuggestions(ILjava/util/List;)Lcom/dmdirc/ui/input/AdditionalTabTargets; == &getSuggestions
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.getType()Lcom/dmdirc/commandparser/CommandType; == &com/dmdirc/commandparser/commands/GlobalCommand.getType
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.sendLine(Lcom/dmdirc/ui/interfaces/InputWindow;ZLjava/lang/String;[Ljava/lang/Object;)V == &com/dmdirc/commandparser/commands/Command.sendLine
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.showInHelp()Z == &showInHelp
    //#post(com.dmdirc.commandparser.commands.global.Set__static_init): __Dispatch_Table.showUsage(Lcom/dmdirc/ui/interfaces/InputWindow;ZLjava/lang/String;Ljava/lang/String;)V == &com/dmdirc/commandparser/commands/Command.showUsage
    //#Set.java:: end of method: com.dmdirc.commandparser.commands.global.Set.com.dmdirc.commandparser.commands.global.Set__static_init
    //#Set.java:: end of class: com.dmdirc.commandparser.commands.global.Set
