def get_next_objective_banks(self, n=None):
        """Gets the next set of ObjectiveBank elements in this list which
        must be less than or equal to the return from available().

        arg:    n (cardinal): the number of ObjectiveBank elements
                requested which must be less than or equal to
                available()
        return: (osid.learning.ObjectiveBank) - an array of
                ObjectiveBank elements.  The length of the array is less
                than or equal to the number specified.
        raise:  IllegalState - no more elements available in this list
        raise:  OperationFailed - unable to complete request
        compliance: mandatory - This method must be implemented.

        """
        if n > self.available():
            # !!! This is not quite as specified (see method docs) !!!
            raise IllegalState('not enough elements available in this list')
        else:
            next_list = []
            x = 0
            while x < n:
                try:
                    next_list.append(next(self))
                except Exception:  # Need to specify exceptions here!
                    raise OperationFailed()
                x = x + 1
            return next_list