public ArrayList<Task> getPlausableDependantTasks(Task task) {
        ArrayList<Task> tasksToReturn = new ArrayList<Task>();
        ArrayList<Task> dependantNodes = task.getDependentNodes();
        for (Task currentTask : tasks) {
            if (task.isSibling(currentTask)) {
                // task is subling
                if (dependantNodes.contains(currentTask) == false) {
                    // not currently a dependant node
                    if ((task == currentTask) == false) {
                        // if not self
                        tasksToReturn.add(currentTask);
                    }
                }

            }
        }
        return tasksToReturn;
    }