add try-catch to BestPlanCalculator