code: CloseableIterator<T> seperateIteratorThrow(int flags) throws SQLException {
  		// check state to make sure we have a DAO in case we have a deserialized collection
  		if (dao == null) {
  			throw new IllegalStateException(
  					"Internal DAO object is null.  Maybe the collection was deserialized or otherwise constructed wrongly.  "
  							+ "Use dao.assignEmptyForeignCollection(...) or dao.getEmptyForeignCollection(...) instead");
  		} else {
  			return dao.iterator(getPreparedQuery(), flags);
  		}
  	}
docs: NOTE: package perms to removed synthetic accessor