code: def _freebayes_options_from_config(items, config, out_file, region=None):
      
      opts = ["--genotype-qualities", "--strict-vcf"]
      cur_ploidy = ploidy.get_ploidy(items, region)
      base_ploidy = ploidy.get_ploidy(items)
      opts += ["--ploidy", str(cur_ploidy)]
      # Adjust min fraction when trying to call more sensitively in certain
      # regions. This is primarily meant for pooled mitochondrial calling.
      if (isinstance(region, (list, tuple)) and chromhacks.is_mitochondrial(region[0])
            and cur_ploidy >= base_ploidy and "--min-alternate-fraction" not in opts and "-F" not in opts):
          opts += ["--min-alternate-fraction", "0.01"]
      variant_regions = bedutils.population_variant_regions(items, merged=True)
      # Produce gVCF output
      if any("gvcf" in dd.get_tools_on(d) for d in items):
          opts += ["--gvcf", "--gvcf-chunk", "50000"]
      no_target_regions = False
      target = shared.subset_variant_regions(variant_regions, region, out_file, items)
      if target:
          if isinstance(target, six.string_types) and os.path.isfile(target):
              if os.path.getsize(target) == 0:
                  no_target_regions = True
              else:
                  opts += ["--targets", target]
          else:
              opts += ["--region", region_to_freebayes(target)]
      resources = config_utils.get_resources("freebayes", config)
      if resources.get("options"):
          opts += resources["options"]
      return opts, no_target_regions
docs: Prepare standard options from configuration input.
  
      Input BED target files are merged to avoid overlapping regions which
      cause FreeBayes to call multiple times.
  
      Checks for empty sets of target regions after filtering for high depth,
      in which case we should skip the FreeBayes run.