@staticmethod
def separate_valid_and_failed_hashes(file_hashes):
    """
        Given a list of file hashes seperate them into a list of valid and a list of failed.
        :param file_hashes: [FileHash]
        :return: [FileHash], [FileHash]: valid_file_hashes, failed_file_hashes
        """
    valid_file_hashes = []
    failed_file_hashes = []
    for file_hash in file_hashes:
        if file_hash.is_valid():
            valid_file_hashes.append(file_hash)
        else:
            failed_file_hashes.append(file_hash)
    return valid_file_hashes, failed_file_hashes
