A predict-and-optimize approach to profit-driven churn prevention