'Parse the found release files.'

def ParseMultiple(self, stats, file_objects, knowledge_base):

    _ = knowledge_base
    found_files = self._Combine(stats, file_objects)
    weights = [w for w in self.WEIGHTS if (w.path in found_files)]
    weights = sorted(weights, key=(lambda x: x.weight))
    for (_, path, handler) in weights:
        contents = found_files[path]
        obj = handler(contents)
        (complete, result) = obj.Parse()
        if (result is None):
            continue
        elif complete:
            (yield rdf_protodict.Dict({'os_release': result.release, 'os_major_version': result.major, 'os_minor_version': result.minor}))
            break
    else:
        (yield rdf_anomaly.Anomaly(type='PARSER_ANOMALY', symptom='Unable    to    determine    distribution.'))
