code: def run(items, background=None):
      
      if not background: background = []
      paired = vcfutils.get_paired(items + background)
      if paired:
          out = _run_paired(paired)
      else:
          out = items
          logger.warn("GATK4 CNV calling currently only available for somatic samples: %s" %
                      ", ".join([dd.get_sample_name(d) for d in items + background]))
      return out
docs: Detect copy number variations from batched set of samples using GATK4 CNV calling.
  
      TODO: implement germline calling with DetermineGermlineContigPloidy and GermlineCNVCaller