def many_point_hist_update(hist, diff_hist, inplace=True):
    """
  many_point_hist_update(hist, diff_hist)
 
  Update the complete_history structure after a many calls to f.
  
  WARNING! The complete_history structure uses your bounds, and is
  not scaled to make 0 <= x(i) <= 1."""
    if not inplace:
        hist = hist.copy()
    if type(diff_hist.good_points) == list:
        hist.good_points.extend(diff_hist.good_points)
    else:
        for i in range(diff_hist.good_points.shape[1]):
            hist.good_points.append(diff_hist.good_points[:, (i)])
    hist.good_values.extend(diff_hist.good_values)
    hist.failed_points.extend(diff_hist.failed_points)
    return hist
