Program: 134112
Project: 134112
Buggy source:
@SuppressWarnings("String_Node_Str") @Override public boolean onCommand(CommandSender s,Command c,String label,String[] args){
  for (int i=0; i < args.length; i++) {
    args[i]=args[i].toLowerCase();
  }
  if (args.length == 0) {
    s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.YELLOW+ "String_Node_Str");
    s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.YELLOW+ "String_Node_Str");
    s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.YELLOW+ "String_Node_Str");
    return true;
  }
  if (Arrays.asList(avataraliases).contains(args[0].toLowerCase())) {
    if (!GeneralMethods.hasRPG()) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length != 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    Player player=Bukkit.getPlayer(args[1]);
    if (player == null) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    UUID uuid=player.getUniqueId();
    if (RPGMethods.hasBeenAvatar(uuid)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    RPGMethods.setAvatar(uuid);
    s.sendMessage(ChatColor.DARK_AQUA + player.getName() + ChatColor.GREEN+ "String_Node_Str");
    player.sendMessage("String_Node_Str");
    return true;
  }
  if (args[0].equalsIgnoreCase("String_Node_Str")) {
    if (args.length != 1) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    GeneralMethods.runDebug();
    s.sendMessage(ChatColor.GREEN + "String_Node_Str");
    s.sendMessage(ChatColor.GREEN + "String_Node_Str");
    return true;
  }
  if (Arrays.asList(presetaliases).contains(args[0].toLowerCase())) {
    if (!(s instanceof Player)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (MultiAbilityManager.hasMultiAbilityBound((Player)s)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    Player player=(Player)s;
    String[] deletealiases={"String_Node_Str","String_Node_Str","String_Node_Str"};
    String[] createaliases={"String_Node_Str","String_Node_Str","String_Node_Str"};
    String[] listaliases={"String_Node_Str","String_Node_Str"};
    if (args.length == 2 && Arrays.asList(listaliases).contains(args[1].toLowerCase())) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      List<Preset> listnames=Preset.presets.get(player.getUniqueId());
      List<String> ln2=new ArrayList<String>();
      if (listnames == null || listnames.isEmpty()) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      for (      Preset preset : listnames) {
        ln2.add(preset.getName());
      }
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.DARK_AQUA+ ln2.toString());
      return true;
    }
 else     if (args.length != 3) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    String name=args[2];
    if (Arrays.asList(deletealiases).contains(args[1].toLowerCase())) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!Preset.presetExists(player,name)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      Preset preset=Preset.getPreset(player,name);
      preset.delete();
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + name);
    }
    if (Arrays.asList(bindaliases).contains(args[1].toLowerCase())) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!Preset.presetExists(player,name)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      Preset.bindPreset(player,name);
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + name+ "String_Node_Str");
      return true;
    }
    if (Arrays.asList(createaliases).contains(args[1].toLowerCase())) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      int limit=GeneralMethods.getMaxPresets(player);
      if (Preset.presets.get(player) != null && Preset.presets.get(player).size() >= limit) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (Preset.presetExists(player,name)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(player.getName());
      if (bPlayer == null)       return true;
      HashMap<Integer,String> abilities=bPlayer.getAbilities();
      Preset preset=new Preset(player.getUniqueId(),name,abilities);
      preset.save();
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + name);
      return true;
    }
  }
  if (Arrays.asList(invinciblealiases).contains(args[0].toLowerCase())) {
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (!(s instanceof Player)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length != 1) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!invincible.contains(s.getName())) {
      invincible.add(s.getName());
      s.sendMessage(ChatColor.GREEN + "String_Node_Str");
      return true;
    }
 else {
      invincible.remove(s.getName());
      s.sendMessage(ChatColor.RED + "String_Node_Str");
    }
  }
  if (Arrays.asList(givealiases).contains(args[0].toLowerCase())) {
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length < 3) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    Player player=Bukkit.getPlayer(args[1]);
    if (player == null) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(grapplinghookaliases).contains(args[2].toLowerCase())) {
      if (args.length != 4) {
        s.sendMessage(ChatColor.GOLD + "String_Node_Str");
        return true;
      }
      int uses;
      try {
        uses=Integer.parseInt(args[3]);
      }
 catch (      NumberFormatException e) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        s.sendMessage(ChatColor.GOLD + "String_Node_Str" + s.getName()+ "String_Node_Str");
        return true;
      }
      ItemStack hook=GrapplingHookAPI.createHook(uses);
      player.getInventory().addItem(hook);
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + uses+ "String_Node_Str");
      return true;
    }
 else {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
  }
  if (Arrays.asList(reloadaliases).contains(args[0].toLowerCase())) {
    if (args.length != 1) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    GeneralMethods.reloadPlugin();
    s.sendMessage(ChatColor.AQUA + "String_Node_Str");
    return true;
  }
  if (Arrays.asList(clearaliases).contains(args[0].toLowerCase())) {
    if (args.length > 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (!(s instanceof Player)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (MultiAbilityManager.hasMultiAbilityBound((Player)s)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(s.getName());
    if (args.length == 1) {
      bPlayer.getAbilities().clear();
      for (int i=1; i <= 9; i++) {
        GeneralMethods.saveAbility(bPlayer,i,null);
      }
      s.sendMessage("String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      try {
        int slot=Integer.parseInt(args[1]);
        if (slot < 1 || slot > 9) {
          s.sendMessage(ChatColor.RED + "String_Node_Str");
          return true;
        }
        if (bPlayer.getAbilities().get(slot) != null) {
          bPlayer.getAbilities().remove(slot);
          GeneralMethods.saveAbility(bPlayer,slot,null);
        }
        s.sendMessage("String_Node_Str" + slot);
        return true;
      }
 catch (      NumberFormatException e) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
      }
    }
  }
  if (Arrays.asList(bindaliases).contains(args[0].toLowerCase())) {
    if (args.length > 3 || args.length == 1) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (!(s instanceof Player)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      String abil=args[1];
      if (!GeneralMethods.abilityExists(abil)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      String ability=GeneralMethods.getAbility(abil);
      if (!GeneralMethods.canBind(((Player)s).getName(),ability)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (AirMethods.isAirAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Air)) {
        s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        return true;
      }
      if (WaterMethods.isWaterAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Water)) {
        s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        return true;
      }
      if (EarthMethods.isEarthAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Earth)) {
        s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        return true;
      }
      if (FireMethods.isFireAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Fire)) {
        s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        return true;
      }
      if (ChiMethods.isChiAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Chi)) {
        s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
        return true;
      }
      GeneralMethods.bindAbility((Player)s,ability);
      return true;
    }
    if (args.length == 3) {
      String abil=args[1];
      if (!GeneralMethods.abilityExists(abil)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      String ability=GeneralMethods.getAbility(abil);
      int slot=0;
      try {
        slot=Integer.parseInt(args[2]);
      }
 catch (      NumberFormatException e) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (slot < 1 || slot > 9) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!GeneralMethods.canBind(((Player)s).getName(),ability)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (AirMethods.isAirAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Air)) {
        s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        return true;
      }
      if (WaterMethods.isWaterAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Water)) {
        s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        return true;
      }
      if (EarthMethods.isEarthAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Earth)) {
        s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        return true;
      }
      if (FireMethods.isFireAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Fire)) {
        s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        return true;
      }
      if (ChiMethods.isChiAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Chi)) {
        s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
        return true;
      }
      GeneralMethods.bindAbility((Player)s,ability,slot);
      return true;
    }
  }
  if (Arrays.asList(importaliases).contains(args[0].toLowerCase())) {
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (!GeneralMethods.isImportEnabled()) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    s.sendMessage(ChatColor.GREEN + "String_Node_Str");
    File bendingPlayersFile=new File("String_Node_Str","String_Node_Str");
    FileConfiguration bendingPlayers=YamlConfiguration.loadConfiguration(bendingPlayersFile);
    final LinkedList<BendingPlayer> bPlayers=new LinkedList<BendingPlayer>();
    for (    String string : bendingPlayers.getConfigurationSection("String_Node_Str").getKeys(false)) {
      if (string.equalsIgnoreCase("String_Node_Str"))       continue;
      String playername=string;
      UUID uuid=Bukkit.getOfflinePlayer(playername).getUniqueId();
      ArrayList<Element> element=new ArrayList<Element>();
      List<Integer> oe=bendingPlayers.getIntegerList(string + "String_Node_Str");
      HashMap<Integer,String> abilities=new HashMap<Integer,String>();
      List<Integer> oa=bendingPlayers.getIntegerList(string + "String_Node_Str");
      boolean permaremoved=bendingPlayers.getBoolean(string + "String_Node_Str");
      int slot=1;
      for (      int i : oa) {
        if (StockAbilities.getAbility(i) != null) {
          abilities.put(slot,StockAbilities.getAbility(i).toString());
          slot++;
        }
 else {
          abilities.put(slot,null);
          slot++;
        }
      }
      for (      int i : oe) {
        if (Element.getType(i) != null) {
          element.add(Element.getType(i));
        }
      }
      BendingPlayer bPlayer=new BendingPlayer(uuid,playername,element,abilities,permaremoved);
      bPlayers.add(bPlayer);
    }
    final int total=bPlayers.size();
    final CommandSender sender=s;
    s.sendMessage(ChatColor.GREEN + "String_Node_Str");
    if (debug) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
    }
    importTask=Bukkit.getServer().getScheduler().runTaskTimerAsynchronously(plugin,new Runnable(){
      public void run(){
        int i=0;
        if (i >= 10) {
          sender.sendMessage(ChatColor.GREEN + "String_Node_Str" + total+ "String_Node_Str");
          return;
        }
        while (i < 10) {
          if (bPlayers.isEmpty()) {
            sender.sendMessage(ChatColor.GREEN + "String_Node_Str");
            Bukkit.getServer().getScheduler().cancelTask(importTask.getTaskId());
            plugin.getConfig().set("String_Node_Str",false);
            plugin.saveConfig();
            for (            Player player : Bukkit.getOnlinePlayers()) {
              GeneralMethods.createBendingPlayer(player.getUniqueId(),player.getName());
            }
            return;
          }
          StringBuilder elements=new StringBuilder();
          BendingPlayer bPlayer=bPlayers.pop();
          if (bPlayer.hasElement(Element.Air))           elements.append("String_Node_Str");
          if (bPlayer.hasElement(Element.Water))           elements.append("String_Node_Str");
          if (bPlayer.hasElement(Element.Earth))           elements.append("String_Node_Str");
          if (bPlayer.hasElement(Element.Fire))           elements.append("String_Node_Str");
          if (bPlayer.hasElement(Element.Chi))           elements.append("String_Node_Str");
          HashMap<Integer,String> abilities=bPlayer.getAbilities();
          ResultSet rs2=DBConnection.sql.readQuery("String_Node_Str" + bPlayer.uuid.toString() + "String_Node_Str");
          try {
            if (rs2.next()) {
              DBConnection.sql.modifyQuery("String_Node_Str" + bPlayer.player + "String_Node_Str"+ bPlayer.uuid.toString());
              DBConnection.sql.modifyQuery("String_Node_Str" + elements + "String_Node_Str"+ bPlayer.uuid.toString());
              DBConnection.sql.modifyQuery("String_Node_Str" + bPlayer.isPermaRemoved() + "String_Node_Str"+ bPlayer.uuid.toString());
              for (int slot=1; slot < 10; slot++) {
                DBConnection.sql.modifyQuery("String_Node_Str" + slot + "String_Node_Str"+ abilities.get(slot)+ "String_Node_Str"+ bPlayer.getPlayerName()+ "String_Node_Str");
              }
            }
 else {
              DBConnection.sql.modifyQuery("String_Node_Str" + bPlayer.uuid.toString() + "String_Node_Str"+ bPlayer.player+ "String_Node_Str"+ elements+ "String_Node_Str"+ bPlayer.isPermaRemoved()+ "String_Node_Str");
              for (int slot=1; slot < 10; slot++) {
                DBConnection.sql.modifyQuery("String_Node_Str" + slot + "String_Node_Str"+ abilities.get(slot)+ "String_Node_Str"+ bPlayer.getPlayerName()+ "String_Node_Str");
              }
            }
          }
 catch (          SQLException ex) {
            ex.printStackTrace();
            GeneralMethods.logError(ex);
          }
          i++;
          if (debug) {
            System.out.println("String_Node_Str" + bPlayer.player + "String_Node_Str"+ bPlayers.size()+ "String_Node_Str");
          }
        }
      }
    }
,0,40);
    return true;
  }
  if (Arrays.asList(displayaliases).contains(args[0].toLowerCase())) {
    if (args.length > 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      if (!(s instanceof Player)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (Arrays.asList(airaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.airbendingabilities.isEmpty()) {
          s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.airbendingabilities) {
          if (GeneralMethods.isSubAbility(st))           continue;
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(AirMethods.getAirColor() + st);
          }
        }
        if (!AbilityModuleManager.flightabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
        }
        if (!AbilityModuleManager.spiritualprojectionabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
        }
        return true;
      }
      if (Arrays.asList(flightaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.flightabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.flightabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(spiritualprojectionaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.spiritualprojectionabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.spiritualprojectionabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(wateraliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.waterbendingabilities.isEmpty()) {
          s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.waterbendingabilities) {
          if (GeneralMethods.isSubAbility(st))           continue;
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(WaterMethods.getWaterColor() + st);
          }
        }
        if (!AbilityModuleManager.bloodabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (!AbilityModuleManager.healingabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (!AbilityModuleManager.iceabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (!AbilityModuleManager.plantabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        return true;
      }
      if (Arrays.asList(bloodaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.bloodabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.bloodabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(healingaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.healingabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.healingabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(icealiases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.iceabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.iceabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(plantaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.plantabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.plantabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(earthaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.earthbendingabilities.isEmpty()) {
          s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.earthbendingabilities) {
          if (GeneralMethods.isSubAbility(st))           continue;
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(EarthMethods.getEarthColor() + st);
          }
        }
        if (!AbilityModuleManager.lavaabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
        if (!AbilityModuleManager.metalabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
        if (!AbilityModuleManager.sandabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
        return true;
      }
      if (Arrays.asList(lavabendingaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.lavaabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.lavaabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(metalbendingaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.metalabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.metalabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(sandbendingaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.sandabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.sandabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(firealiases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.firebendingabilities.isEmpty()) {
          s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.firebendingabilities) {
          if (GeneralMethods.isSubAbility(st))           continue;
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(FireMethods.getFireColor() + st);
          }
        }
        if (!AbilityModuleManager.combustionabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
        }
        if (!AbilityModuleManager.lightningabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
        }
        return true;
      }
      if (Arrays.asList(lightningaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.lightningabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.lightningabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + st);
          }
        }
      }
      if (Arrays.asList(combustionaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.combustionabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.combustionabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + st);
          }
        }
      }
      if (Arrays.asList(chialiases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.chiabilities.isEmpty()) {
          s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.chiabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(ChiMethods.getChiColor() + st);
          }
        }
        return true;
      }
 else {
        s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str"+ AirMethods.getAirColor()+ "String_Node_Str"+ ChatColor.WHITE+ "String_Node_Str"+ WaterMethods.getWaterColor()+ "String_Node_Str"+ ChatColor.WHITE+ "String_Node_Str"+ EarthMethods.getEarthColor()+ "String_Node_Str"+ ChatColor.WHITE+ "String_Node_Str"+ FireMethods.getFireColor()+ "String_Node_Str"+ ChatColor.WHITE+ "String_Node_Str"+ ChiMethods.getChiColor()+ "String_Node_Str");
      }
    }
    if (args.length == 1) {
      if (!(s instanceof Player)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(s.getName());
      HashMap<Integer,String> abilities=bPlayer.getAbilities();
      if (abilities.isEmpty()) {
        s.sendMessage("String_Node_Str");
        s.sendMessage("String_Node_Str");
        return true;
      }
      for (int i=1; i <= 9; i++) {
        String ability=abilities.get(i);
        if (ability != null)         s.sendMessage(i + "String_Node_Str" + GeneralMethods.getAbilityColor(ability)+ ability);
      }
      return true;
    }
  }
  if (Arrays.asList(togglealiases).contains(args[0].toLowerCase())) {
    if (args.length > 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (args.length == 1) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!(s instanceof Player)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(s.getName());
      if (bPlayer.isToggled) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        bPlayer.isToggled=false;
        return true;
      }
 else {
        s.sendMessage(ChatColor.GREEN + "String_Node_Str");
        bPlayer.isToggled=true;
        return true;
      }
    }
 else     if (args.length == 2 && args[1].equalsIgnoreCase("String_Node_Str")) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (isToggledForAll) {
        isToggledForAll=false;
        for (        Player player : Bukkit.getOnlinePlayers()) {
          player.sendMessage(ChatColor.GREEN + "String_Node_Str");
          return true;
        }
      }
 else {
        isToggledForAll=true;
        for (        Player player : Bukkit.getOnlinePlayers()) {
          player.sendMessage(ChatColor.RED + "String_Node_Str");
          return true;
        }
      }
    }
 else {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
  }
  if (Arrays.asList(whoaliases).contains(args[0].toLowerCase())) {
    if (args.length > 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      Player p=Bukkit.getPlayer(args[1]);
      if (p == null) {
        s.sendMessage(ChatColor.GREEN + "String_Node_Str");
        final String player=args[1];
        final CommandSender sender=s;
        new BukkitRunnable(){
          @Override public void run(){
            ResultSet rs2=DBConnection.sql.readQuery("String_Node_Str" + player + "String_Node_Str");
            try {
              final List<String> messages=new ArrayList<String>();
              if (rs2.next()) {
                UUID uuid=UUID.fromString(rs2.getString("String_Node_Str"));
                String element=rs2.getString("String_Node_Str");
                messages.add(player + "String_Node_Str");
                if (element.contains("String_Node_Str"))                 messages.add(AirMethods.getAirColor() + "String_Node_Str");
                if (element.contains("String_Node_Str"))                 messages.add(WaterMethods.getWaterColor() + "String_Node_Str");
                if (element.contains("String_Node_Str"))                 messages.add(EarthMethods.getEarthColor() + "String_Node_Str");
                if (element.contains("String_Node_Str"))                 messages.add(FireMethods.getFireColor() + "String_Node_Str");
                if (element.contains("String_Node_Str"))                 messages.add(ChiMethods.getChiColor() + "String_Node_Str");
                if (GeneralMethods.hasRPG()) {
                  if (RPGMethods.isCurrentAvatar(uuid)) {
                    messages.add(GeneralMethods.getAvatarColor() + "String_Node_Str");
                  }
 else                   if (RPGMethods.hasBeenAvatar(uuid)) {
                    messages.add(GeneralMethods.getAvatarColor() + "String_Node_Str");
                  }
 else {
                  }
                }
              }
 else {
                messages.add(ChatColor.RED + "String_Node_Str");
              }
              new BukkitRunnable(){
                @Override public void run(){
                  for (                  String message : messages) {
                    sender.sendMessage(message);
                  }
                }
              }
.runTask(ProjectKorra.plugin);
            }
 catch (            SQLException e) {
              e.printStackTrace();
              GeneralMethods.logError(e);
            }
          }
        }
.runTaskAsynchronously(ProjectKorra.plugin);
        return true;
      }
      String un=p.getName();
      s.sendMessage(un + "String_Node_Str");
      if (GeneralMethods.isBender(un,Element.Air)) {
        s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        if (AirMethods.canAirFlight(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
        }
        if (AirMethods.canUseSpiritualProjection(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
        }
      }
      if (GeneralMethods.isBender(un,Element.Water)) {
        s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        if (WaterMethods.canPlantbend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (WaterMethods.canBloodbend(p)) {
          if (WaterMethods.canBloodbendAtAnytime(p))           s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
 else           s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (WaterMethods.canIcebend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (WaterMethods.canWaterHeal(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
      }
      if (GeneralMethods.isBender(un,Element.Earth)) {
        s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        if (EarthMethods.canMetalbend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
        if (EarthMethods.canLavabend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
        if (EarthMethods.canSandbend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
      }
      if (GeneralMethods.isBender(un,Element.Fire)) {
        s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        if (FireMethods.canCombustionbend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
        }
        if (FireMethods.canLightningbend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
        }
      }
      if (GeneralMethods.isBender(un,Element.Chi)) {
        s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(un);
      UUID uuid2=bPlayer.uuid;
      if (bPlayer != null) {
        s.sendMessage("String_Node_Str");
        for (int i=1; i <= 9; i++) {
          String ability=bPlayer.getAbilities().get(i);
          if (ability == null || ability.equalsIgnoreCase("String_Node_Str")) {
            continue;
          }
 else {
            s.sendMessage(i + "String_Node_Str" + GeneralMethods.getAbilityColor(ability)+ ability);
          }
        }
      }
      if (GeneralMethods.hasRPG()) {
        if (RPGMethods.isCurrentAvatar(p.getUniqueId())) {
          s.sendMessage(GeneralMethods.getAvatarColor() + "String_Node_Str");
        }
 else         if (RPGMethods.hasBeenAvatar(p.getUniqueId())) {
          s.sendMessage(GeneralMethods.getAvatarColor() + "String_Node_Str");
        }
      }
      if (uuid2.toString().equals("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      if (uuid2.toString().equals("String_Node_Str") || uuid2.toString().equals("String_Node_Str") || uuid2.toString().equals("String_Node_Str")|| uuid2.toString().equals("String_Node_Str")|| uuid2.toString().equals("String_Node_Str")|| uuid2.toString().equals("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (uuid2.toString().equals("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      if (uuid2.toString().equals("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      if (uuid2.toString().equals("String_Node_Str") || uuid2.toString().equals("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      if (uuid2.toString().equals("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      return true;
    }
    if (args.length == 1) {
      List<String> players=new ArrayList<String>();
      for (      Player player : Bukkit.getOnlinePlayers()) {
        String un=player.getName();
        BendingPlayer bp=GeneralMethods.getBendingPlayer(un);
        if (bp.elements.size() > 1) {
          players.add(GeneralMethods.getAvatarColor() + un);
          continue;
        }
        if (bp.elements.size() == 0) {
          players.add(un);
          continue;
        }
        if (GeneralMethods.isBender(un,Element.Air)) {
          players.add(AirMethods.getAirColor() + un);
          continue;
        }
        if (GeneralMethods.isBender(un,Element.Water)) {
          players.add(WaterMethods.getWaterColor() + un);
          continue;
        }
        if (GeneralMethods.isBender(un,Element.Earth)) {
          players.add(EarthMethods.getEarthColor() + un);
          continue;
        }
        if (GeneralMethods.isBender(un,Element.Chi)) {
          players.add(ChiMethods.getChiColor() + un);
          continue;
        }
        if (GeneralMethods.isBender(un,Element.Fire)) {
          players.add(FireMethods.getFireColor() + un);
          continue;
        }
      }
      for (      String st : players) {
        s.sendMessage(st);
      }
      return true;
    }
  }
  if (Arrays.asList(versionaliases).contains(args[0].toLowerCase())) {
    if (args.length != 1) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.RED+ plugin.getDescription().getVersion());
    if (GeneralMethods.hasRPG()) {
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.RED+ GeneralMethods.getRPG().getDescription().getVersion());
    }
    if (GeneralMethods.hasItems()) {
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.RED+ GeneralMethods.getItems().getDescription().getVersion());
    }
    s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.RED+ "String_Node_Str");
    s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.RED+ "String_Node_Str");
    return true;
  }
  if (Arrays.asList(removealiases).contains(args[0].toLowerCase())) {
    if (args.length != 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    Player player=Bukkit.getPlayer(args[1]);
    if (player == null) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(player.getName());
    GeneralMethods.removeUnusableAbilities(player.getName());
    bPlayer.elements.clear();
    GeneralMethods.saveElements(bPlayer);
    s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.DARK_AQUA+ player.getName());
    player.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.DARK_AQUA+ s.getName());
    Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,null,Result.REMOVE));
    return true;
  }
  if (Arrays.asList(permaremovealiases).contains(args[0].toLowerCase())) {
    if (args.length != 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    Player player=Bukkit.getPlayer(args[1]);
    if (player == null) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(player.getName());
    if (bPlayer.isPermaRemoved()) {
      bPlayer.permaRemoved=false;
      GeneralMethods.savePermaRemoved(bPlayer);
      s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.DARK_AQUA+ player.getName());
      return true;
    }
    bPlayer.elements.clear();
    GeneralMethods.removeUnusableAbilities(player.getName());
    GeneralMethods.saveElements(bPlayer);
    bPlayer.permaRemoved=true;
    GeneralMethods.savePermaRemoved(bPlayer);
    player.sendMessage(ChatColor.RED + "String_Node_Str");
    s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.DARK_AQUA+ player.getName());
    Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,null,Result.PERMAREMOVE));
    return true;
  }
  if (Arrays.asList(addaliases).contains(args[0].toLowerCase())) {
    if (args.length > 3) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      return true;
    }
    if (args.length == 3) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      Player player=Bukkit.getPlayer(args[1]);
      if (player == null) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(player.getName());
      if (Arrays.asList(airaliases).contains(args[2].toLowerCase())) {
        bPlayer.addElement(Element.Air);
        GeneralMethods.saveElements(bPlayer);
        player.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        s.sendMessage(ChatColor.DARK_AQUA + player.getName() + AirMethods.getAirColor()+ "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,Element.Air,Result.ADD));
        return true;
      }
      if (Arrays.asList(wateraliases).contains(args[2].toLowerCase())) {
        bPlayer.addElement(Element.Water);
        GeneralMethods.saveElements(bPlayer);
        player.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        s.sendMessage(ChatColor.DARK_AQUA + player.getName() + WaterMethods.getWaterColor()+ "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,Element.Water,Result.ADD));
        return true;
      }
      if (Arrays.asList(earthaliases).contains(args[2].toLowerCase())) {
        bPlayer.addElement(Element.Earth);
        GeneralMethods.saveElements(bPlayer);
        player.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        s.sendMessage(ChatColor.DARK_AQUA + player.getName() + EarthMethods.getEarthColor()+ "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,Element.Earth,Result.ADD));
        return true;
      }
      if (Arrays.asList(firealiases).contains(args[2].toLowerCase())) {
        bPlayer.addElement(Element.Fire);
        GeneralMethods.saveElements(bPlayer);
        player.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        s.sendMessage(ChatColor.DARK_AQUA + player.getName() + FireMethods.getFireColor()+ "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,Element.Fire,Result.ADD));
        return true;
      }
      if (Arrays.asList(chialiases).contains(args[2].toLowerCase())) {
        bPlayer.addElement(Element.Chi);
        GeneralMethods.saveElements(bPlayer);
        player.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
        s.sendMessage(ChatColor.DARK_AQUA + player.getName() + ChiMethods.getChiColor()+ "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,Element.Chi,Result.ADD));
        return true;
      }
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!(s instanceof Player)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(s.getName());
      if (Arrays.asList(airaliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + AirMethods.getAirColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.addElement(Element.Air);
        GeneralMethods.saveElements(bPlayer);
        s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Air,Result.ADD));
        return true;
      }
      if (Arrays.asList(wateraliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + WaterMethods.getWaterColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.addElement(Element.Water);
        GeneralMethods.saveElements(bPlayer);
        s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Water,Result.ADD));
        return true;
      }
      if (Arrays.asList(earthaliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + EarthMethods.getEarthColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.addElement(Element.Earth);
        GeneralMethods.saveElements(bPlayer);
        s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Earth,Result.ADD));
        return true;
      }
      if (Arrays.asList(firealiases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + FireMethods.getFireColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.addElement(Element.Fire);
        GeneralMethods.saveElements(bPlayer);
        s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Fire,Result.ADD));
        return true;
      }
      if (Arrays.asList(chialiases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + ChiMethods.getChiColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.addElement(Element.Chi);
        GeneralMethods.saveElements(bPlayer);
        s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Chi,Result.ADD));
        return true;
      }
      s.sendMessage(ChatColor.RED + "String_Node_Str");
    }
  }
  if (Arrays.asList(choosealiases).contains(args[0].toLowerCase())) {
    if (args.length > 3) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!(s instanceof Player)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(s.getName());
      if (bPlayer.isPermaRemoved()) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!bPlayer.getElements().isEmpty()) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str");
          return true;
        }
      }
      if (Arrays.asList(airaliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + AirMethods.getAirColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.setElement(Element.Air);
        s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        GeneralMethods.removeUnusableAbilities(s.getName());
        GeneralMethods.saveElements(bPlayer);
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Air,Result.CHOOSE));
        return true;
      }
      if (Arrays.asList(wateraliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + WaterMethods.getWaterColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.setElement(Element.Water);
        s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        GeneralMethods.removeUnusableAbilities(s.getName());
        GeneralMethods.saveElements(bPlayer);
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Water,Result.CHOOSE));
        return true;
      }
      if (Arrays.asList(earthaliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + EarthMethods.getEarthColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.setElement(Element.Earth);
        s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        GeneralMethods.removeUnusableAbilities(s.getName());
        GeneralMethods.saveElements(bPlayer);
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Earth,Result.CHOOSE));
        return true;
      }
      if (Arrays.asList(firealiases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + FireMethods.getFireColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.setElement(Element.Fire);
        s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        GeneralMethods.removeUnusableAbilities(s.getName());
        GeneralMethods.saveElements(bPlayer);
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Fire,Result.CHOOSE));
        return true;
      }
      if (Arrays.asList(chialiases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + ChiMethods.getChiColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.setElement(Element.Chi);
        s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
        GeneralMethods.removeUnusableAbilities(s.getName());
        GeneralMethods.saveElements(bPlayer);
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Chi,Result.CHOOSE));
        return true;
      }
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      return true;
    }
    if (args.length == 3) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      Player target=Bukkit.getPlayer(args[1]);
      if (target == null) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bTarget=GeneralMethods.getBendingPlayer(target.getName());
      Element e=null;
      if (Arrays.asList(airaliases).contains(args[2]))       e=Element.Air;
      if (Arrays.asList(wateraliases).contains(args[2]))       e=Element.Water;
      if (Arrays.asList(earthaliases).contains(args[2]))       e=Element.Earth;
      if (Arrays.asList(firealiases).contains(args[2]))       e=Element.Fire;
      if (Arrays.asList(chialiases).contains(args[2]))       e=Element.Chi;
      if (e == null) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
 else {
        bTarget.setElement(e);
        GeneralMethods.removeUnusableAbilities(target.getName());
        GeneralMethods.saveElements(bTarget);
        s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.DARK_AQUA+ target.getName()+ "String_Node_Str"+ ChatColor.RED+ "String_Node_Str"+ ChatColor.DARK_AQUA+ e.toString()+ ChatColor.RED+ "String_Node_Str");
        target.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.DARK_AQUA+ e.toString()+ ChatColor.RED+ "String_Node_Str"+ ChatColor.DARK_AQUA+ s.getName());
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,target,e,Result.CHOOSE));
        return true;
      }
    }
  }
  if (Arrays.asList(helpaliases).contains(args[0].toLowerCase())) {
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length != 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      if (s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(airaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(AirMethods.getAirColor() + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
    }
    if (Arrays.asList(wateraliases).contains(args[1].toLowerCase())) {
      s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
    }
    if (Arrays.asList(earthaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
    }
    if (Arrays.asList(firealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + FireMethods.getFireColor()+ "String_Node_Str"+ ChatColor.YELLOW+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
    }
    if (Arrays.asList(chialiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
    }
    if (Arrays.asList(invinciblealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
    }
    if (Arrays.asList(importaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
    }
    if (Arrays.asList(displayaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str");
    }
    if (Arrays.asList(givealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.DARK_AQUA + "String_Node_Str");
    }
    if (Arrays.asList(choosealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
      return true;
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(permaremovealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str");
      return true;
    }
    if (Arrays.asList(versionaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(removealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(togglealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
      return true;
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(clearaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
    }
    if (Arrays.asList(reloadaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(bindaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      for (      ComboAbilityModule cam : ComboModuleManager.combo) {
        if (cam.getElement().equals(Element.Fire.toString())) {
          ChatColor color=GeneralMethods.getAvatarColor();
          if (cam.getSubElement() == null)           color=FireMethods.getFireColor();
 else           color=GeneralMethods.getSubBendingColor(Element.Fire);
          s.sendMessage(color + cam.getName() + ChatColor.WHITE+ "String_Node_Str"+ cam.getDescription());
          s.sendMessage(ChatColor.GOLD + cam.getInstructions());
        }
      }
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(AirMethods.getAirColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(AirMethods.getAirColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(AirMethods.getAirColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      for (      ComboAbilityModule cam : ComboModuleManager.combo) {
        if (cam.getElement().equals(Element.Air.toString())) {
          ChatColor color=GeneralMethods.getAvatarColor();
          if (cam.getSubElement() == null)           color=AirMethods.getAirColor();
 else           color=GeneralMethods.getSubBendingColor(Element.valueOf(cam.getElement()));
          s.sendMessage(color + cam.getName() + ChatColor.WHITE+ "String_Node_Str"+ cam.getDescription());
          s.sendMessage(ChatColor.GOLD + cam.getInstructions());
        }
      }
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      for (      ComboAbilityModule cam : ComboModuleManager.combo) {
        if (cam.getElement().equals(Element.Water.toString())) {
          ChatColor color=GeneralMethods.getAvatarColor();
          if (cam.getSubElement() == null)           color=WaterMethods.getWaterColor();
 else           color=GeneralMethods.getSubBendingColor(Element.valueOf(cam.getElement()));
          s.sendMessage(color + cam.getName() + ChatColor.WHITE+ "String_Node_Str"+ cam.getDescription());
          s.sendMessage(ChatColor.GOLD + cam.getInstructions());
        }
      }
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      for (      ComboAbilityModule cam : ComboModuleManager.combo) {
        if (cam.getElement().equals(Element.Earth.toString())) {
          ChatColor color=GeneralMethods.getAvatarColor();
          if (cam.getSubElement() == null)           color=EarthMethods.getEarthColor();
 else           color=GeneralMethods.getSubBendingColor(Element.valueOf(cam.getElement()));
          s.sendMessage(color + cam.getName() + ChatColor.WHITE+ "String_Node_Str"+ cam.getDescription());
          s.sendMessage(ChatColor.GOLD + cam.getInstructions());
        }
      }
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      for (      ComboAbilityModule cam : ComboModuleManager.combo) {
        if (cam.getElement().equals(Element.Chi.toString())) {
          ChatColor color=GeneralMethods.getAvatarColor();
          if (cam.getSubElement() == null)           color=ChiMethods.getChiColor();
 else           color=GeneralMethods.getSubBendingColor(Element.valueOf(cam.getElement()));
          s.sendMessage(color + cam.getName() + ChatColor.WHITE+ "String_Node_Str"+ cam.getDescription());
          s.sendMessage(ChatColor.GOLD + cam.getInstructions());
        }
      }
    }
    if (GeneralMethods.abilityExists(args[1])) {
      String ability=GeneralMethods.getAbility(args[1]);
      if (AirMethods.isAirAbility(ability)) {
        s.sendMessage(AirMethods.getAirColor() + ability + "String_Node_Str");
        s.sendMessage(AirMethods.getAirColor() + AbilityModuleManager.descriptions.get(ability));
      }
 else       if (WaterMethods.isWaterAbility(ability)) {
        s.sendMessage(WaterMethods.getWaterColor() + ability + "String_Node_Str");
        s.sendMessage(WaterMethods.getWaterColor() + AbilityModuleManager.descriptions.get(ability));
      }
 else       if (EarthMethods.isEarthAbility(ability)) {
        if (EarthMethods.isMetalbendingAbility(ability)) {
          s.sendMessage(EarthMethods.getMetalbendingColor() + ability + "String_Node_Str");
          s.sendMessage(EarthMethods.getMetalbendingColor() + AbilityModuleManager.descriptions.get(ability));
        }
 else {
          s.sendMessage(EarthMethods.getEarthColor() + ability + "String_Node_Str");
          s.sendMessage(EarthMethods.getEarthColor() + AbilityModuleManager.descriptions.get(ability));
        }
      }
 else       if (FireMethods.isFireAbility(ability)) {
        s.sendMessage(FireMethods.getFireColor() + ability + "String_Node_Str");
        s.sendMessage(FireMethods.getFireColor() + AbilityModuleManager.descriptions.get(ability));
      }
 else       if (ChiMethods.isChiAbility(ability)) {
        s.sendMessage(ChiMethods.getChiColor() + ability + "String_Node_Str");
        s.sendMessage(ChiMethods.getChiColor() + AbilityModuleManager.descriptions.get(ability));
      }
 else {
        s.sendMessage(GeneralMethods.getAvatarColor() + ability + "String_Node_Str");
        s.sendMessage(GeneralMethods.getAvatarColor() + AbilityModuleManager.descriptions.get(ability));
      }
    }
  }
  if (Arrays.asList(checkaliases).contains(args[0].toLowerCase())) {
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (s instanceof Player) {
      if (plugin.updater.updateAvalible()) {
        s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.GOLD+ "String_Node_Str"+ ChatColor.GREEN+ "String_Node_Str");
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.RED+ plugin.updater.getCurrentVersion());
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.GOLD+ plugin.updater.getCurrentVersion());
      }
 else {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.GOLD+ "String_Node_Str");
      }
    }
 else     if (s instanceof ConsoleCommandSender) {
      plugin.updater.checkUpdate();
    }
  }
  return true;
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") @Override public boolean onCommand(CommandSender s,Command c,String label,String[] args){
  for (int i=0; i < args.length; i++) {
    args[i]=args[i].toLowerCase();
  }
  if (args.length == 0) {
    s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.YELLOW+ "String_Node_Str");
    s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.YELLOW+ "String_Node_Str");
    s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.YELLOW+ "String_Node_Str");
    return true;
  }
  if (Arrays.asList(avataraliases).contains(args[0].toLowerCase())) {
    if (!GeneralMethods.hasRPG()) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length != 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    Player player=Bukkit.getPlayer(args[1]);
    if (player == null) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    UUID uuid=player.getUniqueId();
    if (RPGMethods.hasBeenAvatar(uuid)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    RPGMethods.setAvatar(uuid);
    s.sendMessage(ChatColor.DARK_AQUA + player.getName() + ChatColor.GREEN+ "String_Node_Str");
    player.sendMessage("String_Node_Str");
    return true;
  }
  if (args[0].equalsIgnoreCase("String_Node_Str")) {
    if (args.length != 1) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    GeneralMethods.runDebug();
    s.sendMessage(ChatColor.GREEN + "String_Node_Str");
    s.sendMessage(ChatColor.GREEN + "String_Node_Str");
    return true;
  }
  if (Arrays.asList(presetaliases).contains(args[0].toLowerCase())) {
    if (!(s instanceof Player)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (MultiAbilityManager.hasMultiAbilityBound((Player)s)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    Player player=(Player)s;
    String[] deletealiases={"String_Node_Str","String_Node_Str","String_Node_Str"};
    String[] createaliases={"String_Node_Str","String_Node_Str","String_Node_Str"};
    String[] listaliases={"String_Node_Str","String_Node_Str"};
    if (args.length == 2 && Arrays.asList(listaliases).contains(args[1].toLowerCase())) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      List<Preset> listnames=Preset.presets.get(player.getUniqueId());
      List<String> ln2=new ArrayList<String>();
      if (listnames == null || listnames.isEmpty()) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      for (      Preset preset : listnames) {
        ln2.add(preset.getName());
      }
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.DARK_AQUA+ ln2.toString());
      return true;
    }
 else     if (args.length != 3) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    String name=args[2];
    if (Arrays.asList(deletealiases).contains(args[1].toLowerCase())) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!Preset.presetExists(player,name)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      Preset preset=Preset.getPreset(player,name);
      preset.delete();
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.YELLOW+ name);
    }
    if (Arrays.asList(bindaliases).contains(args[1].toLowerCase())) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!Preset.presetExists(player,name)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      Preset.bindPreset(player,name);
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.YELLOW+ name+ ChatColor.GREEN+ "String_Node_Str");
      return true;
    }
    if (Arrays.asList(createaliases).contains(args[1].toLowerCase())) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      int limit=GeneralMethods.getMaxPresets(player);
      if (Preset.presets.get(player) != null && Preset.presets.get(player).size() >= limit) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (Preset.presetExists(player,name)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(player.getName());
      if (bPlayer == null)       return true;
      HashMap<Integer,String> abilities=bPlayer.getAbilities();
      Preset preset=new Preset(player.getUniqueId(),name,abilities);
      preset.save();
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.YELLOW+ name);
      return true;
    }
  }
  if (Arrays.asList(invinciblealiases).contains(args[0].toLowerCase())) {
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (!(s instanceof Player)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length != 1) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!invincible.contains(s.getName())) {
      invincible.add(s.getName());
      s.sendMessage(ChatColor.GREEN + "String_Node_Str");
      return true;
    }
 else {
      invincible.remove(s.getName());
      s.sendMessage(ChatColor.RED + "String_Node_Str");
    }
  }
  if (Arrays.asList(givealiases).contains(args[0].toLowerCase())) {
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length < 3) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    Player player=Bukkit.getPlayer(args[1]);
    if (player == null) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(grapplinghookaliases).contains(args[2].toLowerCase())) {
      if (args.length != 4) {
        s.sendMessage(ChatColor.GOLD + "String_Node_Str");
        return true;
      }
      int uses;
      try {
        uses=Integer.parseInt(args[3]);
      }
 catch (      NumberFormatException e) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        s.sendMessage(ChatColor.GOLD + "String_Node_Str" + s.getName()+ "String_Node_Str");
        return true;
      }
      ItemStack hook=GrapplingHookAPI.createHook(uses);
      player.getInventory().addItem(hook);
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + uses+ "String_Node_Str");
      return true;
    }
 else {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
  }
  if (Arrays.asList(reloadaliases).contains(args[0].toLowerCase())) {
    if (args.length != 1) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    GeneralMethods.reloadPlugin();
    s.sendMessage(ChatColor.AQUA + "String_Node_Str");
    return true;
  }
  if (Arrays.asList(clearaliases).contains(args[0].toLowerCase())) {
    if (args.length > 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (!(s instanceof Player)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (MultiAbilityManager.hasMultiAbilityBound((Player)s)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(s.getName());
    if (args.length == 1) {
      bPlayer.getAbilities().clear();
      for (int i=1; i <= 9; i++) {
        GeneralMethods.saveAbility(bPlayer,i,null);
      }
      s.sendMessage("String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      try {
        int slot=Integer.parseInt(args[1]);
        if (slot < 1 || slot > 9) {
          s.sendMessage(ChatColor.RED + "String_Node_Str");
          return true;
        }
        if (bPlayer.getAbilities().get(slot) != null) {
          bPlayer.getAbilities().remove(slot);
          GeneralMethods.saveAbility(bPlayer,slot,null);
        }
        s.sendMessage("String_Node_Str" + slot);
        return true;
      }
 catch (      NumberFormatException e) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
      }
    }
  }
  if (Arrays.asList(bindaliases).contains(args[0].toLowerCase())) {
    if (args.length > 3 || args.length == 1) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (!(s instanceof Player)) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      String abil=args[1];
      if (!GeneralMethods.abilityExists(abil)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      String ability=GeneralMethods.getAbility(abil);
      if (!GeneralMethods.canBind(((Player)s).getName(),ability)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (AirMethods.isAirAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Air)) {
        s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        return true;
      }
      if (WaterMethods.isWaterAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Water)) {
        s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        return true;
      }
      if (EarthMethods.isEarthAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Earth)) {
        s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        return true;
      }
      if (FireMethods.isFireAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Fire)) {
        s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        return true;
      }
      if (ChiMethods.isChiAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Chi)) {
        s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
        return true;
      }
      GeneralMethods.bindAbility((Player)s,ability);
      return true;
    }
    if (args.length == 3) {
      String abil=args[1];
      if (!GeneralMethods.abilityExists(abil)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      String ability=GeneralMethods.getAbility(abil);
      int slot=0;
      try {
        slot=Integer.parseInt(args[2]);
      }
 catch (      NumberFormatException e) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (slot < 1 || slot > 9) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!GeneralMethods.canBind(((Player)s).getName(),ability)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (AirMethods.isAirAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Air)) {
        s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        return true;
      }
      if (WaterMethods.isWaterAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Water)) {
        s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        return true;
      }
      if (EarthMethods.isEarthAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Earth)) {
        s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        return true;
      }
      if (FireMethods.isFireAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Fire)) {
        s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        return true;
      }
      if (ChiMethods.isChiAbility(ability) && !GeneralMethods.isBender(s.getName(),Element.Chi)) {
        s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
        return true;
      }
      GeneralMethods.bindAbility((Player)s,ability,slot);
      return true;
    }
  }
  if (Arrays.asList(importaliases).contains(args[0].toLowerCase())) {
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (!GeneralMethods.isImportEnabled()) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    s.sendMessage(ChatColor.GREEN + "String_Node_Str");
    File bendingPlayersFile=new File("String_Node_Str","String_Node_Str");
    FileConfiguration bendingPlayers=YamlConfiguration.loadConfiguration(bendingPlayersFile);
    final LinkedList<BendingPlayer> bPlayers=new LinkedList<BendingPlayer>();
    for (    String string : bendingPlayers.getConfigurationSection("String_Node_Str").getKeys(false)) {
      if (string.equalsIgnoreCase("String_Node_Str"))       continue;
      String playername=string;
      UUID uuid=Bukkit.getOfflinePlayer(playername).getUniqueId();
      ArrayList<Element> element=new ArrayList<Element>();
      List<Integer> oe=bendingPlayers.getIntegerList(string + "String_Node_Str");
      HashMap<Integer,String> abilities=new HashMap<Integer,String>();
      List<Integer> oa=bendingPlayers.getIntegerList(string + "String_Node_Str");
      boolean permaremoved=bendingPlayers.getBoolean(string + "String_Node_Str");
      int slot=1;
      for (      int i : oa) {
        if (StockAbilities.getAbility(i) != null) {
          abilities.put(slot,StockAbilities.getAbility(i).toString());
          slot++;
        }
 else {
          abilities.put(slot,null);
          slot++;
        }
      }
      for (      int i : oe) {
        if (Element.getType(i) != null) {
          element.add(Element.getType(i));
        }
      }
      BendingPlayer bPlayer=new BendingPlayer(uuid,playername,element,abilities,permaremoved);
      bPlayers.add(bPlayer);
    }
    final int total=bPlayers.size();
    final CommandSender sender=s;
    s.sendMessage(ChatColor.GREEN + "String_Node_Str");
    if (debug) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
    }
    importTask=Bukkit.getServer().getScheduler().runTaskTimerAsynchronously(plugin,new Runnable(){
      public void run(){
        int i=0;
        if (i >= 10) {
          sender.sendMessage(ChatColor.GREEN + "String_Node_Str" + total+ "String_Node_Str");
          return;
        }
        while (i < 10) {
          if (bPlayers.isEmpty()) {
            sender.sendMessage(ChatColor.GREEN + "String_Node_Str");
            Bukkit.getServer().getScheduler().cancelTask(importTask.getTaskId());
            plugin.getConfig().set("String_Node_Str",false);
            plugin.saveConfig();
            for (            Player player : Bukkit.getOnlinePlayers()) {
              GeneralMethods.createBendingPlayer(player.getUniqueId(),player.getName());
            }
            return;
          }
          StringBuilder elements=new StringBuilder();
          BendingPlayer bPlayer=bPlayers.pop();
          if (bPlayer.hasElement(Element.Air))           elements.append("String_Node_Str");
          if (bPlayer.hasElement(Element.Water))           elements.append("String_Node_Str");
          if (bPlayer.hasElement(Element.Earth))           elements.append("String_Node_Str");
          if (bPlayer.hasElement(Element.Fire))           elements.append("String_Node_Str");
          if (bPlayer.hasElement(Element.Chi))           elements.append("String_Node_Str");
          HashMap<Integer,String> abilities=bPlayer.getAbilities();
          ResultSet rs2=DBConnection.sql.readQuery("String_Node_Str" + bPlayer.uuid.toString() + "String_Node_Str");
          try {
            if (rs2.next()) {
              DBConnection.sql.modifyQuery("String_Node_Str" + bPlayer.player + "String_Node_Str"+ bPlayer.uuid.toString());
              DBConnection.sql.modifyQuery("String_Node_Str" + elements + "String_Node_Str"+ bPlayer.uuid.toString());
              DBConnection.sql.modifyQuery("String_Node_Str" + bPlayer.isPermaRemoved() + "String_Node_Str"+ bPlayer.uuid.toString());
              for (int slot=1; slot < 10; slot++) {
                DBConnection.sql.modifyQuery("String_Node_Str" + slot + "String_Node_Str"+ abilities.get(slot)+ "String_Node_Str"+ bPlayer.getPlayerName()+ "String_Node_Str");
              }
            }
 else {
              DBConnection.sql.modifyQuery("String_Node_Str" + bPlayer.uuid.toString() + "String_Node_Str"+ bPlayer.player+ "String_Node_Str"+ elements+ "String_Node_Str"+ bPlayer.isPermaRemoved()+ "String_Node_Str");
              for (int slot=1; slot < 10; slot++) {
                DBConnection.sql.modifyQuery("String_Node_Str" + slot + "String_Node_Str"+ abilities.get(slot)+ "String_Node_Str"+ bPlayer.getPlayerName()+ "String_Node_Str");
              }
            }
          }
 catch (          SQLException ex) {
            ex.printStackTrace();
            GeneralMethods.logError(ex);
          }
          i++;
          if (debug) {
            System.out.println("String_Node_Str" + bPlayer.player + "String_Node_Str"+ bPlayers.size()+ "String_Node_Str");
          }
        }
      }
    }
,0,40);
    return true;
  }
  if (Arrays.asList(displayaliases).contains(args[0].toLowerCase())) {
    if (args.length > 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      if (!(s instanceof Player)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (Arrays.asList(airaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.airbendingabilities.isEmpty()) {
          s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.airbendingabilities) {
          if (GeneralMethods.isSubAbility(st))           continue;
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(AirMethods.getAirColor() + st);
          }
        }
        if (!AbilityModuleManager.flightabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
        }
        if (!AbilityModuleManager.spiritualprojectionabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
        }
        return true;
      }
      if (Arrays.asList(flightaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.flightabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.flightabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(spiritualprojectionaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.spiritualprojectionabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.spiritualprojectionabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(wateraliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.waterbendingabilities.isEmpty()) {
          s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.waterbendingabilities) {
          if (GeneralMethods.isSubAbility(st))           continue;
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(WaterMethods.getWaterColor() + st);
          }
        }
        if (!AbilityModuleManager.bloodabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (!AbilityModuleManager.healingabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (!AbilityModuleManager.iceabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (!AbilityModuleManager.plantabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        return true;
      }
      if (Arrays.asList(bloodaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.bloodabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.bloodabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(healingaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.healingabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.healingabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(icealiases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.iceabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.iceabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(plantaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.plantabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.plantabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(earthaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.earthbendingabilities.isEmpty()) {
          s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.earthbendingabilities) {
          if (GeneralMethods.isSubAbility(st))           continue;
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(EarthMethods.getEarthColor() + st);
          }
        }
        if (!AbilityModuleManager.lavaabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
        if (!AbilityModuleManager.metalabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
        if (!AbilityModuleManager.sandabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
        return true;
      }
      if (Arrays.asList(lavabendingaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.lavaabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.lavaabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(metalbendingaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.metalabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.metalabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(sandbendingaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.sandabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.sandabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + st);
          }
        }
        return true;
      }
      if (Arrays.asList(firealiases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.firebendingabilities.isEmpty()) {
          s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.firebendingabilities) {
          if (GeneralMethods.isSubAbility(st))           continue;
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(FireMethods.getFireColor() + st);
          }
        }
        if (!AbilityModuleManager.combustionabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
        }
        if (!AbilityModuleManager.lightningabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
        }
        return true;
      }
      if (Arrays.asList(lightningaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.lightningabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.lightningabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + st);
          }
        }
      }
      if (Arrays.asList(combustionaliases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.combustionabilities.isEmpty()) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.combustionabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + st);
          }
        }
      }
      if (Arrays.asList(chialiases).contains(args[1].toLowerCase())) {
        if (AbilityModuleManager.chiabilities.isEmpty()) {
          s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
          return true;
        }
        for (        String st : AbilityModuleManager.chiabilities) {
          if (GeneralMethods.canView((Player)s,st)) {
            s.sendMessage(ChiMethods.getChiColor() + st);
          }
        }
        return true;
      }
 else {
        s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str"+ AirMethods.getAirColor()+ "String_Node_Str"+ ChatColor.WHITE+ "String_Node_Str"+ WaterMethods.getWaterColor()+ "String_Node_Str"+ ChatColor.WHITE+ "String_Node_Str"+ EarthMethods.getEarthColor()+ "String_Node_Str"+ ChatColor.WHITE+ "String_Node_Str"+ FireMethods.getFireColor()+ "String_Node_Str"+ ChatColor.WHITE+ "String_Node_Str"+ ChiMethods.getChiColor()+ "String_Node_Str");
      }
    }
    if (args.length == 1) {
      if (!(s instanceof Player)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(s.getName());
      HashMap<Integer,String> abilities=bPlayer.getAbilities();
      if (abilities.isEmpty()) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        s.sendMessage("String_Node_Str");
        return true;
      }
      for (int i=1; i <= 9; i++) {
        String ability=abilities.get(i);
        if (ability != null && !ability.equalsIgnoreCase("String_Node_Str"))         s.sendMessage(i + "String_Node_Str" + GeneralMethods.getAbilityColor(ability)+ ability);
      }
      return true;
    }
  }
  if (Arrays.asList(togglealiases).contains(args[0].toLowerCase())) {
    if (args.length > 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (args.length == 1) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!(s instanceof Player)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(s.getName());
      if (bPlayer.isToggled) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        bPlayer.isToggled=false;
        return true;
      }
 else {
        s.sendMessage(ChatColor.GREEN + "String_Node_Str");
        bPlayer.isToggled=true;
        return true;
      }
    }
 else     if (args.length == 2 && args[1].equalsIgnoreCase("String_Node_Str")) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (isToggledForAll) {
        isToggledForAll=false;
        for (        Player player : Bukkit.getOnlinePlayers()) {
          player.sendMessage(ChatColor.GREEN + "String_Node_Str");
          return true;
        }
      }
 else {
        isToggledForAll=true;
        for (        Player player : Bukkit.getOnlinePlayers()) {
          player.sendMessage(ChatColor.RED + "String_Node_Str");
          return true;
        }
      }
    }
 else {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
  }
  if (Arrays.asList(whoaliases).contains(args[0].toLowerCase())) {
    if (args.length > 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      Player p=Bukkit.getPlayer(args[1]);
      if (p == null) {
        s.sendMessage(ChatColor.GREEN + "String_Node_Str");
        final String player=args[1];
        final CommandSender sender=s;
        new BukkitRunnable(){
          @Override public void run(){
            ResultSet rs2=DBConnection.sql.readQuery("String_Node_Str" + player + "String_Node_Str");
            try {
              final List<String> messages=new ArrayList<String>();
              if (rs2.next()) {
                UUID uuid=UUID.fromString(rs2.getString("String_Node_Str"));
                String element=rs2.getString("String_Node_Str");
                messages.add(player + "String_Node_Str");
                if (element.contains("String_Node_Str"))                 messages.add(AirMethods.getAirColor() + "String_Node_Str");
                if (element.contains("String_Node_Str"))                 messages.add(WaterMethods.getWaterColor() + "String_Node_Str");
                if (element.contains("String_Node_Str"))                 messages.add(EarthMethods.getEarthColor() + "String_Node_Str");
                if (element.contains("String_Node_Str"))                 messages.add(FireMethods.getFireColor() + "String_Node_Str");
                if (element.contains("String_Node_Str"))                 messages.add(ChiMethods.getChiColor() + "String_Node_Str");
                if (GeneralMethods.hasRPG()) {
                  if (RPGMethods.isCurrentAvatar(uuid)) {
                    messages.add(GeneralMethods.getAvatarColor() + "String_Node_Str");
                  }
 else                   if (RPGMethods.hasBeenAvatar(uuid)) {
                    messages.add(GeneralMethods.getAvatarColor() + "String_Node_Str");
                  }
 else {
                  }
                }
              }
 else {
                messages.add(ChatColor.RED + "String_Node_Str");
              }
              new BukkitRunnable(){
                @Override public void run(){
                  for (                  String message : messages) {
                    sender.sendMessage(message);
                  }
                }
              }
.runTask(ProjectKorra.plugin);
            }
 catch (            SQLException e) {
              e.printStackTrace();
              GeneralMethods.logError(e);
            }
          }
        }
.runTaskAsynchronously(ProjectKorra.plugin);
        return true;
      }
      String un=p.getName();
      s.sendMessage(un + "String_Node_Str");
      if (GeneralMethods.isBender(un,Element.Air)) {
        s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        if (AirMethods.canAirFlight(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
        }
        if (AirMethods.canUseSpiritualProjection(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Air) + "String_Node_Str");
        }
      }
      if (GeneralMethods.isBender(un,Element.Water)) {
        s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        if (WaterMethods.canPlantbend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (WaterMethods.canBloodbend(p)) {
          if (WaterMethods.canBloodbendAtAnytime(p))           s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
 else           s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (WaterMethods.canIcebend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
        if (WaterMethods.canWaterHeal(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Water) + "String_Node_Str");
        }
      }
      if (GeneralMethods.isBender(un,Element.Earth)) {
        s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        if (EarthMethods.canMetalbend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
        if (EarthMethods.canLavabend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
        if (EarthMethods.canSandbend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Earth) + "String_Node_Str");
        }
      }
      if (GeneralMethods.isBender(un,Element.Fire)) {
        s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        if (FireMethods.canCombustionbend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
        }
        if (FireMethods.canLightningbend(p)) {
          s.sendMessage(GeneralMethods.getSubBendingColor(Element.Fire) + "String_Node_Str");
        }
      }
      if (GeneralMethods.isBender(un,Element.Chi)) {
        s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(un);
      UUID uuid2=bPlayer.uuid;
      if (bPlayer != null) {
        s.sendMessage("String_Node_Str");
        for (int i=1; i <= 9; i++) {
          String ability=bPlayer.getAbilities().get(i);
          if (ability == null || ability.equalsIgnoreCase("String_Node_Str")) {
            continue;
          }
 else {
            s.sendMessage(i + "String_Node_Str" + GeneralMethods.getAbilityColor(ability)+ ability);
          }
        }
      }
      if (GeneralMethods.hasRPG()) {
        if (RPGMethods.isCurrentAvatar(p.getUniqueId())) {
          s.sendMessage(GeneralMethods.getAvatarColor() + "String_Node_Str");
        }
 else         if (RPGMethods.hasBeenAvatar(p.getUniqueId())) {
          s.sendMessage(GeneralMethods.getAvatarColor() + "String_Node_Str");
        }
      }
      if (uuid2.toString().equals("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      if (uuid2.toString().equals("String_Node_Str") || uuid2.toString().equals("String_Node_Str") || uuid2.toString().equals("String_Node_Str")|| uuid2.toString().equals("String_Node_Str")|| uuid2.toString().equals("String_Node_Str")|| uuid2.toString().equals("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (uuid2.toString().equals("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      if (uuid2.toString().equals("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      if (uuid2.toString().equals("String_Node_Str") || uuid2.toString().equals("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      if (uuid2.toString().equals("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      return true;
    }
    if (args.length == 1) {
      List<String> players=new ArrayList<String>();
      for (      Player player : Bukkit.getOnlinePlayers()) {
        String un=player.getName();
        BendingPlayer bp=GeneralMethods.getBendingPlayer(un);
        if (bp.elements.size() > 1) {
          players.add(GeneralMethods.getAvatarColor() + un);
          continue;
        }
        if (bp.elements.size() == 0) {
          players.add(un);
          continue;
        }
        if (GeneralMethods.isBender(un,Element.Air)) {
          players.add(AirMethods.getAirColor() + un);
          continue;
        }
        if (GeneralMethods.isBender(un,Element.Water)) {
          players.add(WaterMethods.getWaterColor() + un);
          continue;
        }
        if (GeneralMethods.isBender(un,Element.Earth)) {
          players.add(EarthMethods.getEarthColor() + un);
          continue;
        }
        if (GeneralMethods.isBender(un,Element.Chi)) {
          players.add(ChiMethods.getChiColor() + un);
          continue;
        }
        if (GeneralMethods.isBender(un,Element.Fire)) {
          players.add(FireMethods.getFireColor() + un);
          continue;
        }
      }
      for (      String st : players) {
        s.sendMessage(st);
      }
      return true;
    }
  }
  if (Arrays.asList(versionaliases).contains(args[0].toLowerCase())) {
    if (args.length != 1) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.RED+ plugin.getDescription().getVersion());
    if (GeneralMethods.hasRPG()) {
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.RED+ GeneralMethods.getRPG().getDescription().getVersion());
    }
    if (GeneralMethods.hasItems()) {
      s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.RED+ GeneralMethods.getItems().getDescription().getVersion());
    }
    s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.RED+ "String_Node_Str");
    s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.RED+ "String_Node_Str");
    return true;
  }
  if (Arrays.asList(removealiases).contains(args[0].toLowerCase())) {
    if (args.length != 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    Player player=Bukkit.getPlayer(args[1]);
    if (player == null) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(player.getName());
    GeneralMethods.removeUnusableAbilities(player.getName());
    bPlayer.elements.clear();
    GeneralMethods.saveElements(bPlayer);
    s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.DARK_AQUA+ player.getName());
    player.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.DARK_AQUA+ s.getName());
    Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,null,Result.REMOVE));
    return true;
  }
  if (Arrays.asList(permaremovealiases).contains(args[0].toLowerCase())) {
    if (args.length != 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      return true;
    }
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    Player player=Bukkit.getPlayer(args[1]);
    if (player == null) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(player.getName());
    if (bPlayer.isPermaRemoved()) {
      bPlayer.permaRemoved=false;
      GeneralMethods.savePermaRemoved(bPlayer);
      s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.DARK_AQUA+ player.getName());
      return true;
    }
    bPlayer.elements.clear();
    GeneralMethods.removeUnusableAbilities(player.getName());
    GeneralMethods.saveElements(bPlayer);
    bPlayer.permaRemoved=true;
    GeneralMethods.savePermaRemoved(bPlayer);
    player.sendMessage(ChatColor.RED + "String_Node_Str");
    s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.DARK_AQUA+ player.getName());
    Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,null,Result.PERMAREMOVE));
    return true;
  }
  if (Arrays.asList(addaliases).contains(args[0].toLowerCase())) {
    if (args.length > 3) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      return true;
    }
    if (args.length == 3) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      Player player=Bukkit.getPlayer(args[1]);
      if (player == null) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(player.getName());
      if (Arrays.asList(airaliases).contains(args[2].toLowerCase())) {
        bPlayer.addElement(Element.Air);
        GeneralMethods.saveElements(bPlayer);
        player.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        s.sendMessage(ChatColor.DARK_AQUA + player.getName() + AirMethods.getAirColor()+ "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,Element.Air,Result.ADD));
        return true;
      }
      if (Arrays.asList(wateraliases).contains(args[2].toLowerCase())) {
        bPlayer.addElement(Element.Water);
        GeneralMethods.saveElements(bPlayer);
        player.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        s.sendMessage(ChatColor.DARK_AQUA + player.getName() + WaterMethods.getWaterColor()+ "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,Element.Water,Result.ADD));
        return true;
      }
      if (Arrays.asList(earthaliases).contains(args[2].toLowerCase())) {
        bPlayer.addElement(Element.Earth);
        GeneralMethods.saveElements(bPlayer);
        player.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        s.sendMessage(ChatColor.DARK_AQUA + player.getName() + EarthMethods.getEarthColor()+ "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,Element.Earth,Result.ADD));
        return true;
      }
      if (Arrays.asList(firealiases).contains(args[2].toLowerCase())) {
        bPlayer.addElement(Element.Fire);
        GeneralMethods.saveElements(bPlayer);
        player.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        s.sendMessage(ChatColor.DARK_AQUA + player.getName() + FireMethods.getFireColor()+ "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,Element.Fire,Result.ADD));
        return true;
      }
      if (Arrays.asList(chialiases).contains(args[2].toLowerCase())) {
        bPlayer.addElement(Element.Chi);
        GeneralMethods.saveElements(bPlayer);
        player.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
        s.sendMessage(ChatColor.DARK_AQUA + player.getName() + ChiMethods.getChiColor()+ "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,player,Element.Chi,Result.ADD));
        return true;
      }
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!(s instanceof Player)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(s.getName());
      if (Arrays.asList(airaliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + AirMethods.getAirColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.addElement(Element.Air);
        GeneralMethods.saveElements(bPlayer);
        s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Air,Result.ADD));
        return true;
      }
      if (Arrays.asList(wateraliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + WaterMethods.getWaterColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.addElement(Element.Water);
        GeneralMethods.saveElements(bPlayer);
        s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Water,Result.ADD));
        return true;
      }
      if (Arrays.asList(earthaliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + EarthMethods.getEarthColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.addElement(Element.Earth);
        GeneralMethods.saveElements(bPlayer);
        s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Earth,Result.ADD));
        return true;
      }
      if (Arrays.asList(firealiases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + FireMethods.getFireColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.addElement(Element.Fire);
        GeneralMethods.saveElements(bPlayer);
        s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Fire,Result.ADD));
        return true;
      }
      if (Arrays.asList(chialiases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + ChiMethods.getChiColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.addElement(Element.Chi);
        GeneralMethods.saveElements(bPlayer);
        s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Chi,Result.ADD));
        return true;
      }
      s.sendMessage(ChatColor.RED + "String_Node_Str");
    }
  }
  if (Arrays.asList(choosealiases).contains(args[0].toLowerCase())) {
    if (args.length > 3) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      return true;
    }
    if (args.length == 2) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!(s instanceof Player)) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bPlayer=GeneralMethods.getBendingPlayer(s.getName());
      if (bPlayer.isPermaRemoved()) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      if (!bPlayer.getElements().isEmpty()) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str");
          return true;
        }
      }
      if (Arrays.asList(airaliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + AirMethods.getAirColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.setElement(Element.Air);
        s.sendMessage(AirMethods.getAirColor() + "String_Node_Str");
        GeneralMethods.removeUnusableAbilities(s.getName());
        GeneralMethods.saveElements(bPlayer);
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Air,Result.CHOOSE));
        return true;
      }
      if (Arrays.asList(wateraliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + WaterMethods.getWaterColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.setElement(Element.Water);
        s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str");
        GeneralMethods.removeUnusableAbilities(s.getName());
        GeneralMethods.saveElements(bPlayer);
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Water,Result.CHOOSE));
        return true;
      }
      if (Arrays.asList(earthaliases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + EarthMethods.getEarthColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.setElement(Element.Earth);
        s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str");
        GeneralMethods.removeUnusableAbilities(s.getName());
        GeneralMethods.saveElements(bPlayer);
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Earth,Result.CHOOSE));
        return true;
      }
      if (Arrays.asList(firealiases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + FireMethods.getFireColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.setElement(Element.Fire);
        s.sendMessage(FireMethods.getFireColor() + "String_Node_Str");
        GeneralMethods.removeUnusableAbilities(s.getName());
        GeneralMethods.saveElements(bPlayer);
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Fire,Result.CHOOSE));
        return true;
      }
      if (Arrays.asList(chialiases).contains(args[1].toLowerCase())) {
        if (!s.hasPermission("String_Node_Str")) {
          s.sendMessage(ChatColor.RED + "String_Node_Str" + ChiMethods.getChiColor()+ "String_Node_Str");
          return true;
        }
        bPlayer.setElement(Element.Chi);
        s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str");
        GeneralMethods.removeUnusableAbilities(s.getName());
        GeneralMethods.saveElements(bPlayer);
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,(Player)s,Element.Chi,Result.CHOOSE));
        return true;
      }
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      return true;
    }
    if (args.length == 3) {
      if (!s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      Player target=Bukkit.getPlayer(args[1]);
      if (target == null) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      BendingPlayer bTarget=GeneralMethods.getBendingPlayer(target.getName());
      Element e=null;
      if (Arrays.asList(airaliases).contains(args[2]))       e=Element.Air;
      if (Arrays.asList(wateraliases).contains(args[2]))       e=Element.Water;
      if (Arrays.asList(earthaliases).contains(args[2]))       e=Element.Earth;
      if (Arrays.asList(firealiases).contains(args[2]))       e=Element.Fire;
      if (Arrays.asList(chialiases).contains(args[2]))       e=Element.Chi;
      if (e == null) {
        s.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
 else {
        bTarget.setElement(e);
        GeneralMethods.removeUnusableAbilities(target.getName());
        GeneralMethods.saveElements(bTarget);
        s.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.DARK_AQUA+ target.getName()+ "String_Node_Str"+ ChatColor.RED+ "String_Node_Str"+ ChatColor.DARK_AQUA+ e.toString()+ ChatColor.RED+ "String_Node_Str");
        target.sendMessage(ChatColor.RED + "String_Node_Str" + ChatColor.DARK_AQUA+ e.toString()+ ChatColor.RED+ "String_Node_Str"+ ChatColor.DARK_AQUA+ s.getName());
        Bukkit.getServer().getPluginManager().callEvent(new PlayerChangeElementEvent(s,target,e,Result.CHOOSE));
        return true;
      }
    }
  }
  if (Arrays.asList(helpaliases).contains(args[0].toLowerCase())) {
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (args.length != 2) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      if (s.hasPermission("String_Node_Str")) {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      }
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      if (s.hasPermission("String_Node_Str"))       s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(airaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(AirMethods.getAirColor() + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
    }
    if (Arrays.asList(wateraliases).contains(args[1].toLowerCase())) {
      s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
    }
    if (Arrays.asList(earthaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(EarthMethods.getEarthColor() + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
    }
    if (Arrays.asList(firealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + FireMethods.getFireColor()+ "String_Node_Str"+ ChatColor.YELLOW+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
    }
    if (Arrays.asList(chialiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
    }
    if (Arrays.asList(invinciblealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
    }
    if (Arrays.asList(importaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str");
    }
    if (Arrays.asList(displayaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str");
    }
    if (Arrays.asList(givealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str");
      s.sendMessage(ChatColor.DARK_AQUA + "String_Node_Str");
    }
    if (Arrays.asList(choosealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
      return true;
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(permaremovealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str");
      return true;
    }
    if (Arrays.asList(versionaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(removealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(togglealiases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
      return true;
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(clearaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
    }
    if (Arrays.asList(reloadaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str");
      return true;
    }
    if (Arrays.asList(bindaliases).contains(args[1].toLowerCase())) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str" + ChatColor.DARK_AQUA+ "String_Node_Str");
      s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + "String_Node_Str");
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(FireMethods.getFireColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      for (      ComboAbilityModule cam : ComboModuleManager.combo) {
        if (cam.getElement().equals(Element.Fire.toString())) {
          ChatColor color=GeneralMethods.getAvatarColor();
          if (cam.getSubElement() == null)           color=FireMethods.getFireColor();
 else           color=GeneralMethods.getSubBendingColor(Element.Fire);
          s.sendMessage(color + cam.getName() + ChatColor.WHITE+ "String_Node_Str"+ cam.getDescription());
          s.sendMessage(ChatColor.GOLD + cam.getInstructions());
        }
      }
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(AirMethods.getAirColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(AirMethods.getAirColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(AirMethods.getAirColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      for (      ComboAbilityModule cam : ComboModuleManager.combo) {
        if (cam.getElement().equals(Element.Air.toString())) {
          ChatColor color=GeneralMethods.getAvatarColor();
          if (cam.getSubElement() == null)           color=AirMethods.getAirColor();
 else           color=GeneralMethods.getSubBendingColor(Element.valueOf(cam.getElement()));
          s.sendMessage(color + cam.getName() + ChatColor.WHITE+ "String_Node_Str"+ cam.getDescription());
          s.sendMessage(ChatColor.GOLD + cam.getInstructions());
        }
      }
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(WaterMethods.getWaterColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      for (      ComboAbilityModule cam : ComboModuleManager.combo) {
        if (cam.getElement().equals(Element.Water.toString())) {
          ChatColor color=GeneralMethods.getAvatarColor();
          if (cam.getSubElement() == null)           color=WaterMethods.getWaterColor();
 else           color=GeneralMethods.getSubBendingColor(Element.valueOf(cam.getElement()));
          s.sendMessage(color + cam.getName() + ChatColor.WHITE+ "String_Node_Str"+ cam.getDescription());
          s.sendMessage(ChatColor.GOLD + cam.getInstructions());
        }
      }
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      for (      ComboAbilityModule cam : ComboModuleManager.combo) {
        if (cam.getElement().equals(Element.Earth.toString())) {
          ChatColor color=GeneralMethods.getAvatarColor();
          if (cam.getSubElement() == null)           color=EarthMethods.getEarthColor();
 else           color=GeneralMethods.getSubBendingColor(Element.valueOf(cam.getElement()));
          s.sendMessage(color + cam.getName() + ChatColor.WHITE+ "String_Node_Str"+ cam.getDescription());
          s.sendMessage(ChatColor.GOLD + cam.getInstructions());
        }
      }
    }
    if (args[1].equalsIgnoreCase("String_Node_Str")) {
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      s.sendMessage(ChiMethods.getChiColor() + "String_Node_Str" + ChatColor.WHITE+ "String_Node_Str");
      s.sendMessage(ChatColor.GOLD + "String_Node_Str");
      for (      ComboAbilityModule cam : ComboModuleManager.combo) {
        if (cam.getElement().equals(Element.Chi.toString())) {
          ChatColor color=GeneralMethods.getAvatarColor();
          if (cam.getSubElement() == null)           color=ChiMethods.getChiColor();
 else           color=GeneralMethods.getSubBendingColor(Element.valueOf(cam.getElement()));
          s.sendMessage(color + cam.getName() + ChatColor.WHITE+ "String_Node_Str"+ cam.getDescription());
          s.sendMessage(ChatColor.GOLD + cam.getInstructions());
        }
      }
    }
    if (GeneralMethods.abilityExists(args[1])) {
      String ability=GeneralMethods.getAbility(args[1]);
      if (AirMethods.isAirAbility(ability)) {
        s.sendMessage(AirMethods.getAirColor() + ability + "String_Node_Str");
        s.sendMessage(AirMethods.getAirColor() + AbilityModuleManager.descriptions.get(ability));
      }
 else       if (WaterMethods.isWaterAbility(ability)) {
        s.sendMessage(WaterMethods.getWaterColor() + ability + "String_Node_Str");
        s.sendMessage(WaterMethods.getWaterColor() + AbilityModuleManager.descriptions.get(ability));
      }
 else       if (EarthMethods.isEarthAbility(ability)) {
        if (EarthMethods.isMetalbendingAbility(ability)) {
          s.sendMessage(EarthMethods.getMetalbendingColor() + ability + "String_Node_Str");
          s.sendMessage(EarthMethods.getMetalbendingColor() + AbilityModuleManager.descriptions.get(ability));
        }
 else {
          s.sendMessage(EarthMethods.getEarthColor() + ability + "String_Node_Str");
          s.sendMessage(EarthMethods.getEarthColor() + AbilityModuleManager.descriptions.get(ability));
        }
      }
 else       if (FireMethods.isFireAbility(ability)) {
        s.sendMessage(FireMethods.getFireColor() + ability + "String_Node_Str");
        s.sendMessage(FireMethods.getFireColor() + AbilityModuleManager.descriptions.get(ability));
      }
 else       if (ChiMethods.isChiAbility(ability)) {
        s.sendMessage(ChiMethods.getChiColor() + ability + "String_Node_Str");
        s.sendMessage(ChiMethods.getChiColor() + AbilityModuleManager.descriptions.get(ability));
      }
 else {
        s.sendMessage(GeneralMethods.getAvatarColor() + ability + "String_Node_Str");
        s.sendMessage(GeneralMethods.getAvatarColor() + AbilityModuleManager.descriptions.get(ability));
      }
    }
  }
  if (Arrays.asList(checkaliases).contains(args[0].toLowerCase())) {
    if (!s.hasPermission("String_Node_Str")) {
      s.sendMessage(ChatColor.RED + "String_Node_Str");
      return true;
    }
    if (s instanceof Player) {
      if (plugin.updater.updateAvalible()) {
        s.sendMessage(ChatColor.GREEN + "String_Node_Str" + ChatColor.GOLD+ "String_Node_Str"+ ChatColor.GREEN+ "String_Node_Str");
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.RED+ plugin.updater.getCurrentVersion());
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.GOLD+ plugin.updater.getCurrentVersion());
      }
 else {
        s.sendMessage(ChatColor.YELLOW + "String_Node_Str" + ChatColor.GOLD+ "String_Node_Str");
      }
    }
 else     if (s instanceof ConsoleCommandSender) {
      plugin.updater.checkUpdate();
    }
  }
  return true;
}