code: def calculate_ef_var(tpf, fpf):
      
  
      efvara = (tpf * (1 - tpf))
      efvard = (fpf * (1 - fpf))
  
      ef = tpf / fpf
      if fpf == 1:
          return(0, 0, 0)
      else:
          s = ef * ( 1 + (np.log(ef)/np.log(fpf)))
          s2 = s * s
          return (efvara, efvard, s2)
docs: determine variance due to actives (efvar_a) decoys (efvar_d) and s2, the slope of the ROC curve tangent to the
      fpf @ which the enrichment factor was calculated
      :param tpf: float tpf @ which the enrichment factor was calculated
      :param fpf: float fpf @ which the enrichment factor was calculated
      :return efvara, efvard, s2: tuple