Maintenance Contract Problems and How to Solve Them