code: def _run_happy_eval(vrn_file, rm_file, rm_interval_file, base_dir, data):
      
      out_dir = utils.safe_makedir(os.path.join(base_dir, "happy"))
      out_prefix = os.path.join(out_dir, "val")
      if not utils.file_exists(out_prefix + ".summary.csv"):
          vrn_file, rm_file, interval_bed = _prepare_inputs(vrn_file, rm_file, rm_interval_file, base_dir, data)
          cmd = ["hap.py", "-V", "-f", interval_bed, "-r", dd.get_ref_file(data),
                 "-l", ",".join(_get_location_list(interval_bed)),
                 "-o", out_prefix, rm_file, vrn_file]
          do.run(cmd, "Validate calls using hap.py", data)
      return {"vcf": out_prefix + ".vcf.gz"}
docs: Validation with hap.py: https://github.com/Illumina/hap.py
  
      XXX Does not yet parse out metrics for plotting.