def _preprocess_pdb_parser_output(dictionary, label, warnings):
    """
    The mmcif dictionary values are either str or list(), which is a bit
    tricky to work with. This method makes list() of all of them in
    order to parse all of the in the same way.

    Args:
        dictionary (dict): mmcif category with the parser output.
        label (str): name of the category
        warnings (list): possible issues encountered when parsing

    Returns:
        dict: unified dictionary for structure parsing.
    """
    if label not in dictionary:
        warnings.append('Namespace {} does not exist.'.format(label))
        return []

    check_element = list(dictionary[label].keys())[0]
    values = (dictionary[label]
              if isinstance(dictionary[label][check_element], list)
              else {k: [v] for k, v in dictionary[label].items()})
    return values