def METHOD_NAME(predictions, references, rouge_types=None, use_stemmer=True):
    predictions = [" ".join(prediction) for prediction in predictions]
    references = [[" ".join(reference)] for reference in references]
    bleu = evaluate.load("bleu")
    assert len(predictions) == len(references)
    bleu1_results = bleu.compute(predictions=predictions, references=references, max_order=1)
    bleu2_results = bleu.compute(predictions=predictions, references=references, max_order=2)
    bleu3_results = bleu.compute(predictions=predictions, references=references, max_order=3)
    bleu4_results = bleu.compute(predictions=predictions, references=references, max_order=4)
    result = {
        "BLEU-1": bleu1_results["bleu"] * 100,
        "BLEU-2": bleu2_results["bleu"] * 100,
        "BLEU-3": bleu3_results["bleu"] * 100,
        "BLEU-4": bleu4_results["bleu"] * 100,
    }
    return result