def can_next(self, step, inputs, workflow, status):
        """
        All the outputs are empty and status is running or finalising
        :param step:
        :param inputs:
        :param workflow:
        :param status:
        :return:
        """
        if not (step in status and status[step] in {'running', 'finalising'}):
            return False
        for out in step.outs:
            if not all(inputs[consumer].is_writable(out) for consumer in workflow.get_parents(out)):
                return False
        return True