public DivisionAuthority(Source source)
        {
            Source          = source;
            DbData          = new DataBuilder(Source);
            Filter          = (table, col, filter) => DataBuilder.Filter(table, col, filter);
            R6              = DbData.GetDataSet(Source);
            Table           = DbData.Table;
            Data            = DbData.Data;
            ProgramElements = DbData.ProgramElements;
            BFY             = GetFiscalYears(ProgramElements["BFY"]);
            RC              = ProgramElements["RC"].AsEnumerable().Select(s => s).First();
            Metric          = new PrcMetric(DbData);
            if (ProgramElements["BOC"].Contains("17"))
            {
                FTE = GetFTE(Table);
            }

            Fund      = GetFunds();
            Authority = Filter(Table, Field.BFY, BFY[1].Date.Year.ToString());
            CarryOver = Filter(Table, Field.BFY, BFY[0].Date.Year.ToString());
            Awards    = GetAwards();
            Overtime  = GetOverTime();
            BCN       = new ControlNumber(new Dictionary <string, object> {
                ["DivisionName"] = Source.ToString()
            });
            ControlNumber = BCN.ToString();
        }