code: def _check_lods(parts, tumor_thresh, normal_thresh, indexes):
      
      try:
          gl_index = parts[8].split(":").index("GL")
      except ValueError:
          return True
      try:
          tumor_gls = [float(x) for x in parts[indexes["tumor"]].strip().split(":")[gl_index].split(",") if x != "."]
          if tumor_gls:
              tumor_lod = max(tumor_gls[i] - tumor_gls[0] for i in range(1, len(tumor_gls)))
          else:
              tumor_lod = -1.0
      # No GL information, no tumor call (so fail it)
      except IndexError:
          tumor_lod = -1.0
      try:
          normal_gls = [float(x) for x in parts[indexes["normal"]].strip().split(":")[gl_index].split(",") if x != "."]
          if normal_gls:
              normal_lod = min(normal_gls[0] - normal_gls[i] for i in range(1, len(normal_gls)))
          else:
              normal_lod = normal_thresh
      # No GL inofmration, no normal call (so pass it)
      except IndexError:
          normal_lod = normal_thresh
      return normal_lod >= normal_thresh and tumor_lod >= tumor_thresh
docs: Ensure likelihoods for tumor and normal pass thresholds.
  
      Skipped if no FreeBayes GL annotations available.