def METHOD_NAME(reference_corpus, translation_corpus, max_order=4,
                 smooth=False):
  """Computes BLEU score of translated segments against one or more references.
    This is the most common usage when calculating BLEU scores.
  Args:
    reference_corpus: list of lists of references for each translation. Each
        reference should be tokenized into a list of tokens.
        reference_corpus[i][j][k] represents the k'th word of the i'th sentence
        for the j'th reference text
    translation_corpus: list of translated sentences to score. Each sentence
        should be tokenized into a list of tokens.
        translation_corpus[i][j] represents the j'th word for the i'th sentence
    max_order: Maximum n-gram order to use when computing BLEU score.
    smooth: Whether or not to apply Lin et al. 2004 smoothing.
  Returns:
    3-Tuple with the BLEU score, n-gram precisions, geometric mean of n-gram
    precisions and brevity penalty.
  """
  runningBLEU = RunningBLEUScorer(max_order=max_order, smooth=smooth)
  for (references, translation) in zip(reference_corpus,
                                       translation_corpus):
    runningBLEU.add_sentence_with_multiple_refs(references, translation)
  return runningBLEU.calc_BLEU_score(