public double CalculateProgressiveIncomeTax(ProgressiveTaxLevelEnum progressiveTaxLevel)
        {
            switch (progressiveTaxLevel)
            {
            case ProgressiveTaxLevelEnum.Level1:
                this.CalculatedAmount = ProgressiveTaxLevel1.CalculatedLevelTaxAmount(Income);
                return(CalculatedAmount);

            case ProgressiveTaxLevelEnum.Level2:
                this.CalculatedAmount = ProgressiveTaxLevel2.CalculatedLevelTaxAmount(Income);
                return(CalculatedAmount);

            case ProgressiveTaxLevelEnum.Level3:
                this.CalculatedAmount = ProgressiveTaxLevel3.CalculatedLevelTaxAmount(Income);
                return(CalculatedAmount);

            case ProgressiveTaxLevelEnum.Level4:
                this.CalculatedAmount = ProgressiveTaxLevel4.CalculatedLevelTaxAmount(Income);
                return(CalculatedAmount);

            case ProgressiveTaxLevelEnum.Level5:
                this.CalculatedAmount = ProgressiveTaxLevel5.CalculatedLevelTaxAmount(Income);
                return(CalculatedAmount);

            case ProgressiveTaxLevelEnum.Level6:
                this.CalculatedAmount = ProgressiveTaxLevel6.CalculatedLevelTaxAmount(Income);
                return(CalculatedAmount);

            default:
                this.CalculatedAmount = 0;
                return(CalculatedAmount);
            }
        }
        public double CalculateProgressiveIncomeTax(double income, ProgressiveTaxLevelEnum progressiveTaxLevel)
        {
            switch (progressiveTaxLevel)
            {
            case ProgressiveTaxLevelEnum.Level1:
                return(ProgressiveTaxLevel1.CalculatedLevelTaxAmount(income));

            case ProgressiveTaxLevelEnum.Level2:
                return(ProgressiveTaxLevel2.CalculatedLevelTaxAmount(income));

            case ProgressiveTaxLevelEnum.Level3:
                return(ProgressiveTaxLevel3.CalculatedLevelTaxAmount(income));

            case ProgressiveTaxLevelEnum.Level4:
                return(ProgressiveTaxLevel4.CalculatedLevelTaxAmount(income));

            case ProgressiveTaxLevelEnum.Level5:
                return(ProgressiveTaxLevel5.CalculatedLevelTaxAmount(income));

            case ProgressiveTaxLevelEnum.Level6:
                return(ProgressiveTaxLevel6.CalculatedLevelTaxAmount(income));

            default:
                return(0);
            }
        }