def Calculate(sample): score = 0 match sample["RevolvingUtilizationOfUnsecuredLines"]: case x if x < 0.115: score += 180.0 case x if x < 0.215 and x >= 0.115: score += 148.0 case x if x < 0.495 and x >= 0.215: score += 126.0 case x if x < 0.775 and x >= 0.495: score += 90.0 case x if x >= 0.775: score += 48.0 match sample["NumberOfTimes90DaysLate"]: case x if x < 0.5: score += 119.0 case x if x >= 0.5: score += -1.0 match sample["NumberOfTime60-89DaysPastDueNotWorse"]: case x if x < 0.5: score += 98.0 case x if x >= 0.5: score += 8.0 match sample["NumberOfTime30-59DaysPastDueNotWorse"]: case x if x < 0.5: score += 134.0 case x if x < 1.5 and x >= 0.5: score += 68.0 case x if x >= 1.5: score += 25.0 match sample["Age"]: case x if x < 33.5: score += 67.0 case x if x < 42.5 and x >= 33.5: score += 74.0 case x if x < 56.5 and x >= 42.5: score += 82.0 case x if x < 63.5 and x >= 56.5: score += 101.0 case x if x >= 63.5: score += 124.0 return score