protected override bool ValitationWrapper(Proposal proposal) { var mainProponent = proposal.MainProponent(); var installmentQuantity = proposal.NumberOfMonthlyInstallments; var installmentValue = proposal.LoanValue / installmentQuantity; if (mainProponent == null) { return(false); } return((mainProponent.Age, mainProponent.MonthlyIncome) switch { var(age, monthlyIncome) when age < 24 && monthlyIncome < installmentValue * 4 => false, var(age, monthlyIncome) when age < 50 && monthlyIncome < installmentValue * 3 => false, var(age, monthlyIncome) when age >= 50 && monthlyIncome < installmentValue * 2 => false, _ => true });