def METHOD_NAME(self, keys, index=None):
    if index is not None and index not in self._indexes:
        raise ValueError('Index {} does not exist'.format(index))
    out = []
    for key in keys:
        try:
            if index:
                out.append((key, self._data[
                    self._indexes[index][0][key.encode()]]))
            else:
                out.append((key, self._data[key]))
        except KeyError:
            # ignore missing values here
            continue
    return out