" is NOT capable of doing " + tasks[i]);
" is NOT capable of doing " + tasks[i].getKey());
  public Resource[] capableResources (Task task, SchedulingData sdata) {    if (cachedCapableResources == null) {      Task[] tasks = sdata.getTasks();      Resource[] resources = sdata.getResources();            if (debug)	System.out.println ("SchedulingSpecs.capableResources - " +                             tasks.length + " tasks " + resources.length + 			    " resources");      cachedCapableResources = new HashMap();      for (int i = 0; i < tasks.length; i++) {        ArrayList capable = new ArrayList();        for (int j = 0; j < resources.length; j++) {          if (isCapable (tasks[i], resources[j])) {            capable.add (resources[j]);	    if (debug)	      System.out.println ("SchedulingSpecs.capableResources - " +                                  resources[j] + "(" + j + " of " +                                  resources.length + ")" +				  " is capable of doing " + tasks[i]);	  } else {	    if (debug)	      System.out.println ("SchedulingSpecs.capableResources - " +                                  resources[j] + "(" + j + " of " +                                  resources.length + ")" +				  " is NOT capable of doing " + tasks[i]);	  }        }        Resource[] arr = new Resource [capable.size()];        cachedCapableResources.put (tasks[i].getKey(), capable.toArray (arr));      }    }    return (Resource[]) cachedCapableResources.get (task.getKey());  }