code: def score_evidence_list(self, evidences):
          
          def _score(evidences):
              if not evidences:
                  return 0
              # Collect all unique sources
              sources = [ev.source_api for ev in evidences]
              uniq_sources = numpy.unique(sources)
              # Calculate the systematic error factors given unique sources
              syst_factors = {s: self.prior_probs['syst'][s]
                              for s in uniq_sources}
              # Calculate the radom error factors for each source
              rand_factors = {k: [] for k in uniq_sources}
              for ev in evidences:
                  rand_factors[ev.source_api].append(
                      evidence_random_noise_prior(
                          ev,
                          self.prior_probs['rand'],
                          self.subtype_probs))
              # The probability of incorrectness is the product of the
              # source-specific probabilities
              neg_prob_prior = 1
              for s in uniq_sources:
                  neg_prob_prior *= (syst_factors[s] +
                                     numpy.prod(rand_factors[s]))
              # Finally, the probability of correctness is one minus incorrect
              prob_prior = 1 - neg_prob_prior
              return prob_prior
          pos_evidence = [ev for ev in evidences if
                          not ev.epistemics.get('negated')]
          neg_evidence = [ev for ev in evidences if
                          ev.epistemics.get('negated')]
          pp = _score(pos_evidence)
          np = _score(neg_evidence)
          # The basic assumption is that the positive and negative evidence
          # can't simultaneously be correct.
          # There are two cases to consider. (1) If the positive evidence is
          # incorrect then there is no Statement and the belief should be 0,
          # irrespective of the negative evidence.
          # (2) If the positive evidence is correct and the negative evidence
          # is incorrect.
          # This amounts to the following formula:
          # 0 * (1-pp) + 1 * (pp * (1-np)) which we simplify below
          score = pp * (1 - np)
          return score
docs: Return belief score given a list of supporting evidences.