Program: 134111
Project: 134111
Buggy source:
private void init(){
  PluginCommand projectkorra=plugin.getCommand("String_Node_Str");
  CommandExecutor exe;
  exe=new CommandExecutor(){
    @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;
    }
  }
;
  projectkorra.setExecutor(exe);
}

Fixed version (ground truth):
private void init(){
  PluginCommand projectkorra=plugin.getCommand("String_Node_Str");
  CommandExecutor exe;
  exe=new CommandExecutor(){
    @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;
    }
  }
;
  projectkorra.setExecutor(exe);
}