private Worksheet RenderFundingCategory(Worksheet worksheet, IDevolvedAdultEducationFundingCategory fundingSubCategory)
        {
            var row = NextRow(worksheet) + 1;

            worksheet.Cells.ImportObjectArray(new object[]
            {
                fundingSubCategory.FundingCategoryTitle,
                $"Aug {StartYear}",
                $"Sep {StartYear}",
                $"Oct {StartYear}",
                $"Nov {StartYear}",
                $"Dec {StartYear}",
                $"Jan {EndYear}",
                $"Feb {EndYear}",
                $"Mar {EndYear}",
                $"Apr {EndYear}",
                $"May {EndYear}",
                $"Jun {EndYear}",
                $"Jul {EndYear}",
                "Aug - Mar",
                "Apr - Jul",
                "Year To Date",
                "Total",
            }, row, 0, false);
            ApplyStyleToRow(worksheet, row, _fundingCategoryStyle);

            var renderFundLineGroupTotals = fundingSubCategory.FundLineGroups.Count > 1;

            foreach (var fundLineGroup in fundingSubCategory.FundLineGroups)
            {
                RenderFundLineGroup(worksheet, fundLineGroup, renderFundLineGroupTotals);
            }

            row = NextRow(worksheet);
            RenderFundingSummaryReportRow(worksheet, row, fundingSubCategory);
            ApplyStyleToRow(worksheet, row, _fundingCategoryStyle);
            ApplyFutureMonthStyleToRow(worksheet, row, fundingSubCategory.CurrentPeriod);

            row = NextRow(worksheet);
            RenderFundingSummaryCumulativeReportRow(worksheet, row, fundingSubCategory);
            ApplyStyleToRow(worksheet, row, _fundingCategoryStyle);
            ApplyFutureMonthStyleToRow(worksheet, row, fundingSubCategory.CurrentPeriod);

            return(worksheet);
        }
        private Worksheet RenderFundingSummaryCumulativeReportRow(Worksheet worksheet, int row, IDevolvedAdultEducationFundingCategory fundingCategory)
        {
            worksheet.Cells.ImportObjectArray(
                new object[]
            {
                fundingCategory.CumulativeFundingCategoryTitle,
                fundingCategory.CumulativePeriod1,
                fundingCategory.CumulativePeriod2,
                fundingCategory.CumulativePeriod3,
                fundingCategory.CumulativePeriod4,
                fundingCategory.CumulativePeriod5,
                fundingCategory.CumulativePeriod6,
                fundingCategory.CumulativePeriod7,
                fundingCategory.CumulativePeriod8,
                fundingCategory.CumulativePeriod9,
                fundingCategory.CumulativePeriod10,
                fundingCategory.CumulativePeriod11,
                fundingCategory.CumulativePeriod12,
                NotApplicable,
                NotApplicable,
                NotApplicable,
                NotApplicable,
            }, row, 0, false);

            return(worksheet);
        }