code: def fit_uml(f, data, quiet=False, print_level=0, *arg, **kwd):
      
      uml = UnbinnedLH(f, data)
      minuit = Minuit(uml, print_level=print_level, **kwd)
      minuit.set_strategy(2)
      minuit.migrad()
      if not minuit.migrad_ok() or not minuit.matrix_accurate():
          if not quiet:
              from matplotlib import pyplot as plt
              plt.figure()
              uml.show()
              print(minuit.values)
      return (uml, minuit)
docs: perform unbinned likelihood fit
      :param f: pdf
      :param data: data
      :param quiet: if not quite draw latest fit on fail fit
      :param printlevel: minuit printlevel
      :return: