@Override
    public Collection<Appliance> getViableAppliances(Collection<Appliance> allObjects){
        Collection<Appliance> viableObjects = new ArrayList<>();
        if(performedAt != null){
                for (Appliance obj : allObjects) {
                    if (performedAt.equals(obj.type)) {
                        Iterator<String> it = requiredItem.keySet().iterator();
                        boolean fulfilled = true;
                        while(it.hasNext()){
                            if(!obj.hasItem(it.next())) fulfilled = false;
                        }
                        if(fulfilled) viableObjects.add(obj);
                    }
                }
        }else System.out.println("Task " + taskName + " cannot be performed anywhere?");
        return viableObjects;
    }