diff --git a/.Rbuildignore b/.Rbuildignore
index fbb29ab9..aed6187f 100644
--- a/.Rbuildignore
+++ b/.Rbuildignore
@@ -1,3 +1,5 @@
+^renv$
+^renv\.lock$
 ^.*\.Rproj$
 ^\.Rproj\.user$
 ^data-raw$
diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml
index 43418bed..52cd4196 100644
--- a/.github/workflows/R-CMD-check.yaml
+++ b/.github/workflows/R-CMD-check.yaml
@@ -37,7 +37,7 @@ jobs:
       fail-fast: false
       matrix:
         config:
-          - {os: macOS-latest,   r: 'release'}
+          # - {os: macOS-latest,   r: 'release'}
           - {os: windows-latest, r: 'release'}
           - {os: ubuntu-latest,   r: 'release'}
           - {os: ubuntu-latest,   r: 'oldrel-1'}
@@ -47,7 +47,7 @@ jobs:
       R_KEEP_PKG_SOURCE: yes
     
     steps:
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
 
       - uses: r-lib/actions/setup-pandoc@v2
 
@@ -65,96 +65,9 @@ jobs:
 
       - uses: r-lib/actions/check-r-package@v2
 
-      - name: Build and validate models - USEEIOv2.0-411 detail model with waste disaggregation
-        if: always()
-        run: |
-          require(devtools)
-          devtools::load_all()
-          m <- useeior::buildModel("USEEIOv2.0-411")
-          useeior::printValidationResults(m)
-        shell: Rscript {0}
-
-      - name: Build and validate models - USEEIOv2.0-i-411 detail industry model with waste disaggregation
-        if: always()
-        run: |
-          require(devtools)
-          devtools::load_all()
-          m <- useeior::buildModel("USEEIOv2.0-i-411")
-          useeior::printValidationResults(m)
-        shell: Rscript {0}
-      
-      - name: Build and validate models - USEEIOv2.0 industry model
-        if: always()
-        run: |
-          require(devtools)
-          devtools::load_all()
-          m <- useeior::buildModel("USEEIOv2.0-i-GHG")
-          useeior::printValidationResults(m)
-        shell: Rscript {0}
-      
-      - name: Build and validate models - USEEIOv2.0 summary model
-        if: always()
-        run: |
-          require(devtools)
-          devtools::load_all()
-          m <- useeior::buildModel("USEEIOv2.0-s-GHG")
-          useeior::printValidationResults(m)
-        shell: Rscript {0}
-      
-      - name: Build and validate models - USEEIOv2.0.1-411 detail model with waste disaggregation
-        if: always()
-        run: |
-          require(devtools)
-          devtools::load_all()
-          m <- useeior::buildModel("USEEIOv2.0.1-411")
-          useeior::printValidationResults(m)
-        shell: Rscript {0}
-
-      - name: Build and validate models - USEEIOv2 - integrated hybrid
-        if: always()
-        run: |
-          require(devtools)
-          devtools::load_all()
-          m <- useeior::buildModel("USEEIOv2.0-GHG-NGCombustion")
-          useeior::printValidationResults(m)
-        shell: Rscript {0}
-
-      - name: Build and validate models - GAEEIOv1.0-s-WAT-12 two-region model
-        if: always()
-        run: |
-          require(devtools)
-          devtools::load_all()
-          m <- useeior::buildModel("GAEEIOv1.0-s-WAT-12")
-          useeior::printValidationResults(m)
-        shell: Rscript {0}
-
-      - name: Build and validate models - USEEIOv2.0-s-GHG-19-IF summary model with import factors
-        if: always()
-        run: |
-          require(devtools)
-          devtools::load_all()
-          m <- useeior::buildModel("USEEIOv2.0-s-GHG-19-IF")
-          useeior::printValidationResults(m)
-        shell: Rscript {0}
-
-      # - name: Build and validate models - GAEEIOv1.0-75-GHG-19 two-region disaggregated model
-      #   if: always()
-      #   run: |
-      #     require(devtools)
-      #     devtools::load_all()
-      #     m <- useeior::buildModel("GAEEIOv1.0-75-GHG-19")
-      #     useeior::printValidationResults(m)
-      #   shell: Rscript {0}
-
-      #- name: Show testthat output
-      #  if: always()  # step will run even if previous steps fail
-      #  run: find check -name 'testthat.Rout*' -exec cat '{}' \; || true
-      #  shell: bash
-
-      - name: Upload check results
-        if: failure()  # if any of the previous steps fail, export a log
+      - name: Upload model build and validation log
         uses: actions/upload-artifact@main
         with:
-          name: ${{ runner.os }}-r${{ matrix.config.r }}-results
-          path: check    
+          name: ${{ runner.os }}-r${{ matrix.config.r }}-test_model_build
+          path: check/useeior.Rcheck/tests/test_model_build*
     
diff --git a/.github/workflows/save-BEA-data.yaml b/.github/workflows/save-BEA-data.yaml
index 2313947f..e4cbec19 100644
--- a/.github/workflows/save-BEA-data.yaml
+++ b/.github/workflows/save-BEA-data.yaml
@@ -34,8 +34,6 @@ jobs:
           http-user-agent: ${{ matrix.config.http-user-agent }}
           use-public-rspm: true
 
-      - uses: r-lib/actions/setup-renv@v2
-      
       - uses: r-lib/actions/setup-r-dependencies@v2
         with:
           extra-packages: devtools
diff --git a/.github/workflows/save-annual-BEA-data.yaml b/.github/workflows/save-annual-BEA-data.yaml
index 64cc0b6c..361871da 100644
--- a/.github/workflows/save-annual-BEA-data.yaml
+++ b/.github/workflows/save-annual-BEA-data.yaml
@@ -34,8 +34,6 @@ jobs:
           http-user-agent: ${{ matrix.config.http-user-agent }}
           use-public-rspm: true
 
-      - uses: r-lib/actions/setup-renv@v2
-      
       - uses: r-lib/actions/setup-r-dependencies@v2
         with:
           extra-packages: devtools
diff --git a/.gitignore b/.gitignore
index 1c1365c7..31700f3b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,5 +2,8 @@
 .Rhistory
 .RData
 .Ruserdata
+.RProfile
 work
 inst/doc/**/*.html
+renv/
+examples
diff --git a/.zenodo.json b/.zenodo.json
index a68d4c45..f4bc16ad 100644
--- a/.zenodo.json
+++ b/.zenodo.json
@@ -4,35 +4,25 @@
     "title": "useeior", 
     "upload_type": "software", 
     "creators": [
-        {
-            "affiliation": "General Dynamics Information Technology, Inc.", 
-            "name": "Mo Li"
-            "orcid": "https://orcid.org/0000-0002-3672-1622"
-        }, 
-        {
-            "affiliation": "US Environmental Protection Agency", 
-            "name": "Wesley Ingwersen"
-            "orcid": "https://orcid.org/0000-0002-9614-701X"
-        }, 
         {
             "affiliation": "Eastern Research Group", 
-            "name": "Ben Young"
+            "name": "Ben Young",
             "orcid": "https://orcid.org/0000-0001-6276-8670"
         }, 
         {
             "affiliation": "Eastern Research Group", 
-            "name": "Jorge Vendries"
+            "name": "Jorge Vendries",
             "orcid": "https://orcid.org/0000-0002-8452-229X"
-        }, 
-        {
-            "affiliation": "US Environmental Protection Agency", 
-            "name": "Catherine Birney",
-            "orcid": "https://orcid.org/0000-0003-4467-9927"
+        },
+	{
+            "affiliation": "General Dynamics Information Technology, Inc.", 
+            "name": "Mo Li",
+            "orcid": "https://orcid.org/0000-0002-3672-1622"
         },
         {
-            "affiliation": "Eastern Research Group", 
-            "name": "Andrew Beck",
-            "orcid": "https://orcid.org/0000-0003-4051-6901"
+            "affiliation": "US Environmental Protection Agency", 
+            "name": "Wesley Ingwersen",
+            "orcid": "https://orcid.org/0000-0002-9614-701X"
         }
     ], 
     "access_right": "open"
diff --git a/DESCRIPTION b/DESCRIPTION
index 1f02366e..13fce3d9 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -1,13 +1,13 @@
 Package: useeior
 Type: Package
 Title: USEEIO R modeling software
-Version: 1.4.0
-Date: 2023-8-24
+Version: 1.5.0
+Date: 2024-3-22
 Authors@R: c(
-  person("Mo","Li", email="mo.li@gdit.com", role="aut"),
-  person("Wesley","Ingwersen", email="ingwersen.wesley@epa.gov", role= c("aut", "cre")),
   person("Ben","Young", email="ben.young@erg.com", role="aut"),
-  person("Jorge","Vendries", email="jvendries@gmail.com", role="aut"))
+  person("Jorge","Vendries", email="jvendries@gmail.com", role="aut"),
+  person("Mo","Li", email="mo.li@gdit.com", role="aut"),
+  person("Wesley","Ingwersen", email="ingwersen.wesley@epa.gov", role= c("aut", "cre")))
 Description: The United States Environmentally-Extended Input-Output model
   is a model used to estimate potential environmental and economic impacts
   associated with the production and consumption of goods and services in the US.
diff --git a/R/AdjustPrice.R b/R/AdjustPrice.R
index ce63830d..3170f08a 100644
--- a/R/AdjustPrice.R
+++ b/R/AdjustPrice.R
@@ -46,11 +46,12 @@ calculateProducerbyPurchaserPriceRatio <- function(model) {
   Margins <- Margins[match(rownames(model$Rho), Margins$Code_Loc), ]
   # Prepare ratio table PHI
   PHI <- model$Rho
+  schema <- getSchemaCode(model$specs)
   for (year in colnames(model$Rho)) {
     # Adjust ProducersValue from model$specs$IOyear to currency year using model$Rho
     ProducersValue <- Margins$ProducersValue * (Margins[, year]/Margins[, as.character(model$specs$IOYear)])
     # Adjust Transportation, Wholesale and Retail using corresponding CPI_ratio
-    TWR_CPI <- useeior::Sector_CPI_IO[c("48TW", "42", "44RT"), ]
+    TWR_CPI <- get(paste0(na.omit(c('Sector_CPI_IO', schema)), collapse = "_"))[c("48TW", "42", "44RT"), ]
     TWR_CPI_ratio <- TWR_CPI[, year]/TWR_CPI[, as.character(model$specs$IOYear)]
     TWRValue <- sweep(Margins[, c("Transportation", "Wholesale", "Retail")], 2, TWR_CPI_ratio, "*")
     # Generate PRObyPURRatios, or phi vector
diff --git a/R/CalculationFunctions.R b/R/CalculationFunctions.R
index 61181c37..ee4a2e9e 100644
--- a/R/CalculationFunctions.R
+++ b/R/CalculationFunctions.R
@@ -545,44 +545,65 @@ calculateMarginSectorImpacts <- function(model) {
   return(ls)
 }
 
-#' For a given indicator, disaggregate total impacts per purchase (N) into 
-#' direct impacts (D) and upstream, Tier 1 purchase impacts. Return a long format
-#' dataframe of exchanges, with sector names mapped to sector codes.
+#' For a given impact, provided via indicator or elementary flow label, 
+#' disaggregate the total impacts per purchase (indicator: N, flow: M) into 
+#' direct impacts (indicator: D, flow: B) and upstream, Tier 1 purchase impacts. 
+#' Return a long-format df of exchanges, with sector names mapped to sector codes.
 #' @param model A complete EEIO model: a list with USEEIO model components and attributes
-#' @param indicator str, index of a model indicator, e.g. "Greenhouse Gases".
+#' @param impact str, a model indicator (e.g., "Greenhouse Gases") row index of N, 
+#'                    or elementary flow (e.g., "Methane/emission/air/kg") index of M
+#' @param opt_impact str {'indicator', 'elemflow'}, string code to specify impact type
 #' @export
 #' @return A data frame of direct and per-tier-1-purchase sector impacts
-disaggregateTotalToDirectAndTier1 <- function(model, indicator) {
-  sector_map <- setNames(model$Commodities$Name, model$Commodities$Code_Loc)
-  
-  # direct sector impacts
-  df_D <- tibble::enframe(model$D[indicator,])
-  df_D <- dplyr::rename(df_D, impact_per_purchase=value, sector_code=name) 
+disaggregateTotalToDirectAndTier1 <- function(model, impact, opt_impact="indicator") {
+  mtx_direct <- c("indicator"="D", "elemflow"="B")[opt_impact]
+  if (is.na(mtx_direct)) {
+    stop(paste0("'",opt_impact,"' is not a valid opt_impact string code"))
+  }
+  # get direct sector impacts
+  df_direct <- tryCatch({  # catches bad `impact` row label
+      tibble::enframe(model[[mtx_direct]][impact,])
+  }, error=function(e) {
+      stop(paste0("'",impact,"' is not a valid ",opt_impact," label"))
+  })
+  df_direct <- dplyr::rename(df_direct, impact_per_purchase=value, sector_code=name) 
   # assign "Direct" as purchased commodity label for data-vis & stat convenience
-  df_D <- dplyr::mutate(df_D, purchased_commodity = 'Direct')
-  
-  # total impacts per Tier 1 purchase by sector
-  df_N <- calculateTotalImpactbyTier1Purchases(model, indicator) 
-  df_N <- tibble::as_tibble(df_N, rownames="purchased_commodity_code") 
-  df_N <- reshape2::melt(df_N, id.vars="purchased_commodity_code", 
-                         variable.name="sector_code", 
-                         value.name="impact_per_purchase") 
-  df_N <- dplyr::mutate(df_N, purchased_commodity = dplyr::recode(
-    purchased_commodity_code, !!!sector_map))
-  
-  # combined df 
-  df_impacts <- dplyr::bind_rows(df_N, df_D) 
-  df_impacts <- dplyr::mutate(df_impacts, sector = dplyr::recode(sector_code, !!!sector_map))
+  df_direct <- dplyr::mutate(df_direct, purchased_commodity = 'Direct')
+  # get total impacts per Tier 1 purchase by sector
+  df_total <- calculateTotalImpactbyTier1Purchases(model, impact, opt_impact) 
+  df_total <- tibble::as_tibble(df_total, rownames="purchased_commodity_code") 
+  df_total <- reshape2::melt(df_total, id.vars="purchased_commodity_code",
+                                       variable.name="sector_code",
+                                       value.name="impact_per_purchase") 
+  # map sector codes to names
+  sector_map <- setNames(model$Commodities$Name, model$Commodities$Code_Loc)
+  df_total <- dplyr::mutate(df_total, 
+    purchased_commodity = dplyr::recode(purchased_commodity_code, !!!sector_map))
+  # concat direct + total impacts  
+  df_impacts <- dplyr::bind_rows(df_total, df_direct) 
+  df_impacts <- dplyr::mutate(df_impacts, 
+    sector = dplyr::recode(sector_code, !!!sector_map))
   return(df_impacts)
 }
 
-#' Calculate sector x sector total impacts (single indicator) for Tier 1 purchases
-#' Multiply each row of sector x sector A matrix by scalar elements of an
-#' indicator (single) x sector array from N
+#' Calculate sector x sector total impacts (single indicator or elementary flow) 
+#' for Tier 1 purchases. Multiply each row of the sector by sector A matrix by 
+#' the scalar elements of a single-impact by sector array (indicator: N, flow: M)
 #' @param model A complete EEIO model: a list with USEEIO model components and attributes
-#' @param indicator str, index of a model indicator, e.g. "Greenhouse Gases".
-#' @return A sector x sector, impact-per-tier-1-purchase matrix.
-calculateTotalImpactbyTier1Purchases <- function(model, indicator) {
-  totalImpactPerPurchase <- model$N[indicator,] * model$A
+#' @param impact str, a model indicator (e.g., "Greenhouse Gases") row index of N, 
+#'                    or elementary flow (e.g., "Methane/emission/air/kg") index of M
+#' @param opt_impact str {'indicator', 'elemflow'}, string code to specify impact type
+#' @return A sector by sector, impact-per-tier-1-purchase matrix.
+calculateTotalImpactbyTier1Purchases <- function(model, impact, opt_impact='indicator') {
+  mtx_total <- c("indicator"="N", "elemflow"="M")[opt_impact]
+  if (is.na(mtx_total)) {
+    stop(paste0("'",opt_impact,"' is not a valid opt_impact string code"))
+  }
+  df_direct <- tryCatch({  # catches bad `impact` row label
+    totalImpactPerPurchase <- model[[mtx_total]][impact,] * model$A
+    # totalImpactPerPurchase <- model$N[impact,] * model[["A"]]
+  }, error=function(e) {
+    stop(paste0("'",impact,"' is not a valid ",opt_impact," label"))
+  })
   return(totalImpactPerPurchase)
 }
diff --git a/R/ConfigurationFunctions.R b/R/ConfigurationFunctions.R
index f1884143..b253fbee 100644
--- a/R/ConfigurationFunctions.R
+++ b/R/ConfigurationFunctions.R
@@ -12,7 +12,7 @@ getConfiguration <- function(configname, configtype, configpaths = NULL, pkg="us
   if (is.null(configpaths)) {
     configpath <- system.file(paste0("extdata/", configtype, "specs/"), configfile, package = pkg)
   } else {
-    configpath <- configpaths[endsWith(configpaths, configfile)]
+    configpath <- configpaths[endsWith(configpaths, paste0("/", configfile))]
     if (length(configpath) == 0) {
       # Specific input file not found in configpaths, assume it is in useeior
       configpath <- system.file(paste0("extdata/", configtype, "specs/"), configfile, package = "useeior")
@@ -24,6 +24,10 @@ getConfiguration <- function(configname, configtype, configpaths = NULL, pkg="us
     }
   }
   config <- configr::read.config(configpath)
+  if (typeof(config) == "logical" && config == FALSE) {
+    logging::logwarn(paste0("Configuration not found for ", configname))
+    return(NULL)
+  }
   return(config)
 }
 
diff --git a/R/CrosswalkFunctions.R b/R/CrosswalkFunctions.R
index ba1dc079..a1403570 100644
--- a/R/CrosswalkFunctions.R
+++ b/R/CrosswalkFunctions.R
@@ -1,19 +1,11 @@
 # Functions that use sector crosswalks
 
-#' Function to externalize the BEA to NAICS crosswalk
-#' @return A crosswalk linking 2007 and 2012 NAICS codes to 2012 Sector, Summary, and Detail BEA codes
-loadMasterCrosswalk <- function(){
-  # Pull the mastercrosswalk created in the data-raw subdirectory
-  BEAtoNAICSCrosswalk <- useeior::MasterCrosswalk2012
-  return(BEAtoNAICSCrosswalk)
-}
-
 #' Determine allocation factors between NAICS and BEA sectors based on Industry output.
 #' @param model A complete EEIO model: a list with USEEIO model components and attributes.
 #' @param year Year of model Industry output.
 #' @return A table of allocation factors between NAICS and BEA sectors.
 getNAICStoBEAAllocation <- function (year, model) {
-  # Keep USEEIO and NAICS columns in MasterCrosswalk2012 table based on the model specs
+  # Keep USEEIO and NAICS columns in MasterCrosswalk table based on the model specs
   NAICStoBEA <- unique(model$crosswalk[, c("NAICS", "USEEIO")])
   colnames(NAICStoBEA) <- c("NAICS_Code", "BEA_Code")
   # Drop 2-digit NAICS code
@@ -41,26 +33,40 @@ getNAICStoBEAAllocation <- function (year, model) {
   return(AllocationTable)
 }
 
-
-#' Get 2-6 digit NAICS codes and names for year specified.
-#' @param year int. 2012 or 2007 accepted.
-#' @return dataframe with columns NAICS_year_Code and NAICS_year_Name.
-getNAICS2to6DigitsCodeName <- function (year) {
+#' Download NAICS file for 2-6 digit NAICS codes if not present.
+#' @param year int, 2017, 2012, or 2007 accepted.
+#' @return FileName str
+downloadNAICS2to6DigitsFile <- function (year) {
   # Download 2-6 digits NAICS table
-  if (year == 2012) {
-    FileName <- "inst/extdata/2-digit_2012_Codes.xls"
+  dir <- file.path(rappdirs::user_data_dir(), "USEEIO-input")
+  if (year == 2017) {
+    FileName <- file.path(dir, "2-digit_2017_Codes.xlsx")
+    url <- "https://www.census.gov/naics/2017NAICS/2-6%20digit_2017_Codes.xlsx"
+  } else if (year == 2012) {
+    FileName <- file.path(dir, "2-digit_2012_Codes.xls")
     url <- "https://www.census.gov/eos/www/naics/2012NAICS/2-digit_2012_Codes.xls"
-  } else {
-    FileName <- "inst/extdata/naics07.xls"
+  } else if (year == 2007) {
+    FileName <- file.path(dir, "naics07.xls")
     url <- "https://www.census.gov/eos/www/naics/reference_files_tools/2007/naics07.xls"
+  } else {
+    stop('Specify available year for crosswalk')
   }
   if(!file.exists(FileName)) {
     utils::download.file(url, FileName, mode = "wb")
   }
-  
+  return(FileName)
+}
+
+
+#' Get 2-6 digit NAICS codes and names for year specified.
+#' @param year int. 2017, 2012, or 2007 accepted.
+#' @return dataframe with columns NAICS_year_Code and NAICS_year_Name.
+getNAICS2to6DigitsCodeName <- function (year) {
+  FileName <- downloadNAICS2to6DigitsFile(year)
   # Load 2-6 digits NAICS table
   NAICS <- as.data.frame(readxl::read_excel(FileName, sheet = 1, col_names = TRUE))[-1,-1]
   colnames(NAICS) <- c("NAICS_Code", "NAICS_Name")
+  NAICS <- NAICS[c("NAICS_Code", "NAICS_Name")] # Avoid extra columns
   # Split the NAICS code with dash ("-)
   DashSplit <- do.call("rbind.data.frame", apply(do.call("rbind", strsplit(NAICS$NAICS_Code, "-")),
                                                  1, function(x) seq(x[1], x[2], 1)))
@@ -80,24 +86,14 @@ getNAICS2to6DigitsCodeName <- function (year) {
 }
 
 #' Get 2-6 digit NAICS codes in a crosswalk format for year specified.
-#' @param year int, 2012 or 2007 accepted.
+#' @param year int, 2017, 2012 or 2007 accepted.
 #' @return data frame with columns NAICS_2, NAICS_3, NAICS_4, NAICS_5, NAICS_6.
 getNAICS2to6Digits <- function (year) {
-  # Download 2-6 digits NAICS table
-  if (year == 2012) {
-    FileName <- "inst/extdata/2-digit_2012_Codes.xls"
-    url <- "https://www.census.gov/eos/www/naics/2012NAICS/2-digit_2012_Codes.xls"
-  } else {
-    FileName <- "inst/extdata/naics07.xls"
-    url <- "https://www.census.gov/eos/www/naics/reference_files_tools/2007/naics07.xls"
-  }
-  if(!file.exists(FileName)) {
-    utils::download.file(url, FileName, mode = "wb")
-  }
-  
+  FileName <- downloadNAICS2to6DigitsFile(year)
   # Load 2-6 digits NAICS table
   NAICS <- as.data.frame(readxl::read_excel(FileName, sheet = 1, col_names = TRUE))[-1,-1]
   colnames(NAICS) <- c("NAICS_Code", "NAICS_Name")
+  NAICS <- NAICS[c("NAICS_Code", "NAICS_Name")] # Avoid extra columns
   NAICS$NAICS_Code <- suppressWarnings(as.integer(NAICS$NAICS_Code))
   NAICS <- NAICS[!is.na(NAICS$NAICS_Code), ]
   # Reshape the table
@@ -201,7 +197,7 @@ getNAICSCodeName <- function(year) {
 #' @return data frame with columns '2012 NAICS Code', '2012 NAICS Title',
 #' '2007 NAICS Code', and '2007 NAICS Title'.
 getNAICS2012to2007Concordances <- function() {
-  filename <- "inst/extdata/2012_to_2007_NAICS.xls"
+  filename <- file.path(rappdirs::user_data_dir(), "USEEIO-input", "2012_to_2007_NAICS.xls")
   if(!file.exists(filename)) {
     utils::download.file("https://www.census.gov/naics/concordances/2012_to_2007_NAICS.xls",
                          filename, mode = "wb")
@@ -215,9 +211,9 @@ getNAICS2012to2007Concordances <- function() {
 #' @return data frame with columns '2012 NAICS Code', '2012 NAICS Title',
 #' '2017 NAICS Code', and '2017 NAICS Title'.
 getNAICS2012to2017Concordances <- function() {
-  filename <- "inst/extdata/2012_to_2017_NAICS.xlsx"
+  filename <- file.path(rappdirs::user_data_dir(), "USEEIO-input", "2012_to_2017_NAICS.xlsx")
   if(!file.exists(filename)) {
-    utils::download.file("https://www.census.gov/naics/concordances/2012_to_2017_NAICS.xlsx",
+    utils::download.file("https://www.census.gov/naics/concordances/2012_to_2017_NAICS.xls",
                          filename, mode = "wb")
   }
   df <- as.data.frame(readxl::read_excel(filename, sheet = 1, col_names = TRUE, skip = 2))
diff --git a/R/DataDocumentation.R b/R/DataDocumentation.R
index 9bb71b1a..c3ed098e 100644
--- a/R/DataDocumentation.R
+++ b/R/DataDocumentation.R
@@ -285,263 +285,6 @@
 #' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
 "Summary_Use_2021_PRO_AfterRedef"
 
-#' Sector 2010 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2010_BeforeRedef"
-
-#' Sector 2011 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2011_BeforeRedef"
-
-#' Sector 2012 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2012_BeforeRedef"
-
-#' Sector 2013 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2013_BeforeRedef"
-
-#' Sector 2014 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2014_BeforeRedef"
-
-#' Sector 2015 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2015_BeforeRedef"
-
-#' Sector 2016 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2016_BeforeRedef"
-
-#' Sector 2017 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2017_BeforeRedef"
-
-#' Sector 2018 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2018_BeforeRedef"
-
-#' Sector 2019 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Make_2019_BeforeRedef"
-
-#' Sector 2020 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Make_2020_BeforeRedef"
-
-#' Sector 2021 Make Before Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Make_2021_BeforeRedef"
-
-#' Sector 2010 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2010_PRO_BeforeRedef"
-
-#' Sector 2011 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2011_PRO_BeforeRedef"
-
-#' Sector 2012 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2012_PRO_BeforeRedef"
-
-#' Sector 2013 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2013_PRO_BeforeRedef"
-
-#' Sector 2014 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2014_PRO_BeforeRedef"
-
-#' Sector 2015 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2015_PRO_BeforeRedef"
-
-#' Sector 2016 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2016_PRO_BeforeRedef"
-
-#' Sector 2017 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2017_PRO_BeforeRedef"
-
-#' Sector 2018 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2018_PRO_BeforeRedef"
-
-#' Sector 2019 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Use_2019_PRO_BeforeRedef"
-
-#' Sector 2020 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Use_2020_PRO_BeforeRedef"
-
-#' Sector 2021 Use Producer's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Use_2021_PRO_BeforeRedef"
-
-#' Sector 2012 Use Purchaser's Value Before Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2012_PUR_BeforeRedef"
-
-#' Sector 2010 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2010_AfterRedef"
-
-#' Sector 2011 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2011_AfterRedef"
-
-#' Sector 2012 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2012_AfterRedef"
-
-#' Sector 2013 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2013_AfterRedef"
-
-#' Sector 2014 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2014_AfterRedef"
-
-#' Sector 2015 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2015_AfterRedef"
-
-#' Sector 2016 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2016_AfterRedef"
-
-#' Sector 2017 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2017_AfterRedef"
-
-#' Sector 2018 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Make_2018_AfterRedef"
-
-#' Sector 2019 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Make_2019_AfterRedef"
-
-#' Sector 2020 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Make_2020_AfterRedef"
-
-#' Sector 2021 Make After Redefinition (2012 schema)
-#' @format A dataframe with 16 obs. and 18 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Make_2021_AfterRedef"
-
-#' Sector 2010 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2010_PRO_AfterRedef"
-
-#' Sector 2011 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2011_PRO_AfterRedef"
-
-#' Sector 2012 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2012_PRO_AfterRedef"
-
-#' Sector 2013 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2013_PRO_AfterRedef"
-
-#' Sector 2014 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2014_PRO_AfterRedef"
-
-#' Sector 2015 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2015_PRO_AfterRedef"
-
-#' Sector 2016 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2016_PRO_AfterRedef"
-
-#' Sector 2017 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2017_PRO_AfterRedef"
-
-#' Sector 2018 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-"Sector_Use_2018_PRO_AfterRedef"
-
-#' Sector 2019 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Use_2019_PRO_AfterRedef"
-
-#' Sector 2020 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Use_2020_PRO_AfterRedef"
-
-#' Sector 2021 Use Producer's Value After Redefinition (2012 schema)
-#' @format A dataframe with 23 obs. and 24 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-#' @note Remove 'backslash' before 'percent sign' in url to access the source of data.
-"Sector_Use_2021_PRO_AfterRedef"
-
 #' Detail 2012 Import Before Redefinition (2012 schema)
 #' @format A dataframe with 405 obs. and 427 variables
 #' @source \url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_DET_2007_2012.xlsx}
@@ -786,25 +529,35 @@
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
 "Summary_Supply_2016"
 
-#' Summary 2017 Supply (2012 schema)
+#' Summary 2017 Supply (2017 schema)
+#' @format A dataframe with 74 obs. and 83 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
+"Summary_Supply_2017_17sch"
+
+#' Summary 2018 Supply (2017 schema)
 #' @format A dataframe with 74 obs. and 83 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Summary_Supply_2017"
+"Summary_Supply_2018_17sch"
 
-#' Summary 2018 Supply (2012 schema)
+#' Summary 2019 Supply (2017 schema)
 #' @format A dataframe with 74 obs. and 83 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Summary_Supply_2018"
+"Summary_Supply_2019_17sch"
 
-#' Summary 2019 Supply (2012 schema)
+#' Summary 2020 Supply (2017 schema)
 #' @format A dataframe with 74 obs. and 83 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Summary_Supply_2019"
+"Summary_Supply_2020_17sch"
 
-#' Summary 2020 Supply (2012 schema)
+#' Summary 2021 Supply (2017 schema)
 #' @format A dataframe with 74 obs. and 83 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Summary_Supply_2020"
+"Summary_Supply_2021_17sch"
+
+#' Summary 2022 Supply (2017 schema)
+#' @format A dataframe with 74 obs. and 83 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
+"Summary_Supply_2022_17sch"
 
 #' Summary 2010 Use (2012 schema)
 #' @format A dataframe with 82 obs. and 92 variables
@@ -841,132 +594,378 @@
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
 "Summary_Use_SUT_2016"
 
-#' Summary 2017 Use (2012 schema)
+#' Summary 2017 Use (2017 schema)
 #' @format A dataframe with 82 obs. and 92 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Summary_Use_SUT_2017"
+"Summary_Use_SUT_2017_17sch"
 
-#' Summary 2018 Use (2012 schema)
+#' Summary 2018 Use (2017 schema)
 #' @format A dataframe with 82 obs. and 92 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Summary_Use_SUT_2018"
+"Summary_Use_SUT_2018_17sch"
 
-#' Summary 2019 Use (2012 schema)
+#' Summary 2019 Use (2017 schema)
 #' @format A dataframe with 82 obs. and 92 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Summary_Use_SUT_2019"
+"Summary_Use_SUT_2019_17sch"
 
-#' Summary 2020 Use (2012 schema)
+#' Summary 2020 Use (2017 schema)
 #' @format A dataframe with 82 obs. and 92 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Summary_Use_SUT_2020"
+"Summary_Use_SUT_2020_17sch"
 
-#' Sector 2010 Supply (2012 schema)
-#' @format A dataframe with 18 obs. and 27 variables
+#' Summary 2021 Use (2017 schema)
+#' @format A dataframe with 82 obs. and 92 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Supply_2010"
+"Summary_Use_SUT_2021_17sch"
 
-#' Sector 2011 Supply (2012 schema)
-#' @format A dataframe with 18 obs. and 27 variables
+#' Summary 2022 Use (2017 schema)
+#' @format A dataframe with 82 obs. and 92 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Supply_2011"
+"Summary_Use_SUT_2022_17sch"
 
-#' Sector 2012 Supply (2012 schema)
-#' @format A dataframe with 18 obs. and 27 variables
+#' Detail 2017 Supply (2017 schema)
+#' @format A dataframe with 403 obs. and 414 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Supply_2012"
+"Detail_Supply_2017_17sch"
 
-#' Sector 2013 Supply (2012 schema)
-#' @format A dataframe with 18 obs. and 27 variables
+#' Detail 2017 Use (under the Supply-Use framework, 2017 schema)
+#' @format A dataframe with 411 obs. and 423 variables
 #' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Supply_2013"
+"Detail_Use_SUT_2017_17sch"
 
-#' Sector 2014 Supply (2012 schema)
-#' @format A dataframe with 18 obs. and 27 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Supply_2014"
+#' Master Crosswalk table (2017 schema)
+#' @format A dataframe with 4095 obs. and 5 variables:
+#' \describe{
+#'  \item{BEA_2017_Sector_Code}{text code}
+#'  \item{BEA_2017_Summary_Code}{text code}
+#'  \item{BEA_2017_Detail_Code}{text code}
+#'  \item{NAICS_2017_Code}{text code}
+#'  \item{NAICS_2012_Code}{text code}
+#' }
+"MasterCrosswalk2017"
 
-#' Sector 2015 Supply (2012 schema)
-#' @format A dataframe with 18 obs. and 27 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Supply_2015"
+#' Master Crosswalk table (2017 schema)
+#' @format A dataframe with 4095 obs. and 12 variables:
+#' \describe{
+#'  \item{BEA_2017_Sector_Code}{text code}
+#'  \item{BEA_2017_Sector_Name}{text code}
+#'  \item{BEA_2017_Summary_Code}{text code}
+#'  \item{BEA_2017_Summary_Name}{text code}
+#'  \item{BEA_2017_Detail_Code}{text code}
+#'  \item{BEA_2017_Detail_Name}{text code}
+#'  \item{USEEIO_Code}{text code}
+#'  \item{USEEIO_Name}{text code}
+#'  \item{NAICS_2017_Code}{text code}
+#'  \item{NAICS_2017_Name}{text code}
+#'  \item{NAICS_2012_Code}{text code}
+#'  \item{NAICS_2007_Code}{text code}
+#' }
+"MasterCrosswalk"
 
-#' Sector 2016 Supply (2012 schema)
-#' @format A dataframe with 18 obs. and 27 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Supply_2016"
 
-#' Sector 2017 Supply (2012 schema)
-#' @format A dataframe with 18 obs. and 27 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Supply_2017"
+#' Detail 2017 Make Before Redefinition (2017 schema)
+#' @format A dataframe with 403 obs. and 403 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Detail_Make_2017_BeforeRedef_17sch"
 
-#' Sector 2018 Supply (2012 schema)
-#' @format A dataframe with 18 obs. and 27 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Supply_2018"
+#' Detail 2017 Use Producer's Value Before Redefinition (2017 schema)
+#' @format A dataframe with 408 obs. and 425 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Detail_Use_2017_PRO_BeforeRedef_17sch"
 
-#' Sector 2019 Supply (2012 schema)
-#' @format A dataframe with 18 obs. and 27 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Supply_2019"
+#' Detail 2017 Use Purchaser's Value Before Redefinition (2017 schema)
+#' @format A dataframe with 400 obs. and 425 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Detail_Use_2017_PUR_BeforeRedef_17sch"
 
-#' Sector 2020 Supply (2012 schema)
-#' @format A dataframe with 18 obs. and 27 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Supply_2020"
+#' Detail 2017 Make After Redefinition (2017 schema)
+#' @format A dataframe with 403 obs. and 403 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Detail_Make_2017_AfterRedef_17sch"
 
-#' Sector 2010 Use (2012 schema)
-#' @format A dataframe with 26 obs. and 22 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Use_SUT_2010"
+#' Detail 2017 Use Producer's Value After Redefinition (2017 schema)
+#' @format A dataframe with 408 obs. and 425 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Detail_Use_2017_PRO_AfterRedef_17sch"
 
-#' Sector 2011 Use (2012 schema)
-#' @format A dataframe with 26 obs. and 22 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Use_SUT_2011"
+#' Detail 2017 Use Purchaser's Value After Redefinition (2017 schema)
+#' @format A dataframe with 400 obs. and 425 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Detail_Use_2017_PUR_AfterRedef_17sch"
 
-#' Sector 2012 Use (2012 schema)
-#' @format A dataframe with 26 obs. and 22 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Use_SUT_2012"
+#' Detail Margins (Before Redef) table for 2017 (2017 schema)
+#' @format A dataframe with 58051 obs. and 9 variables:
+#' \describe{
+#'  \item{NIPACode}{text code}
+#'  \item{MarginsCategory}{text category name, like 'Therapeutic medical equipment'}
+#'  \item{CommodityCode}{BEA_2017_Detail_Code}
+#'  \item{CommodityDescription}{BEA_2017_Detail_Name}
+#'  \item{ProducersValue}{USD2017}
+#'  \item{Transportation}{USD2017}
+#'  \item{Wholesale}{USD2017}
+#'  \item{Retail}{USD2017}
+#'  \item{PurchasersValue}{USD2017}
+#' }
+#' @source \url{https://apps.bea.gov/industry/xls/underlying-estimates/Margins_Before_Redefinitions_2017.xlsx}
+"Detail_Margins_2017_BeforeRedef_17sch"
+
+#' Detail 2017 Import Before Redefinition (2017 schema)
+#' @format A dataframe with 402 obs. and 424 variables
+#' @source \url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_DET_2017.xlsx}
+"Detail_Import_2017_BeforeRedef_17sch"
+
+#' Detail 2017-2022 Gross Output (2017 schema)
+#' @format A dataframe with 402 obs. and 6 variables
+#' @source \url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+"Detail_GrossOutput_IO_17sch"
+
+#' Summary 2017-2022 Gross Output (2017 schema)
+#' @format A dataframe with 71 obs. and 6 variables
+#' @source \url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+"Summary_GrossOutput_IO_17sch"
+
+#' Sector 2017-2022 Gross Output (2017 schema)
+#' @format A dataframe with 15 obs. and 6 variables
+#' @source \url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+"Sector_GrossOutput_IO_17sch"
+
+#' Detail 2017-2022 CPI (2017 schema)
+#' @format A dataframe with 402 obs. and 6 variables
+#' @source \url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+"Detail_CPI_IO_17sch"
+
+#' Summary 2017-2022 CPI (2017 schema)
+#' @format A dataframe with 71 obs. and 6 variables
+#' @source \url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+"Summary_CPI_IO_17sch"
+
+#' Sector 2017-2022 CPI (2017 schema)
+#' @format A dataframe with 15 obs. and 6 variables
+#' @source \url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+"Sector_CPI_IO_17sch"
+
+#' Summary 2017-2022 Value Added (2017 schema)
+#' @format A dataframe with 71 obs. and 6 variables
+#' @source \url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+"Summary_ValueAdded_IO_17sch"
+
+#' Sector 2017-2022 Value Added (2017 schema)
+#' @format A dataframe with 15 obs. and 6 variables
+#' @source \url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+"Sector_ValueAdded_IO_17sch"
+
+#' Detail Industry Code and Name (2017 schema)
+#' @format A dataframe with 402 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Detail_IndustryCodeName_2017"
 
-#' Sector 2013 Use (2012 schema)
-#' @format A dataframe with 26 obs. and 22 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Use_SUT_2013"
+#' Detail Commodity Code and Name (2017 schema)
+#' @format A dataframe with 402 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Detail_CommodityCodeName_2017"
 
-#' Sector 2014 Use (2012 schema)
-#' @format A dataframe with 26 obs. and 22 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Use_SUT_2014"
+#' Detail Value Added Code and Name (2017 schema)
+#' @format A dataframe with 3 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Detail_ValueAddedCodeName_2017"
 
-#' Sector 2015 Use (2012 schema)
-#' @format A dataframe with 26 obs. and 22 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Use_SUT_2015"
+#' Detail Final Demand Code and Name (2017 schema)
+#' @format A dataframe with 20 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Detail_FinalDemandCodeName_2017"
 
-#' Sector 2016 Use (2012 schema)
-#' @format A dataframe with 26 obs. and 22 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Use_SUT_2016"
+#' Summary Industry Code and Name (2017 schema)
+#' @format A dataframe with 73 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_IndustryCodeName_2017"
 
-#' Sector 2017 Use (2012 schema)
-#' @format A dataframe with 26 obs. and 22 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Use_SUT_2017"
+#' Summary Commodity Code and Name (2017 schema)
+#' @format A dataframe with 73 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_CommodityCodeName_2017"
 
-#' Sector 2018 Use (2012 schema)
-#' @format A dataframe with 26 obs. and 22 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Use_SUT_2018"
+#' Summary Value Added Code and Name (2017 schema)
+#' @format A dataframe with 3 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_ValueAddedCodeName_2017"
 
-#' Sector 2019 Use (2012 schema)
-#' @format A dataframe with 26 obs. and 22 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Use_SUT_2019"
+#' Summary Final Demand Code and Name (2017 schema)
+#' @format A dataframe with 20 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_FinalDemandCodeName_2017"
 
-#' Sector 2020 Use (2012 schema)
-#' @format A dataframe with 26 obs. and 22 variables
-#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-"Sector_Use_SUT_2020"
+#' Sector Industry Code and Name (2017 schema)
+#' @format A dataframe with 17 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Sector_IndustryCodeName_2017"
+
+#' Sector Commodity Code and Name (2017 schema)
+#' @format A dataframe with 17 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Sector_CommodityCodeName_2017"
+
+#' Sector Value Added Code and Name (2017 schema)
+#' @format A dataframe with 3 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Sector_ValueAddedCodeName_2017"
+
+#' Sector Final Demand Code and Name (2017 schema)
+#' @format A dataframe with 6 obs. and 2 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Sector_FinalDemandCodeName_2017"
+
+#' Summary 2017 Import Before Redefinition (2017 schema)
+#' @format A dataframe with 73 obs. and 93 variables
+#' @source \url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+"Summary_Import_2017_BeforeRedef_17sch"
+
+#' Summary 2018 Import Before Redefinition (2017 schema)
+#' @format A dataframe with 73 obs. and 93 variables
+#' @source \url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+"Summary_Import_2018_BeforeRedef_17sch"
+
+#' Summary 2019 Import Before Redefinition (2017 schema)
+#' @format A dataframe with 73 obs. and 93 variables
+#' @source \url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+"Summary_Import_2019_BeforeRedef_17sch"
+
+#' Summary 2020 Import Before Redefinition (2017 schema)
+#' @format A dataframe with 73 obs. and 93 variables
+#' @source \url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+"Summary_Import_2020_BeforeRedef_17sch"
+
+#' Summary 2021 Import Before Redefinition (2017 schema)
+#' @format A dataframe with 73 obs. and 93 variables
+#' @source \url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+"Summary_Import_2021_BeforeRedef_17sch"
+
+#' Summary 2022 Import Before Redefinition (2017 schema)
+#' @format A dataframe with 73 obs. and 93 variables
+#' @source \url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+"Summary_Import_2022_BeforeRedef_17sch"
+
+#' Summary 2017 Make Before Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2017_BeforeRedef_17sch"
+
+#' Summary 2018 Make Before Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2018_BeforeRedef_17sch"
+
+#' Summary 2019 Make Before Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2019_BeforeRedef_17sch"
+
+#' Summary 2020 Make Before Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2020_BeforeRedef_17sch"
+
+#' Summary 2021 Make Before Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2021_BeforeRedef_17sch"
+
+#' Summary 2022 Make Before Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2022_BeforeRedef_17sch"
+
+#' Summary 2017 Use Producer's Value Before Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2017_PRO_BeforeRedef_17sch"
+
+#' Summary 2018 Use Producer's Value Before Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2018_PRO_BeforeRedef_17sch"
+
+#' Summary 2019 Use Producer's Value Before Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2019_PRO_BeforeRedef_17sch"
+
+#' Summary 2020 Use Producer's Value Before Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2020_PRO_BeforeRedef_17sch"
+
+#' Summary 2021 Use Producer's Value Before Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2021_PRO_BeforeRedef_17sch"
+
+#' Summary 2022 Use Producer's Value Before Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2022_PRO_BeforeRedef_17sch"
+
+#' Summary 2017 Use Purchaser's Value Before Redefinition (2017 schema)
+#' @format A dataframe with 76 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2017_PUR_BeforeRedef_17sch"
+
+#' Summary 2017 Make After Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2017_AfterRedef_17sch"
+
+#' Summary 2018 Make After Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2018_AfterRedef_17sch"
+
+#' Summary 2019 Make After Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2019_AfterRedef_17sch"
+
+#' Summary 2020 Make After Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2020_AfterRedef_17sch"
+
+#' Summary 2021 Make After Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2021_AfterRedef_17sch"
+
+#' Summary 2022 Make After Redefinition (2017 schema)
+#' @format A dataframe with 72 obs. and 74 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Make_2022_AfterRedef_17sch"
+
+#' Summary 2017 Use Producer's Value After Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2017_PRO_AfterRedef_17sch"
+
+#' Summary 2018 Use Producer's Value After Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2018_PRO_AfterRedef_17sch"
+
+#' Summary 2019 Use Producer's Value After Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2019_PRO_AfterRedef_17sch"
+
+#' Summary 2020 Use Producer's Value After Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2020_PRO_AfterRedef_17sch"
+
+#' Summary 2021 Use Producer's Value After Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2021_PRO_AfterRedef_17sch"
+
+#' Summary 2022 Use Producer's Value After Redefinition (2017 schema)
+#' @format A dataframe with 79 obs. and 94 variables
+#' @source \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+"Summary_Use_2022_PRO_AfterRedef_17sch"
diff --git a/R/DisaggregateFunctions.R b/R/DisaggregateFunctions.R
index b6082c92..b2c02dfd 100644
--- a/R/DisaggregateFunctions.R
+++ b/R/DisaggregateFunctions.R
@@ -99,89 +99,126 @@ getDisaggregationSpecs <- function (model, configpaths = NULL, pkg = "useeior"){
 #' Setup the configuration specs based on the input files
 #' @param model An EEIO model object with model specs and IO tables loaded
 #' @param configpaths str vector, paths (including file name) of disagg configuration file(s).
+#' @param setupType String that indicates whether this function is called to setup Disaggregation or WIO specs
 #' If NULL, built-in config files are used.
 #' @return A model object with the correct disaggregation specs.
-disaggregateSetup <- function (model, configpaths = NULL){
+disaggregateSetup <- function (model, configpaths = NULL, setupType = "Disaggregation"){
+
+  if(setupType == "Disaggregation") {
+    folderPath <- "extdata/disaggspecs"
+    specs <- model$DisaggregationSpecs
+  } else if(setupType == "WIO") {
+    folderPath <- "extdata/wiospecs"
+    specs <- model$WIOSpecs
+  } else if(setupType == "MUIO"){
+    folderPath <- "extdata/muiospecs"
+    specs <- model$MUIOSpecs
+  }
+    else {
+    stop("No valid path available for disaggregated or WIO model.")
+  }
   
-  for (disagg in model$DisaggregationSpecs){  
-    if(is.null(disagg$package)){
-      disagg$package <- "useeior"
-    } else if(disagg$package == "useeior") {
+  for (spec in specs){  
+    if(is.null(spec$package)){
+      spec$package = "useeior"
+    } else if(spec$package == "useeior") {
       configpaths <- NULL
     }
-    filename <- getInputFilePath(configpaths, "extdata/disaggspecs", disagg$SectorFile,
-                                 package = disagg$package)
-    disagg$NAICSSectorCW <- utils::read.table(filename,
-                                              sep = ",", header = TRUE,
-                                              stringsAsFactors = FALSE,
-                                              check.names = FALSE)
-    
-    newNames <- unique(data.frame("SectorCode" = disagg$NAICSSectorCW$USEEIO_Code,
-                                  "SectorName" = disagg$NAICSSectorCW$USEEIO_Name,
-                                  "Category" = disagg$NAICSSectorCW$Category,
-                                  "Subcategory" = disagg$NAICSSectorCW$Subcategory,
-                                  "Description" = disagg$NAICSSectorCW$Description,
+    filename <- getInputFilePath(configpaths, folderPath, spec$SectorFile,
+                                 package = spec$package)
+    spec$NAICSSectorCW <- utils::read.table(filename,
+                                            sep = ",", header = TRUE,
+                                            stringsAsFactors = FALSE,
+                                            check.names = FALSE)
+
+    newNames <- unique(data.frame("SectorCode" = spec$NAICSSectorCW$USEEIO_Code,
+                                  "SectorName" = spec$NAICSSectorCW$USEEIO_Name,
+                                  "Category" = spec$NAICSSectorCW$Category,
+                                  "Subcategory" = spec$NAICSSectorCW$Subcategory,
+                                  "Description" = spec$NAICSSectorCW$Description,
                                   stringsAsFactors = TRUE))
-    disagg$DisaggregatedSectorNames <- as.list(levels(newNames[, 'SectorName']))
-    disagg$DisaggregatedSectorCodes <- as.list(levels(newNames[, 'SectorCode']))
-    disagg$Category <- lapply(newNames[, 'Category'], as.character)
-    disagg$Subcategory <- lapply(newNames[, 'Subcategory'], as.character)
-    disagg$Description <- lapply(newNames[, 'Description'], as.character)
+    spec$NewSectorNames <- as.list(levels(newNames[, 'SectorName']))
+    spec$NewSectorCodes <- as.list(levels(newNames[, 'SectorCode']))
+    spec$Category <- lapply(newNames[, 'Category'], as.character)
+    spec$Subcategory <- lapply(newNames[, 'Subcategory'], as.character)
+    spec$Description <- lapply(newNames[, 'Description'], as.character)
     
     #reordering disaggSectorNames and DisaggSectorCodes to match the mapping in newNames
-    disagg$DisaggregatedSectorNames <- as.list(disagg$DisaggregatedSectorNames[match(newNames$SectorName,disagg$DisaggregatedSectorNames)])
-    disagg$DisaggregatedSectorCodes <- as.list(disagg$DisaggregatedSectorCodes[match(newNames$SectorCode,disagg$DisaggregatedSectorCodes)])
+    spec$NewSectorNames <- as.list(spec$NewSectorNames[match(newNames$SectorName,spec$NewSectorNames)])
+    spec$NewSectorCodes <- as.list(spec$NewSectorCodes[match(newNames$SectorCode,spec$NewSectorCodes)])
     
     # Load Make table disaggregation file
-    if(!is.null(disagg$MakeFile)){
-      filename <- getInputFilePath(configpaths, "extdata/disaggspecs", disagg$MakeFile,
-                                   package = disagg$package)
-      disagg$MakeFileDF <- utils::read.table(filename,
-                                             sep = ",", header = TRUE,
-                                             stringsAsFactors = FALSE,
-                                             check.names = FALSE)
+    if(!is.null(spec$MakeFile)){
+      filename <- getInputFilePath(configpaths, folderPath, spec$MakeFile,
+                                   package = spec$package)
+      spec$MakeFileDF <- utils::read.table(filename,
+                                           sep = ",", header = TRUE,
+                                           stringsAsFactors = FALSE,
+                                           check.names = FALSE)
     }
     
     # Load Use table disaggregation file
-    if(!is.null(disagg$UseFile)){
-      filename <- getInputFilePath(configpaths, "extdata/disaggspecs", disagg$UseFile,
-                                   package = disagg$package)
-      disagg$UseFileDF <- utils::read.table(filename,
-                                            sep = ",", header = TRUE,
-                                            stringsAsFactors = FALSE,
-                                            check.names = FALSE)
+    if(!is.null(spec$UseFile)){
+      filename <- getInputFilePath(configpaths, folderPath, spec$UseFile,
+                                   package = spec$package)
+      spec$UseFileDF <- utils::read.table(filename,
+                                          sep = ",", header = TRUE,
+                                          stringsAsFactors = FALSE,
+                                          check.names = FALSE)
     }
     
     # Load Environment flows table
-    if(!is.null(disagg$EnvFile)){
-      filename <- getInputFilePath(configpaths, "extdata/disaggspecs", disagg$EnvFile,
-                                   package = disagg$package)
-      disagg$EnvFileDF <- utils::read.table(filename,
-                                            sep = ",", header = TRUE,
-                                            stringsAsFactors = FALSE,
-                                            check.names = FALSE)
+    if(!is.null(spec$EnvFile)){
+      filename <- getInputFilePath(configpaths, folderPath, spec$EnvFile,
+                                   package = spec$package)
+      spec$EnvFileDF <- utils::read.table(filename,
+                                          sep = ",", header = TRUE,
+                                          stringsAsFactors = FALSE,
+                                          check.names = FALSE)
     }
-    
-    if("FlowRatio" %in% colnames(disagg$EnvFileDF)) {
-      disagg$EnvAllocRatio <- TRUE
+
+    if(!is.null(spec$SourceFile)) {
+      fbs <- getFlowbySector(spec$SourceFile)
+      
+      # TODO: check if this if statement is necessary. 
+      # That is, confirm that disaggregation cannot happen from SourceFile and thus this if statement would not be entered 
+      # for setupType == Disaggregation
+      if(setupType == "WIO"){
+        WIOFBSList <- prepareWIODFfromFBS(fbs, spec, model)
+        spec <-  WIOFBSList$spec
+        model <- WIOFBSList$model
+      }
+    }
+        
+    if("FlowRatio" %in% colnames(spec$EnvFileDF)) {
+      spec$EnvAllocRatio <- TRUE
     } else {
-      disagg$EnvAllocRatio <- FALSE
+      spec$EnvAllocRatio <- FALSE
     }
 
     # For Two-region model, develop two-region specs from national disaggregation files
-    if (model$specs$IODataSource=="stateior" & stringr::str_sub(disagg$OriginalSectorCode, start=-3)=="/US") {
-      for(region in model$specs$ModelRegionAcronyms){
-        d2 <- prepareTwoRegionDisaggregation(disagg, region, model$specs$ModelRegionAcronyms)
-        model$DisaggregationSpecs[[d2$OriginalSectorCode]] <- d2
+    if (model$specs$IODataSource=="stateior"){
+      if (stringr::str_sub(spec$OriginalSectorCode, start=-3)=="/US") {
+        for(region in model$specs$ModelRegionAcronyms){
+          d2 <- prepareTwoRegionDisaggregation(spec, region, model$specs$ModelRegionAcronyms)
+          specs[[d2$OriginalSectorCode]] <- d2
+        }
+        # Remove original disaggregation spec
+        specs[spec$OriginalSectorCode] <- NULL
       }
-      # Remove original disaggregation spec
-      model$DisaggregationSpecs[disagg$OriginalSectorCode] <- NULL
-
     } else {
-      #Need to assign these DFs back to the modelspecs
-      model$DisaggregationSpecs[[disagg$OriginalSectorCode]] <- disagg
+      # Need to assign these DFs back to the modelspecs
+      specs[[spec$OriginalSectorCode]] <- spec
     }
   }
+
+  if(setupType == "Disaggregation"){
+    model$DisaggregationSpecs <- specs
+  } else if(setupType == "WIO") {
+    model$WIOSpecs <- specs
+  } else if(setupType == "MUIO"){
+    model$MUIOSpecs <- specs
+  }
   
   return(model)
 }
@@ -201,7 +238,7 @@ prepareTwoRegionDisaggregation <- function(disagg, region, regions) {
   
   # Update NAICSSectorCW
   d2$NAICSSectorCW$USEEIO_Code <- gsub("/US", paste0("/",region), d2$NAICSSectorCW$USEEIO_Code)
-  d2$DisaggregatedSectorCodes <- lapply(d2$DisaggregatedSectorCodes, function(x) gsub("/US", paste0("/",region), x))
+  d2$NewSectorCodes <- lapply(d2$NewSectorCodes, function(x) gsub("/US", paste0("/",region), x))
 
   # Duplicate national allocations
   cols <- c("IndustryCode","CommodityCode")
@@ -209,8 +246,8 @@ prepareTwoRegionDisaggregation <- function(disagg, region, regions) {
   d2$UseFileDF[cols] <- lapply(d2$UseFileDF[cols], function(x) gsub("/US", paste0("/",region), x))  
 
   # For Use table, adjust use table intersections for sequential disaggregation
-  rep <- subset(d2$UseFileDF, CommodityCode %in% d2$DisaggregatedSectorCodes &
-                              IndustryCode %in% d2$DisaggregatedSectorCodes)
+  rep <- subset(d2$UseFileDF, CommodityCode %in% d2$NewSectorCodes &
+                              IndustryCode %in% d2$NewSectorCodes)
   
   rep1 <- rep
   rep2 <- rep
@@ -284,11 +321,15 @@ disaggregateInternationalTradeAdjustment <- function(model, disagg, ratios = NUL
   originalNameList <- names(originalInternationalTradeAdjustment) # Get names from named vector
   originalIndex <- which(originalNameList == disagg$OriginalSectorCode) # Get row index of the original aggregate sector in the object
   
-  originalRow <- originalInternationalTradeAdjustment[originalIndex] # Copy row containing the Margins information for the original aggregate sector
-  disaggInternationalTradeAdjustment <- rep(originalRow,length(disagg$DisaggregatedSectorCodes)) # Replicate the original a number of times equal to the number of disaggregate sectors
+  # Copy row containing the Margins information for the original aggregate sector
+  originalRow <- originalInternationalTradeAdjustment[originalIndex]
+  # Replicate the original a number of times equal to the number of disaggregate sectors
+  disaggInternationalTradeAdjustment <- rep(originalRow,length(disagg$NewSectorCodes))
  
   if(is.null(ratios)){# Use default ratios, i.e., commodity output ratios
-    disaggRatios <- unname(disaggregatedRatios(model, disagg, "Commodity"))#ratios needed to calculate the margins for the disaggregated sectors. Need to unname for compatibility with Rho matrix later in the model build process.
+    # ratios needed to calculate the margins for the disaggregated sectors.
+    # Need to unname for compatibility with Rho matrix later in the model build process.
+    disaggRatios <- unname(disaggregatedRatios(model, disagg, "Commodity"))
   }else{
     #todo: need to discuss if other ratios are relevant/needed and where they would come from.
     disaggRatios <- ratios
@@ -297,8 +338,7 @@ disaggregateInternationalTradeAdjustment <- function(model, disagg, ratios = NUL
   disaggInternationalTradeAdjustment <- disaggInternationalTradeAdjustment * disaggRatios
   
   # Rename the rows of the vector
-  disaggRowNames <- unlist(disagg$DisaggregatedSectorCodes)
-  disaggRowNames <- sapply(strsplit(disaggRowNames, split = "/"), "[",1)
+  disaggRowNames <- unlist(disagg$NewSectorCodes)
   names(disaggInternationalTradeAdjustment) <- disaggRowNames
   
   # Combine elements in a new vector
@@ -317,16 +357,28 @@ disaggregateInternationalTradeAdjustment <- function(model, disagg, ratios = NUL
 #' @return newMargins A dataframe which contain the margins for the disaggregated sectors
 disaggregateMargins <- function(model, disagg) {
   originalMargins <- model$Margins
-  originalIndex <-  grep(paste0("^", disagg$OriginalSectorCode), model$Margins$Code_Loc)#get row index of the original aggregate sector in the model$Margins object
-  originalRow <- model$Margins[originalIndex,]#copy row containing the Margins information for the original aggregate sector
-  disaggMargins <-originalRow[rep(seq_len(nrow(originalRow)), length(disagg$DisaggregatedSectorCodes)),,drop=FALSE]#replicate the original a number of times equal to the number of disaggregate sectors
-  disaggRatios <- unname(disaggregatedRatios(model, disagg, model$specs$CommodityorIndustryType))#ratios needed to calculate the margins for the disaggregated sectors. Need to unname for compatibility with Rho matrix later in the model build process.
-  
+  # get row index of the original aggregate sector in the model$Margins object
+  originalIndex <-  grep(paste0("^", disagg$OriginalSectorCode), model$Margins$Code_Loc)
+  # copy row containing the Margins information for the original aggregate sector
+  originalRow <- model$Margins[originalIndex,]
+
+  # replicate the original a number of times equal to the number of disaggregate sectors
+  disaggMargins <-originalRow[rep(seq_len(nrow(originalRow)), length(disagg$NewSectorCodes)),,drop=FALSE]
+  # ratios needed to calculate the margins for the disaggregated sectors.
+  # Need to unname for compatibility with Rho matrix later in the model build process.
+  disaggRatios <- unname(disaggregatedRatios(model, disagg, model$specs$CommodityorIndustryType))
+
   #variable to determine length of Code substring, i.e., code length minus geographic identifier and separator character (e.g. "/US")
-  codeLength <- nchar(gsub("/.*", "", disagg$DisaggregatedSectorCodes[1]))
-  disaggMargins$Code_Loc <- unlist(disagg$DisaggregatedSectorCodes)#replace Code_Loc values from aggregate sector with Code_Loc values for disaggregated sectors. Need to unlist for compatibility with Rho matrix later in the model build process.
-  disaggMargins$SectorCode <- substr(disagg$DisaggregatedSectorCodes,1,codeLength) #replace SectorCode values from aggregate sector with Code_Loc values for disaggregated sectors, except for the geographic identifer
-  disaggMargins$Name <- unlist(disagg$DisaggregatedSectorNames)#replace Name values from aggregate sector with Name values for disaggregated sectors.  Need to unlist for compatibility with other functions later in the model build process.
+  codeLength <- nchar(gsub("/.*", "", disagg$NewSectorCodes[1]))
+
+  # replace Code_Loc values from aggregate sector with Code_Loc values for disaggregated sectors.
+  # Need to unlist for compatibility with Rho matrix later in the model build process.
+  disaggMargins$Code_Loc <- unlist(disagg$NewSectorCodes)
+  # replace SectorCode values from aggregate sector with Code_Loc values for disaggregated sectors, except for the geographic identifer
+  disaggMargins$SectorCode <- substr(disagg$NewSectorCodes,1,codeLength)
+  # replace Name values from aggregate sector with Name values for disaggregated sectors.
+  # Need to unlist for compatibility with other functions later in the model build process.
+  disaggMargins$Name <- unlist(disagg$NewSectorNames)
   
   #code below mutlplies the values in the relavant columns of the Margins dataframe by the disaggRatios
   disaggMargins$ProducersValue <- disaggMargins$ProducersValue * disaggRatios
@@ -335,10 +387,10 @@ disaggregateMargins <- function(model, disagg) {
   disaggMargins$Retail <- disaggMargins$Retail * disaggRatios
   disaggMargins$PurchasersValue <- disaggMargins$PurchasersValue * disaggRatios
   
-  #bind the new values to the original table
+  # bind the new values to the original table
   newMargins <- rbind(originalMargins[1:originalIndex-1,], disaggMargins, originalMargins[-(1:originalIndex),])
   
-  #update rownames so that the row names of the disaggregated sectors do not contain decimals (e.g., 351.1)
+  # update rownames so that the row names of the disaggregated sectors do not contain decimals (e.g., 351.1)
   rownames(newMargins) <- NULL
   if(model$specs$CommodityorIndustryType == "Industry") {
     names <- model$Industries$Code
@@ -359,21 +411,21 @@ disaggregateTaxLessSubsidies <- function(model, disagg) {
   original <- model$TaxLessSubsidies
   originalIndex <- grep(paste0("^", disagg$OriginalSectorCode), model$TaxLessSubsidies$Code_Loc)
   originalRow <- model$TaxLessSubsidies[originalIndex,]
-  disaggTLS <- originalRow[rep(seq_len(nrow(originalRow)), length(disagg$DisaggregatedSectorCodes)),,drop=FALSE]
+  disaggTLS <- originalRow[rep(seq_len(nrow(originalRow)), length(disagg$NewSectorCodes)),,drop=FALSE]
   disaggRatios <- unname(disaggregatedRatios(model, disagg, model$specs$CommodityorIndustryType))
   
-  codeLength <- nchar(gsub("/.*", "", disagg$DisaggregatedSectorCodes[1]))
-  disaggTLS$Code_Loc <- unlist(disagg$DisaggregatedSectorCodes)
-  disaggTLS$Name <- unlist(disagg$DisaggregatedSectorNames)
+  codeLength <- nchar(gsub("/.*", "", disagg$NewSectorCodes[1]))
+  disaggTLS$Code_Loc <- unlist(disagg$NewSectorCodes)
+  disaggTLS$Name <- unlist(disagg$NewSectorNames)
   
-  #code below multiplies the values in the relevant columns of the TLS dataframe by the disaggRatios
+  # code below multiplies the values in the relevant columns of the TLS dataframe by the disaggRatios
   disaggTLS$BasicValue <- disaggTLS$BasicValue * disaggRatios
   disaggTLS$MDTY <- disaggTLS$MDTY * disaggRatios
   disaggTLS$TOP <- disaggTLS$TOP * disaggRatios
   disaggTLS$SUB <- disaggTLS$SUB * disaggRatios
   disaggTLS$ProducerValue <- disaggTLS$ProducerValue * disaggRatios
 
-  #bind the new values to the original table
+  # bind the new values to the original table
   newTLS <- rbind(original[1:originalIndex-1,], disaggTLS, original[-(1:originalIndex),])
   
   rownames(newTLS) <- NULL
@@ -390,21 +442,20 @@ disaggregatedRatios <- function(model, disagg, output_type = "Commodity") {
 
   if(output_type == "Industry") {
     #Get Index for Disaggregated Industries in the use table
-    disaggUseStartIndex <- which(colnames(model$UseTransactions)==disagg$DisaggregatedSectorCodes[1])
-    disaggUseEndIndex <- disaggUseStartIndex+length(disagg$DisaggregatedSectorCodes)-1
+    disaggUseStartIndex <- which(colnames(model$UseTransactions)==disagg$NewSectorCodes[1])
+    disaggUseEndIndex <- disaggUseStartIndex+length(disagg$NewSectorCodes)-1
     
     #calculate industry ratios after disaggregation from Use table
     disaggRatios <- colSums(model$UseTransactions[,disaggUseStartIndex:disaggUseEndIndex]) + colSums(model$UseValueAdded[,disaggUseStartIndex:disaggUseEndIndex])
     disaggRatios <- disaggRatios / sum(disaggRatios)
 
   } else { 
-    #assume commodity if industry is not specified
-    #Get Index for Disaggregated Commodities in the use table
-    disaggUseStartIndex <- which(rownames(model$UseTransactions)==disagg$DisaggregatedSectorCodes[1])
-    disaggUseEndIndex <- disaggUseStartIndex+length(disagg$DisaggregatedSectorCodes)-1
+    # assume commodity if industry is not specified
+    # Get Index for Disaggregated Commodities in the use table
+    disaggUseStartIndex <- which(rownames(model$UseTransactions)==disagg$NewSectorCodes[1])
+    disaggUseEndIndex <- disaggUseStartIndex+length(disagg$NewSectorCodes)-1
     
-    #calculate industry ratios after disaggregation from Use table
-#    disaggRatios <- rowSums(model$UseTransactions[disaggUseStartIndex:disaggUseEndIndex,]) + rowSums(model$FinalDemand[disaggUseStartIndex:disaggUseEndIndex,])
+    # calculate industry ratios after disaggregation from Use table
     if(model$specs$CommodityorIndustryType == "Industry"){
       disaggRatios <- rowSums(model$UseTransactions[disaggUseStartIndex:disaggUseEndIndex,]) + rowSums(model$FinalDemandbyCommodity[disaggUseStartIndex:disaggUseEndIndex,])
       
@@ -439,12 +490,12 @@ disaggregateMultiYearOutput <- function(model, disagg, output_type = "Commodity"
   #Obtain row with original vector in GDPGrossOutput object
   originalVector <- originalOutput[originalVectorIndex,]
   #Create new rows where disaggregated values will be stored
-  disaggOutput <-originalVector[rep(seq_len(nrow(originalVector)), length(disagg$DisaggregatedSectorCodes)),,drop=FALSE]
+  disaggOutput <-originalVector[rep(seq_len(nrow(originalVector)), length(disagg$NewSectorCodes)),,drop=FALSE]
   
   #apply ratios to values
   disaggOutput <- disaggOutput *t(disaggRatios)
   #rename rows
-  rownames(disaggOutput) <- disagg$DisaggregatedSectorCodes
+  rownames(disaggOutput) <- disagg$NewSectorCodes
   
   #bind new values to original table
   newOutputTotals <- rbind(originalOutput[1:originalVectorIndex-1,], disaggOutput, originalOutput[-(1:originalVectorIndex),])
@@ -468,7 +519,7 @@ disaggregateSectorDFs <- function(model, disagg, list_type) {
     originalList <- model$Industries
   }
   originalIndex <- grep(paste0("^",disagg$OriginalSectorCode), originalList$Code_Loc)
-  newSectors <- data.frame(matrix(ncol = ncol(originalList), nrow = length(disagg$DisaggregatedSectorCodes)))
+  newSectors <- data.frame(matrix(ncol = ncol(originalList), nrow = length(disagg$NewSectorCodes)))
   names(newSectors) <- names(originalList) #rename columns for the df
 
   if(list_type == "Commodity") {  
@@ -477,11 +528,14 @@ disaggregateSectorDFs <- function(model, disagg, list_type) {
     newSectors$Description <- sapply(disagg$Description, paste0, collapse = "")
   }
 
+  newSectors$Unit <- sapply("USD", paste0, collapse = "")
   #variable to determine length of Code substring, i.e., code length minus geographic identifier and separator character (e.g. "/US")
-  codeLength <- nchar(gsub("/.*", "", disagg$DisaggregatedSectorCodes[1]))
-  newSectors$Code <- substr(disagg$DisaggregatedSectorCodes,1,codeLength)
-  newSectors$Code_Loc <- sapply(disagg$DisaggregatedSectorCodes, paste0, collapse = "")#sapply needed to convert DisaggregatedSectorCodes from list to char vector
-  newSectors$Name <- sapply(disagg$DisaggregatedSectorNames, paste0, collapse = "")
+  codeLength <- nchar(gsub("/.*", "", disagg$NewSectorCodes[1]))
+
+  newSectors$Code <- substr(disagg$NewSectorCodes,1,codeLength)
+  # sapply needed to convert NewSectorCodes from list to char vector
+  newSectors$Code_Loc <- sapply(disagg$NewSectorCodes, paste0, collapse = "")
+  newSectors$Name <- sapply(disagg$NewSectorNames, paste0, collapse = "")
   newSectors <- rbind(originalList[1:originalIndex-1,],newSectors,originalList[-(1:originalIndex),])
   rownames(newSectors) <- 1:nrow(newSectors)
   
@@ -517,7 +571,7 @@ disaggregateSatelliteSubsetByRatio <- function(sattable, disagg, allocating_sect
     new_sector_totals <- sattable
     # Update the sector and sector name
     new_sector_totals$Sector <- new_sector
-    new_sector_totals$SectorName <- disagg$DisaggregatedSectorNames[[match(new_sector, gsub("/.*", "", disagg$DisaggregatedSectorCode))]]
+    new_sector_totals$SectorName <- disagg$NewSectorNames[[match(new_sector, gsub("/.*", "", disagg$NewSectorCodes))]]
     allocation <- 0
     if (new_sector %in% names(allocation_vector)){
       allocation <- allocation_vector[[new_sector]]
@@ -547,7 +601,7 @@ disaggregateSatelliteTable <- function (disagg, tbs, sat_spec) {
   
   original_code <- gsub("/.*", "", disagg$OriginalSectorCode)
   codes <- c(original_code, codes)
-  allocating_sectors <- disagg$DisaggregatedSectorCodes
+  allocating_sectors <- disagg$NewSectorCodes
   if(any(codes %in% sattable$Sector)) {
     if(!is.null(disagg$EnvFileDF) & disagg$EnvAllocRatio) {
       # If satellite table data is provided as flow by sector ratios, loop through each flow assigned to original sector
@@ -582,8 +636,10 @@ disaggregateSatelliteTable <- function (disagg, tbs, sat_spec) {
         # Check for errors in satellite table
         new_sector_totals <- conformTbStoStandardSatTable(new_sector_totals)
         included_sectors <- unique(new_sector_totals[,"Sector"])
-        if (!identical(sort(included_sectors),sort(unlist(gsub("/.*","",disagg$DisaggregatedSectorCodes))))) {
+        if (!identical(sort(included_sectors),sort(unlist(gsub("/.*","",disagg$NewSectorCodes))))) {
           logging::logwarn("Satellite table does not include all disaggregated sectors")
+          # Drop sectors that are not part of this disaggregation
+          new_sector_totals <- subset(new_sector_totals, Sector %in% gsub("/.*","",disagg$NewSectorCodes))
         }
         # Append to the main dataframe
         sattable <- rbind(sattable,new_sector_totals)
@@ -686,7 +742,7 @@ disaggregateFinalDemand <- function(model, disagg, domestic = FALSE) {
     AllocFDDF <- applyAllocation(disagg, FDPercentages, "FinalDemand", originalFD)
 
     #Deterine number of commodities and industries in DisaggSpecs
-    numNewSectors <- length(disagg$DisaggregatedSectorCodes) 
+    numNewSectors <- length(disagg$NewSectorCodes) 
     
     #Determine commodity and industry indeces corresponding to the original sector code
     originalRowIndex <- which(rownames(originalFD)==disagg$OriginalSectorCode)
@@ -733,7 +789,7 @@ disaggregateVA <- function(model, disagg) {
 
     ####assembling disaggregated VA
     #Determine number of commodities and industries in DisaggSpecs
-    numNewSectors <- length(disagg$DisaggregatedSectorCodes)
+    numNewSectors <- length(disagg$NewSectorCodes)
 
     #Determine commodity and industry indeces corresponding to the original sector code
     originalColIndex <- which(colnames(model$UseValueAdded)==disagg$OriginalSectorCode)
@@ -763,7 +819,7 @@ uniformDisagg <- function (model, disagg, table) {
   #values along the intersections disaggregated uniformly along the diagonal.
 
   #Determine number of commodities and industries in DisaggSpecs
-  numNewSectors <- length(disagg$DisaggregatedSectorCodes) 
+  numNewSectors <- length(disagg$NewSectorCodes) 
   
   #Determine commodity and industry indeces corresponding to the original sector code
   originalRowIndex <- which(rownames(table)==disagg$OriginalSectorCode)
@@ -795,8 +851,8 @@ uniformDisagg <- function (model, disagg, table) {
   disaggIntersection = as.data.frame(t(disaggIntersection))
   
   #rename rows and columns
-  colnames(disaggIntersection) <- disagg$DisaggregatedSectorCodes
-  rownames(disaggIntersection) <- disagg$DisaggregatedSectorCodes
+  colnames(disaggIntersection) <- disagg$NewSectorCodes
+  rownames(disaggIntersection) <- disagg$NewSectorCodes
   
   
   disaggTable <- assembleTable(table, disagg, disaggCols, disaggRows, disaggIntersection)
@@ -815,7 +871,7 @@ uniformDisagg <- function (model, disagg, table) {
 disaggregateRows <- function (RowVectors, disagg_specs, duplicate=FALSE, notUniform = FALSE) {
   
   originalColIndex <- which(colnames(RowVectors)==disagg_specs$OriginalSectorCode)
-  numNewSectors <- length(disagg_specs$DisaggregatedSectorCodes)
+  numNewSectors <- length(disagg_specs$NewSectorCodes)
   
   ColVector <- RowVectors[,originalColIndex, drop = FALSE]#drop = False needed to copy as dataframe
   disaggCols <- disaggregateCol (ColVector, disagg_specs, duplicate, notUniform)
@@ -837,7 +893,7 @@ disaggregateRows <- function (RowVectors, disagg_specs, duplicate=FALSE, notUnif
 disaggregateCols <- function (ColVectors, disagg_specs, duplicate=FALSE, notUniform = FALSE) {
   
   originalRowIndex <- which(rownames(ColVectors)==disagg_specs$OriginalSectorCode)
-  numNewSectors <- length(disagg_specs$DisaggregatedSectorCodes)
+  numNewSectors <- length(disagg_specs$NewSectorCodes)
   
   RowVector <- ColVectors[originalRowIndex,,drop=FALSE]
   disaggRows <- disaggregateRow (RowVector, disagg_specs, duplicate, notUniform)
@@ -859,7 +915,7 @@ disaggregateCols <- function (ColVectors, disagg_specs, duplicate=FALSE, notUnif
 #' @return A dataframe with the original row disaggregated.
 disaggregateRow <- function (originalRowVector, disagg_specs, duplicate = FALSE, notUniform = FALSE) {
   
-  numNewSectors <- length(disagg_specs$DisaggregatedSectorCodes)
+  numNewSectors <- length(disagg_specs$NewSectorCodes)
   
   if (duplicate) {
     #For handling CPI. Just copy the CPI values of the original sector to for all the disaggregated sectors.
@@ -875,7 +931,7 @@ disaggregateRow <- function (originalRowVector, disagg_specs, duplicate = FALSE,
   }
 
   #Rename rows to use the disaggregated codes
-  rownames(disaggRows) <- disagg_specs$DisaggregatedSectorCodes
+  rownames(disaggRows) <- disagg_specs$NewSectorCodes
   
   return(disaggRows)
 }
@@ -889,14 +945,14 @@ disaggregateRow <- function (originalRowVector, disagg_specs, duplicate = FALSE,
 #' @return A dataframe with the original column disaggregated.
 disaggregateCol <- function (originalColVector, disagg_specs, duplicate = FALSE, notUniform = FALSE){
   
-  numNewSectors <- length(disagg_specs$DisaggregatedSectorCodes)
+  numNewSectors <- length(disagg_specs$NewSectorCodes)
   
   if (duplicate) {
       #For handling CPI. Just copy the CPI values of the original sector to for all the disaggregated sectors.
       disaggRows <-originalRowVector[rep(seq_len(nrow(originalRowVector)), numNewSectors),,drop=FALSE]
   } else if(notUniform) {
     percentages <- getDisaggIndustryPercentages(disagg_specs)#get defaul disaggregated industry percentages
-    percentageOrder <- percentages[match(disagg_specs$DisaggregatedSectorCodes, percentages$CommodityCode),]
+    percentageOrder <- percentages[match(disagg_specs$NewSectorCodes, percentages$CommodityCode),]
     disaggCols <- originalColVector[, rep(seq_len(ncol(originalColVector)), numNewSectors)]#repeat the original vector numNewSector times
     disaggCols <- data.frame(t(t(disaggCols)*percentageOrder[,3]))
   } else {
@@ -907,7 +963,7 @@ disaggregateCol <- function (originalColVector, disagg_specs, duplicate = FALSE,
   }
   
   #Rename cols to use the disaggregated codes
-  colnames(disaggCols) <- disagg_specs$DisaggregatedSectorCodes
+  colnames(disaggCols) <- disagg_specs$NewSectorCodes
   
   return(disaggCols)
 }
@@ -919,16 +975,21 @@ disaggregateCol <- function (originalColVector, disagg_specs, duplicate = FALSE,
 disaggregateMasterCrosswalk <- function (model, disagg){
   new_cw <- model$crosswalk #variable to return with complete changes to crosswalk#temp
 
-  secLength <- regexpr(pattern ='/',disagg$OriginalSectorCode) - 1 #used to determine the length of the sector codes. E.g., detail would be 6, while summary would generally be 3 though variable, and sector would be variable
+  # used to determine the length of the sector codes. E.g., detail would be 6, while summary would generally
+  # be 3 though variable, and sector would be variable
+  secLength <- regexpr(pattern ='/',disagg$OriginalSectorCode) - 1
   cw <- disagg$NAICSSectorCW[, c('NAICS_2012_Code','USEEIO_Code')]
-  cw$USEEIO_Code <- sub("/.*","",cw$USEEIO_Code) # For all rows in the USEEIO_Code column, remove all characters after (and including) "/"
+  # For all rows in the USEEIO_Code column, remove all characters after (and including) "/"
+  cw$USEEIO_Code <- sub("/.*","",cw$USEEIO_Code)
 
-  #Update original sector codes with disaggregated sector codes in the relevant column (i.e. cwColIndex) where rows have an exact match for the disaggregated codes in the NAICS column
+  # Update original sector codes with disaggregated sector codes in the relevant column (i.e. cwColIndex)
+  # where rows have an exact match for the disaggregated codes in the NAICS column
   new_cw <-merge(new_cw, cw, by.x=c("NAICS"), by.y=c("NAICS_2012_Code"), all=T)
   
   new_cw$USEEIO <- ifelse(is.na(new_cw$USEEIO_Code), new_cw$USEEIO, new_cw$USEEIO_Code)
   
-  #Update remaining rows where the original sector is present in cwColIndex but there is no exact match in the NAICS column for the disaggregated sector codes (e.g. 2-5 level NAICS codes)
+  # Update remaining rows where the original sector is present in cwColIndex but there is no exact
+  # match in the NAICS column for the disaggregated sector codes (e.g. 2-5 level NAICS codes)
   remainingDisaggNAICSIndex <- which(new_cw$USEEIO == substr(disagg$OriginalSectorCode,1,secLength))
   
   for (i in seq_along(remainingDisaggNAICSIndex)){
@@ -937,7 +998,7 @@ disaggregateMasterCrosswalk <- function (model, disagg){
     
     # if NAICS is NA map the entire new list of sectors
     if(is.na(crosswalkRow$NAICS[1])) {
-      rowComparisons[1:length(disagg$DisaggregatedSectorCodes)] <- TRUE
+      rowComparisons[1:length(disagg$NewSectorCodes)] <- TRUE
     } else {
       #compare the value in the first column (NAICS) to the NAICS values in the disaggCrosswalk. Result is a string with TRUE where first column is a substring of values in disaggCrosswalk
       rowComparisons <- grepl(crosswalkRow$NAICS[1], disagg$NAICSSectorCW$NAICS_2012_Code) 
@@ -968,7 +1029,7 @@ specifiedMakeDisagg <- function (model, disagg){
   #Local variable for original sector code
   originalSectorCode <- disagg$OriginalSectorCode
   #Local variable for new sector codes
-  newSectorCodes <- disagg$DisaggregatedSectorCodes
+  newSectorCodes <- disagg$NewSectorCodes
   #Local variable for Make table allocations
   makeAllocations <- disagg$MakeFileDF
   
@@ -986,7 +1047,8 @@ specifiedMakeDisagg <- function (model, disagg){
   #Assigning allocations for disaggregated intersection
   disaggregatedIntersection <- applyAllocation(disagg,intersectionPercentages,"MakeIntersection", model$MakeTransactions)
   
-  #Allocations for the row (industry) disaggregation. Get all rows of the DF where new sector codes are in the industryCode column, and neither the original nor new sector codes are in the commodityColumn. 
+  # Allocations for the row (industry) disaggregation. Get all rows of the DF where new sector codes are
+  # in the industryCode column, and neither the original nor new sector codes are in the commodityColumn. 
   rowsPercentages <- subset(makeAllocations, IndustryCode %in% newSectorCodes & !(CommodityCode %in% originalSectorCode) & !(CommodityCode %in% newSectorCodes))
   #Assigning allocations for disaggregated rows
   disaggregatedRows  <- applyAllocation(disagg,rowsPercentages,"MakeRow", model$MakeTransactions)
@@ -1008,7 +1070,7 @@ specifiedUseDisagg <- function (model, disagg, domestic = FALSE){
   #Local variable for original sector code
   originalSectorCode <- disagg$OriginalSectorCode
   #Local variable for new sector codes
-  newSectorCodes <- disagg$DisaggregatedSectorCodes
+  newSectorCodes <- disagg$NewSectorCodes
   #Local variable for Use table allocations
   UseAllocations <- disagg$UseFileDF
   #Column names in Final Demand
@@ -1032,7 +1094,8 @@ specifiedUseDisagg <- function (model, disagg, domestic = FALSE){
   #Allocations for column (industry) disaggregation. 
   #Get rows of the DF which do not contain the original sector code or the new sector codes in the commodity column,
   #where no VA row names are present in the commodity Column, and only the new sector codes are present in the industry column
-  colPercentages <- subset(UseAllocations, !(CommodityCode %in% originalSectorCode) & !(CommodityCode %in% newSectorCodes) & !(CommodityCode %in% VARowNames) & IndustryCode %in% newSectorCodes)
+  colPercentages <- subset(UseAllocations, !(CommodityCode %in% originalSectorCode) & !(CommodityCode %in% newSectorCodes)
+                           & !(CommodityCode %in% VARowNames) & IndustryCode %in% newSectorCodes)
   
   #Applying allocation to disaggregat columns
   disaggregatedColumns <- applyAllocation(disagg,colPercentages,"UseCol", originalUse) 
@@ -1062,7 +1125,7 @@ specifiedUseDisagg <- function (model, disagg, domestic = FALSE){
 assembleTable <- function (originalTable, disagg, disaggCols, disaggRows, disaggIntersection){
 
   #Determine number of new sectors
-  numNewSectors <- length(disagg$DisaggregatedSectorCodes) 
+  numNewSectors <- length(disagg$NewSectorCodes) 
   
   #Determine commodity and industry indeces corresponding to the original sector code
   originalRowIndex <- which(rownames(originalTable)==disagg$OriginalSectorCode)
@@ -1097,16 +1160,20 @@ assembleTable <- function (originalTable, disagg, disaggCols, disaggRows, disagg
   
 }
 
-#' Allocate values specified by the .yml disaggregation specs to the correct places in a disaggregated row/column of the Use/Make tables. 
+#' Allocate values specified by the .yml disaggregation specs to the correct places in a
+#' disaggregated row/column of the Use/Make tables. 
 #' @param disagg Specifications for disaggregating the current Table
-#' @param allocPercentages Dataframe. A subset of the dataframe that contains the percentages to allocate to specific industry and commodity combinations in the disaggregated vector. Parameter use coordinated with @param vectorToDisagg
-#' @param vectorToDisagg String. A parameter to indicate what table and what part of that table is being disaggregated (e.g. "MakeCol" or "Intersection") 
+#' @param allocPercentages Dataframe. A subset of the dataframe that contains the percentages
+#' to allocate to specific industry and commodity combinations in the disaggregated vector.
+#' Parameter use coordinated with @param vectorToDisagg
+#' @param vectorToDisagg String. A parameter to indicate what table and what part of that table
+#' is being disaggregated (e.g. "MakeCol" or "Intersection") 
 #' @param originalTable Dataframe. The original dataframe upon which allocation is performed (e.g., Make or Use)
 #' @return A dataframe with the values specified in the disaggSpecs assigned to the correct Make or Use table indeces.
 applyAllocation <- function (disagg, allocPercentages, vectorToDisagg, originalTable){
   
   #Local variable for new sector codes
-  newSectorCodes <- disagg$DisaggregatedSectorCodes
+  newSectorCodes <- disagg$NewSectorCodes
   numNewSectors <- length(newSectorCodes)
   #Local variable for original sector code
   originalSectorCode <- disagg$OriginalSectorCode
@@ -1360,10 +1427,10 @@ getDefaultAllocationPercentages <- function(FileDF, disagg, numNewSectors, outpu
   #Get default allocation percentages based on commodity or industry output
   if(output == 'Industry') {
     defaultPercentages <- subset(FileDF, CommodityCode == disagg$OriginalSectorCode)
-    defaultPercentages <- defaultPercentages[match(disagg$DisaggregatedSectorCodes, defaultPercentages$IndustryCode),]
+    defaultPercentages <- defaultPercentages[match(disagg$NewSectorCodes, defaultPercentages$IndustryCode),]
   } else {
     defaultPercentages <- subset(FileDF, IndustryCode %in% disagg$OriginalSectorCode)
-    defaultPercentages <- defaultPercentages[match(disagg$DisaggregatedSectorCodes, defaultPercentages$CommodityCode),]
+    defaultPercentages <- defaultPercentages[match(disagg$NewSectorCodes, defaultPercentages$CommodityCode),]
   }
 
   #If there are no default percentages from values from csv (i.e. number of rows in defaultRowPercentages dataframe is 0) assume uniform split, otherwise use the csv values
@@ -1421,8 +1488,8 @@ calculateDefaultIntersection <- function(originalIntersection, defaultPercentage
 #' @param disagg Specifications for disaggregating the current Model
 #' @return A dataframe with the default disaggregation percentages for the Industries of the current model
 getDisaggIndustryPercentages <-function(disagg) {
-  
-  defaultPercentages <- subset(disagg$MakeFileDF, IndustryCode %in% disagg$OriginalSectorCode)#get all rows in MakefileDF that have the OriginalSectorCode in the IndustryCode column
+  # get all rows in MakefileDF that have the OriginalSectorCode in the IndustryCode column
+  defaultPercentages <- subset(disagg$MakeFileDF, IndustryCode %in% disagg$OriginalSectorCode)
   
   return(defaultPercentages)
 }
@@ -1432,8 +1499,8 @@ getDisaggIndustryPercentages <-function(disagg) {
 #' @param disagg Specifications for disaggregating the current Model
 #' @return A dataframe with the default disaggregation percentages for the Commodities of the current model
 getDisaggCommodityPercentages <- function(disagg) {
-  
-  defaultPercentages <- subset(disagg$UseFileDF, CommodityCode %in% disagg$OriginalSectorCode) #get all rows in UseAllocations that have the OriginalSectorCode in the CommodityCode column
+  # get all rows in UseAllocations that have the OriginalSectorCode in the CommodityCode column
+  defaultPercentages <- subset(disagg$UseFileDF, CommodityCode %in% disagg$OriginalSectorCode)
  
   return(defaultPercentages)
   
@@ -1448,10 +1515,10 @@ balanceDisagg <- function(model, disagg){
   disaggFullUse <-buildDisaggFullUse(model, disagg)
   
   #Get commodity and/or industry indeces corresponding to the original sector code
-  disaggIndustryIndex <- which(rownames(model$MakeTransactions)==disagg$DisaggregatedSectorCode[1])
-  disaggCommodityIndex <- which(colnames(model$MakeTransactions)==disagg$DisaggregatedSectorCode[1])
-  disaggIndustryEndIndex <- disaggIndustryIndex + length(disagg$DisaggregatedSectorCodes)-1
-  disaggCommodityEndIndex <- disaggCommodityIndex + length(disagg$DisaggregatedSectorCodes)-1
+  disaggIndustryIndex <- which(rownames(model$MakeTransactions)==disagg$NewSectorCodes[1])
+  disaggCommodityIndex <- which(colnames(model$MakeTransactions)==disagg$NewSectorCodes[1])
+  disaggIndustryEndIndex <- disaggIndustryIndex + length(disagg$NewSectorCodes)-1
+  disaggCommodityEndIndex <- disaggCommodityIndex + length(disagg$NewSectorCodes)-1
   
   #Get Disaggregated Industry totals from both Make and Use tables
   disaggMakeIndTotals <- data.frame(rowSums(model$MakeTransactions[disaggIndustryIndex:disaggIndustryEndIndex,]))
@@ -1470,7 +1537,7 @@ balanceDisagg <- function(model, disagg){
   
   
   #Check Balance of industry totals across tables
-  ones <- data.frame(matrix(1, nrow = length(disagg$DisaggregatedSectorCodes)))#initialized to number of disaggregated sectors by 1 col; all elements == 1
+  ones <- data.frame(matrix(1, nrow = length(disagg$NewSectorCodes)))#initialized to number of disaggregated sectors by 1 col; all elements == 1
   tolerance <- ones*0.05#set all elements to 0.05 (ie 5% for all sectors)
   
   if(any(abs(useIndAllocPercentages - makeIndAllocPercentages) > tolerance) || any(abs(useComAllocPercentages - makeComAllocPercentages > tolerance))){
diff --git a/R/FlowsaFunctions.R b/R/FlowsaFunctions.R
index 46c3e420..340da400 100644
--- a/R/FlowsaFunctions.R
+++ b/R/FlowsaFunctions.R
@@ -36,30 +36,52 @@ getFlowbySectorCollapsed <- function(sat_spec) {
     fbs_collapsed <- fbs[,!(names(fbs) %in% c('SectorProducedBy', 'SectorConsumedBy'))]
   }
   # reorder col
-  fbs_collapsed <- prepareFlowBySectorCollapsedforSatellite(fbs_collapsed)
+  fbs_collapsed <- prepareFlowBySectorCollapsed(fbs_collapsed, satellite=TRUE)
 
   return(fbs_collapsed)
 }
 
 
 #' Adjusts flowbysector data from flowsa
-#' Currently only works for national totals (location="00000") and
-#' assumes that sector schema is NAICS_2012_Code
 #' @param fbsc A FlowBySector collapsed df from flowsa
+#' @param satellite bool, set to TRUE when used for env satellite tables
 #' @return A data frame of sector by region totals
-prepareFlowBySectorCollapsedforSatellite <- function(fbsc) {
+prepareFlowBySectorCollapsed <- function(fbsc, satellite=TRUE) {
   # Replace Python type None with NA
   fbsc <- replaceNonewithNA(fbsc)
+  # add columns if not present
+  cols <- c('FlowUUID')
+  fbsc[cols[!(cols %in% colnames(fbsc))]] <- ""
+  # Ensure correct type, parquet can come in as vctrs_unspecified
+  fbsc[c("Context", "FlowUUID")] <- sapply(fbsc[c("Context", "FlowUUID")], function(x) as.character(x))
   # If context is NA replace with blank
   fbsc[,"Context"][is.na(fbsc[,"Context"])] <- ""
+  fbsc[,"FlowUUID"][is.na(fbsc[,"FlowUUID"])] <- ""
+  if(satellite) {
   # Filter technosphere flows
-  acceptable_types <- c("ELEMENTARY_FLOW", "WASTE_FLOW")
-  fbsc <- fbsc[fbsc$FlowType %in% acceptable_types, ]
+    acceptable_types <- c("ELEMENTARY_FLOW", "WASTE_FLOW")
+    fbsc <- fbsc[fbsc$FlowType %in% acceptable_types, ]
+  }
   # Map location codes to names
   fbsc$Location <- mapLocationCodestoNames(fbsc$Location, unique(fbsc$LocationSystem))
   # Get standard sat table fields
   fields <- getStandardSatelliteTableFormat()
+  if (!"Sector" %in% colnames(fbsc)) {
+    # keep SPB and SCB when not a FBS collapsed
+    fields <- append(fields, c("SectorProducedBy", "SectorConsumedBy"), 3)
+  }
   # Remove unused data
   fbsc <- fbsc[which(colnames(fbsc) %in% fields)]
   return(fbsc)
 }
+
+
+#' Load flowsa's FlowBySector df
+#' @param filepath, a filepath to local parquet file
+#' @return A data frame for flowsa data in sector by region totals format
+getFlowbySector <- function(filepath) {
+  f <- loadDataCommonsfile(filepath)
+  fbs <- as.data.frame(arrow::read_parquet(f))
+  fbs <- prepareFlowBySectorCollapsed(fbs, satellite=FALSE)
+  return(fbs)
+}
diff --git a/R/Hybridization.R b/R/Hybridization.R
index 51bb4b6e..32a13d09 100644
--- a/R/Hybridization.R
+++ b/R/Hybridization.R
@@ -20,7 +20,7 @@ hybridizeAMatrix <- function (model, domestic = FALSE){
   processes <- cbind(model$HybridizationSpecs$TechFileDF[,c("ProcessID","ProcessName")],
                      paste0(model$HybridizationSpecs$TechFileDF[,"ProcessID"],"/",
                             model$HybridizationSpecs$TechFileDF[,"Location"])
-  )
+                     )
   processes <- unique(processes)
   colnames(processes) <- c("ProcessID", "ProcessName", "ProcessID_Loc")
   
diff --git a/R/IOFunctions.R b/R/IOFunctions.R
index a0f3a544..b68a912a 100644
--- a/R/IOFunctions.R
+++ b/R/IOFunctions.R
@@ -199,8 +199,8 @@ generateDomesticUse <- function(Use, Import, model) {
   # needs to be subtracted from the original Import matrix
   if (model$specs$BasePriceType == "BAS") {
     # Find "MDTY - import duties" in Supply table
-    Supply <- get(paste(model$specs$BaseIOLevel, "Supply", model$specs$IOYear,
-                        sep = "_")) * 1E6
+    Supply <- get(paste(na.omit(c(model$specs$BaseIOLevel, "Supply", model$specs$IOYear, schema)),
+                        collapse = "_")) * 1E6
     ImportDuty <- Supply[rownames(Import), "MDTY"]
     # Subtract import duties from  Import matrix
     # Expanding it to a matrix based on the Import matrix, except for the import column
@@ -256,10 +256,11 @@ generateInternationalTradeAdjustmentVector <- function(Use, Import, model) {
 convertUsefromPURtoBAS <- function(UseSUT_PUR, specs, io_codes) {
   # Load UsePRO and UsePUR under Make-Use framework
   Redef <- ifelse(specs$BasewithRedefinitions, "AfterRedef", "BeforeRedef")
-  UsePUR <- get(paste(specs$BaseIOLevel, "Use", specs$IOYear, "PUR", Redef, sep = "_"))
-  UsePRO <- get(paste(specs$BaseIOLevel, "Use", specs$IOYear, "PRO", Redef, sep = "_"))
+  schema <- getSchemaCode(specs)
+  UsePUR <- get(paste(na.omit(c(specs$BaseIOLevel, "Use", specs$IOYear, "PUR", Redef, specs)), collapse = "_"))
+  UsePRO <- get(paste(na.omit(c(specs$BaseIOLevel, "Use", specs$IOYear, "PRO", Redef, specs)), collapse = "_"))
   # Load Supply table
-  Supply <- get(paste(specs$BaseIOLevel, "Supply", specs$IOYear, sep = "_"))
+  Supply <- get(paste(na.omit(c(specs$BaseIOLevel, "Supply", specs$IOYear, specs)), collapse = "_"))
   
   # Convert from PUR to PRO by removing margins obtained from Supply table
   rows <- io_codes$Commodities
@@ -304,9 +305,10 @@ convertUsefromPURtoBAS <- function(UseSUT_PUR, specs, io_codes) {
 #' @return A data.frame containing CommodityCode, basic price, tax less subsidies,
 #' and producer price of total product supply
 generateTaxLessSubsidiesTable <- function(model) {
+  schema <- getSchemaCode(model$specs)
   # Load Supply table
-  Supply <- get(paste(model$specs$BaseIOLevel, "Supply", model$specs$IOYear,
-                      sep = "_"))
+  Supply <- get(paste(na.omit(c(model$specs$BaseIOLevel, "Supply", model$specs$IOYear, schema)),
+                      collapse = "_"))
   # Get basic price and tax less subsidies vectors from Supply
   import_cols <- getVectorOfCodes(model$specs$BaseIOSchema,
                                   model$specs$BaseIOLevel,
diff --git a/R/InitializeModel.R b/R/InitializeModel.R
index 13be230e..e1bfce37 100644
--- a/R/InitializeModel.R
+++ b/R/InitializeModel.R
@@ -9,22 +9,29 @@ initializeModel <- function(modelname, configpaths = NULL) {
   model <- list()
   # Get model specs
   model$specs <- getConfiguration(modelname, "model", configpaths)
-  if (rlang::is_na(model$specs)) {
+  if (is.null(model$specs)) {
     stop(paste("No configuration exists for a model named", modelname))
   } else {
-    # Get model crosswalk
-    crosswalk <- get(paste0("MasterCrosswalk", model$specs$BaseIOSchema),
-                     as.environment("package:useeior"))
-    crosswalk <- unique(crosswalk[, c("NAICS_2012_Code",
-                                      colnames(crosswalk)[startsWith(colnames(crosswalk), "BEA")])])
-    colnames(crosswalk) <- gsub(paste0("_", model$specs$BaseIOSchema, "|_Code"),
-                                "", colnames(crosswalk))
-    rownames(crosswalk) <- NULL
-    # Assign initial model crosswalk based on base schema
-    modelschema <- "USEEIO"
-    baseschema <- paste0("BEA_", model$specs$BaseIOLevel)
-    crosswalk[modelschema] <- crosswalk[baseschema]
-    model$crosswalk <- crosswalk
+    model$crosswalk <- getModelCrosswalk(model)
   }
   return(model)
-}
\ No newline at end of file
+}
+
+#' Get model crosswalk based on BaseIOSchema and BaseIOLevel
+#' @param model EEIO model with specs assigned
+#' @return crosswalk as dataframe
+getModelCrosswalk <- function(model) {
+  # Get model crosswalk
+  crosswalk <- get(paste0("MasterCrosswalk", model$specs$BaseIOSchema),
+                   as.environment("package:useeior"))
+  crosswalk <- unique(crosswalk[, c(paste0("NAICS_", model$specs$BaseIOSchema, "_Code"),
+                                    colnames(crosswalk)[startsWith(colnames(crosswalk), "BEA")])])
+  colnames(crosswalk) <- gsub(paste0("_", model$specs$BaseIOSchema, "|_Code"),
+                              "", colnames(crosswalk))
+  rownames(crosswalk) <- NULL
+  # Assign initial model crosswalk based on base schema
+  modelschema <- "USEEIO"
+  baseschema <- paste0("BEA_", model$specs$BaseIOLevel)
+  crosswalk[modelschema] <- crosswalk[baseschema]
+  return(crosswalk)
+}
diff --git a/R/LCIAfmtFunctions.R b/R/LCIAfmtFunctions.R
index 2c4f8cbb..d7f66f91 100644
--- a/R/LCIAfmtFunctions.R
+++ b/R/LCIAfmtFunctions.R
@@ -49,6 +49,9 @@ getImpactMethod <- function(ind_spec) {
   # Subset the method by indicator
   if(!is.null(indicators)){
     imp_method <- imp_method[imp_method$Indicator %in% indicators, ]
+    if(nrow(imp_method)==0) {
+      logging::logwarn("Error selecting indicators from method")
+    }
   }
 
   return(imp_method)
@@ -75,7 +78,7 @@ getCombinedImpactMethods <- function(ind_spec) {
 }
 
 #' Prepares and reformats LCIAmethod data from LCIAformatter for use
-#' modeled after prepareFlowBySectorCollapsedforSatellite
+#' modeled after prepareFlowBySectorCollapsed
 #' @param lciamethod A full LCIAmethod data frame from LCIAformatter via getInventoryMethod or getImpactMethod.
 #' @return A LCIAmethod data frame formatted for indicators
 prepareLCIAmethodforIndicators <- function(lciamethod) {
diff --git a/R/LoadGOandCPI.R b/R/LoadGOandCPI.R
index 876a051f..1cd2320d 100644
--- a/R/LoadGOandCPI.R
+++ b/R/LoadGOandCPI.R
@@ -5,8 +5,10 @@
 #' @return A data.frame of US Gross Output.
 loadNationalGrossOutputTable <- function(specs) {
   logging::loginfo("Initializing Gross Output tables...")
+  schema <- getSchemaCode(specs)
   # Load pre-saved Gross Output tables
-  GrossOutput <- get(paste0(specs$BaseIOLevel, "_GrossOutput_IO")) * 1E6 # data frame, values are in dollars ($)
+  GrossOutput <- get(paste0(na.omit(c(specs$BaseIOLevel, "GrossOutput_IO", schema)),
+                            collapse = "_")) * 1E6 # data frame, values are in dollars ($)
   return(GrossOutput)
 }
 
@@ -15,6 +17,7 @@ loadNationalGrossOutputTable <- function(specs) {
 #' @return A data.frame of Chain Price Index.
 loadChainPriceIndexTable <- function(specs) {
   logging::loginfo("Initializing Chain Price Index tables...")
-  ChainPriceIndex <- get(paste0(specs$BaseIOLevel, "_CPI_IO"))
+  schema <- getSchemaCode(specs)
+  ChainPriceIndex <- get(paste0(na.omit(c(specs$BaseIOLevel, "CPI_IO", schema)), collapse = "_"))
   return(ChainPriceIndex)
 }
diff --git a/R/LoadIOTables.R b/R/LoadIOTables.R
index e7796d8c..a8c30a03 100644
--- a/R/LoadIOTables.R
+++ b/R/LoadIOTables.R
@@ -80,6 +80,19 @@ loadIOData <- function(model, configpaths = NULL) {
     model <- getHybridizationSpecs(model, configpaths)
     model <- getHybridizationFiles(model, configpaths)
   }
+  
+  # Check for WIO specs
+  if(model$specs$ModelType == "WIO"){
+    model <- getWIOSpecs(model, configpaths)
+    model <- getWIOFiles(model, configpaths)
+    model <- assembleWIOModel(model)
+  }
+  
+  # Check for mixed units
+  if(model$specs$ModelType == "MUIO"){
+    model <- getMUIOSectors(model, configpaths)
+    model <- convertSectorsToPhysical(model, configpaths)
+  }
     
   return(model)
 }
@@ -230,11 +243,12 @@ loadNationalIOData <- function(model, io_codes) {
 #' @return A list with BEA IO tables
 loadBEAtables <- function(specs, io_codes) {
   BEA <- list()
+  schema <- getSchemaCode(specs)
   if (specs$BasePriceType != "BAS") {
     # Load pre-saved Make and Use tables
     Redef <- ifelse(specs$BasewithRedefinitions, "AfterRedef", "BeforeRedef")
-    BEA$Make <- get(paste(specs$BaseIOLevel, "Make", specs$IOYear, Redef, sep = "_"))
-    BEA$Use <-  get(paste(specs$BaseIOLevel, "Use", specs$IOYear, specs$BasePriceType, Redef, sep = "_"))
+    BEA$Make <- get(paste(na.omit(c(specs$BaseIOLevel, "Make", specs$IOYear, Redef, schema)), collapse="_"))
+    BEA$Use <-  get(paste(na.omit(c(specs$BaseIOLevel, "Use", specs$IOYear, specs$BasePriceType, Redef, schema)), collapse="_"))
     # Separate Make table into specific IO tables (all values in $)
     BEA$MakeTransactions <- BEA$Make[io_codes$Industries, io_codes$Commodities] * 1E6
     # Separate Use table into specific IO tables (all values in $)
@@ -247,8 +261,8 @@ loadBEAtables <- function(specs, io_codes) {
                                  io_codes$Industries] * 1E6
   } else if (specs$BasePriceType == "BAS") {
     # Load pre-saved Supply and Use tables
-    BEA$Supply <- get(paste(specs$BaseIOLevel, "Supply", specs$IOYear, sep = "_"))
-    UseSUT_PUR <- get(paste(specs$BaseIOLevel, "Use_SUT", specs$IOYear, sep = "_"))
+    BEA$Supply <- get(paste(na.omit(c(specs$BaseIOLevel, "Supply", specs$IOYear, schema)), collapse = "_"))
+    UseSUT_PUR <- get(paste(na.omit(c(specs$BaseIOLevel, "Use_SUT", specs$IOYear, schema)), collapse = "_"))
     BEA$Use <- convertUsefromPURtoBAS(UseSUT_PUR, specs, io_codes)
     # Separate Supply table into specific IO tables (all values in $)
     # Transpose Supply table to conform the structure of Make table
@@ -298,13 +312,16 @@ loadBEAtables <- function(specs, io_codes) {
 #' @param io_codes A list of BEA IO codes.
 #' @return Import, df of use table imports.
 loadImportMatrix <- function(model, io_codes) {
+  schema <- getSchemaCode(model$specs)
   # Load Import matrix
   if (model$specs$BaseIOLevel != "Sector") {
-    Import <- get(paste(model$specs$BaseIOLevel, "Import",
-                        model$specs$IOYear, "BeforeRedef", sep = "_"))*1E6
+    Import <- get(paste(na.omit(c(model$specs$BaseIOLevel, "Import",
+                                  model$specs$IOYear, "BeforeRedef", schema)),
+                        collapse = "_"))*1E6
   } else {
     # Load Summary level Import matrix
-    Import <- get(paste("Summary_Import", model$specs$IOYear, "BeforeRedef", sep = "_"))*1E6
+    Import <- get(paste(na.omit(c("Summary_Import", model$specs$IOYear, "BeforeRedef", schema)),
+                        collapse = "_"))*1E6
     # Aggregate Import from Summary to Sector
     Import <- as.data.frame(aggregateMatrix(as.matrix(Import), "Summary", "Sector", model))
   }
diff --git a/R/LoadMargins.R b/R/LoadMargins.R
index a0fb4144..c76d7bf2 100644
--- a/R/LoadMargins.R
+++ b/R/LoadMargins.R
@@ -6,11 +6,11 @@
 getMarginsTable <- function (model) {
   # Define value_columns in Margins table
   value_columns <- c("ProducersValue", "Transportation", "Wholesale", "Retail")
+  schema <- getSchemaCode(model$specs)
   # Use BEA Margin Details table
-  if (model$specs$BaseIOSchema==2012) {
-    MarginsTable <- useeior::Detail_Margins_2012_BeforeRedef
-    MarginsTable[, value_columns] <- MarginsTable[, value_columns]*1E6
-  }
+  MarginsTable <- get(paste0(na.omit(c('Detail_Margins', model$specs$BaseIOSchema, 'BeforeRedef', schema)),
+                             collapse = "_"))
+  MarginsTable[, value_columns] <- MarginsTable[, value_columns]*1E6
   # Remove Export, Import and Change in Inventory records.
   # Exports do not reflect what a US consumer would pay for margins, hence the removal.
   # Imports have negative PRO price which impacts calculations. 
diff --git a/R/LoadSatellites.R b/R/LoadSatellites.R
index 77a2956e..3790243b 100644
--- a/R/LoadSatellites.R
+++ b/R/LoadSatellites.R
@@ -43,7 +43,10 @@ loadSatTables <- function(model) {
     } else {
       logging::loginfo(paste0("Loading ", sat_spec$FullName, " flows from ", sat_spec$FileLocation, "..."))
     }
-
+    if(sat_spec$SectorListSource == "NAICS" && sat_spec$SectorListYear != model$specs$BaseIOSchema) {
+      logging::logwarn(paste0("SectorListYear of ", sat_spec$FullName," does not match the BaseIOSchema ",
+                              "and may not map to sectors correctly."))
+    }
     ### Generate totals_by_sector, tbs
     tbs0 <- generateTbSfromSatSpec(sat_spec, model)
     
@@ -114,10 +117,20 @@ generateTbSfromSatSpec <- function(sat_spec, model) {
       }
     }
     totals_by_sector <- do.call(eval(totalsgenfunction), list(params))
-  } else {
+  } else if (sat_spec$FileLocation == "DataCommons") {
     f <- loadDataCommonsfile(sat_spec$StaticFile)
     totals_by_sector <- utils::read.table(f, sep = ",", header = TRUE, stringsAsFactors = FALSE,
                                           fileEncoding = 'UTF-8-BOM')
+  } else {
+    totals_by_sector <- utils::read.table(sat_spec$StaticFile, sep = ",",
+                                          header = TRUE, stringsAsFactors = FALSE,
+                                          fileEncoding = 'UTF-8-BOM')    
+  }
+  # Ensure context is not NA
+  for (i in c('Context')) {
+    if (all(is.na(totals_by_sector[, i]))) {
+      totals_by_sector[ , i] <- ""
+    }
   }
   return(totals_by_sector)
 }
@@ -151,7 +164,8 @@ conformTbStoIOSchema <- function(tbs, sat_spec, model) {
   # If not, map data from original sector to BEA.
   if (sat_spec$SectorListSource == "BEA") {
     # If BEA years is not the same as model year, must perform allocation
-    if (all(sat_spec$SectorListLevel == "Detail", sat_spec$SectorListYear == 2007, model$specs$BaseIOSchema == 2012)) {
+    if (all(sat_spec$SectorListLevel == "Detail", sat_spec$SectorListSource == "BEA",
+            sat_spec$SectorListYear == 2007, model$specs$BaseIOSchema == 2012)) {
       tbs <- mapFlowTotalsbySectorfromBEASchema2007to2012(tbs)
     }
     # If the original data is at Detail level but model is not, apply aggregation
diff --git a/R/MUIOFunctions.R b/R/MUIOFunctions.R
new file mode 100644
index 00000000..8f48c9b3
--- /dev/null
+++ b/R/MUIOFunctions.R
@@ -0,0 +1,149 @@
+#' Obtain specs that indicate which sectors need to 
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param configpaths str vector, paths (including file name) of configuration file(s).
+#' If NULL, built-in config files are used.
+#' @return A model with the specified MUIO specs.
+getMUIOSectors <- function (model, configpaths = NULL){
+  
+  MUIOSectors <- data.frame()
+  if (is.null(model$DisaggregationSpecs)) {
+    model$MUIOSpecs <- vector(mode='list')
+    for (configFile in model$specs$MUIOSpecs){
+      logging::loginfo(paste0("Loading MUIO specification file for ", configFile, "..."))
+      config <- getConfiguration(configFile, "muio", configpaths)
+      
+      if('MUIO' %in% names(config)){
+        model$MUIOSpecs <- append(model$MUIOSpecs, config$MUIO)
+      }
+    }
+    model <- disaggregateSetup(model, configpaths, "MUIO")
+    
+    for(muio in model$MUIOSpecs){
+      MUIOSectors <- rbind(MUIOSectors, subset(muio$NAICSSectorCW, muio$NAICSSectorCW$SectorType == "MUIO"))
+    }
+    
+  } else {
+    for(disagg in model$DisaggregationSpecs){
+      MUIOSectors <- rbind(MUIOSectors, subset(disagg$NAICSSectorCW, disagg$NAICSSectorCW$SectorType == "MUIO"))
+    }
+  }
+  
+  model$MUIOSectors <- MUIOSectors
+  return(model)
+}
+
+
+#' Reorder physical sectors such that they are in the top left of the Make and Use MUIO tables, as well as reorder all the relevant model objects.
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param physComIndeces Indeces that specify the location of the physical MUIO commodities in the commodity lists
+#' @param physIndIndeces Indeces that specify the location of the physical MUIO industries in the industry lists
+#' @param econComIndeces Indeces that specify the location of the economic MUIO commodities (i.e., the "Other" sectors, X in code) in the commodity lists
+#' @param econIndIndeces Indeces that specify the location of the economic MUIO industries (i.e., the "Other" sectors, X in code) in the industry lists
+#' @return A model with the specified MUIO sectors in physical units and rearranged sector orders (optional)
+reorderPhysicalSectors <- function (model, physComIndeces, physIndIndeces, econComIndeces, econIndIndeces){
+   # Reorder commodities
+  MUIOComOrder <- c(physComIndeces,econComIndeces) # Create an int vector with the physical MUIO commodity indeces followed by the economic MUIO indices
+  comOrder <- 1:dim(model$Commodities)[1]  # Create an ordered int vector from 1 to number of commodities
+  comOrder <- comOrder[-(MUIOComOrder)] # Remove ints corresponding to the MUIO commodity indeces from their proper order
+  comOrder <- c(MUIOComOrder, comOrder) # Add ints corresponding to the MUIO commodity indeces to the beginning of the list
+  
+  # Reorder industries
+  MUIOIndOrder <- c(physIndIndeces, econIndIndeces)
+  indOrder <- 1:dim(model$Industries)[1]
+  indOrder <- indOrder[-(MUIOIndOrder)]
+  indOrder <- c(MUIOIndOrder, indOrder)
+  
+  model <- reorderModelSectors(model, comOrder, indOrder)
+
+  
+  return(model)
+}
+
+#' Convert MUIO sectors to physical units
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param configpaths str vector, paths (including file name) of configuration file(s).
+#' If NULL, built-in config files are used.
+#' @return A model with the specified MUIO specs.
+convertSectorsToPhysical <- function (model, configpaths = NULL){
+  
+  logging::loginfo("Converting select sectors to physical units...")
+  # Get the sectors we want to convert to physical, as well as the "other" sector that will house the off-diagonal values from the original sector
+  physicalMUIOSectors <- subset(model$MUIOSectors, model$MUIOSectors$Unit != "USD")
+  economicMUIOSectors <- subset(model$MUIOSectors, model$MUIOSectors$Unit == "USD")
+  
+  # Resort to match model
+  physicalMUIOSectors <- physicalMUIOSectors[order(match(physicalMUIOSectors$USEEIO_Code, model$Commodities$Code_Loc)),]
+  
+  # Get indeces for physical industries and commodities in the Make and Use tables
+  physComIndeces <- which(model$Commodities$Code_Loc %in% physicalMUIOSectors$USEEIO_Code)
+  physIndIndeces <- which(model$Industries$Code_Loc %in% physicalMUIOSectors$USEEIO_Code)
+  econComIndeces <- which(model$Commodities$Code_Loc %in% economicMUIOSectors$USEEIO_Code)
+  econIndIndeces <- which(model$Industries$Code_Loc %in% economicMUIOSectors$USEEIO_Code)
+  
+  # Convert to physical units using the price
+  model$UseTransactions[physComIndeces, ] <- model$UseTransactions[physComIndeces, ]*(1/physicalMUIOSectors$Price)
+  model$FinalDemand[physComIndeces, ] <- model$FinalDemand[physComIndeces, ]*(1/physicalMUIOSectors$Price)
+  
+  model$DomesticUseTransactions[physComIndeces, ] <- model$DomesticUseTransactions[physComIndeces, ]*(1/physicalMUIOSectors$Price)
+  model$DomesticFinalDemand[physComIndeces, ] <- model$DomesticFinalDemand[physComIndeces, ]*(1/physicalMUIOSectors$Price)
+  
+  # Replace all values in make transactions with 0s except the intersections
+  model$MakeTransactions[physIndIndeces,] <- 0 
+  model$MakeTransactions[, physComIndeces] <- 0 
+  # Place the entire production of the physical sectors in the intersection of the make table
+  physSum <- rowSums(model$UseTransactions[physComIndeces,]) + rowSums(model$FinalDemand[physComIndeces,])
+  
+  # if replacing only one row, can't call diag function
+  if(length(physSum) == 1){
+    model$MakeTransactions[physIndIndeces, physComIndeces] <- physSum
+  } else{
+    model$MakeTransactions[physIndIndeces, physComIndeces] <- diag(physSum)
+  }
+  
+  # Calculate new industry and commodity totals 
+  # TODO: Replace this with a call to calculateWIOOutputs? Rename that function?
+  model$IndustryOutput <- rowSums(model$MakeTransactions)
+  model$CommodityOutput <- rowSums(model$UseTransactions) + rowSums(model$FinalDemand)
+  
+  # Replace Unit column in model$Industries and model$Commodities objects with appropriate unit
+  model$Commodities$Unit[physComIndeces] <- physicalMUIOSectors$Unit
+  model$Industries$Unit[physIndIndeces] <- physicalMUIOSectors$Unit
+  
+  # Adjust MultiYear Objects for MUIO
+  model <- adjustMultiYearObjectsForMUIO(model, physComIndeces, physIndIndeces, econComIndeces, econIndIndeces)
+  
+  # Move physical sectors to top-left quadrant of tables, followed by non-physical MUIO sectors
+  model <- reorderPhysicalSectors(model, physComIndeces, physIndIndeces, econComIndeces, econIndIndeces)
+  
+  return(model)
+  
+}
+
+#' Adjust MultiYearObjects in MUIO models such that they have the same dimensions as the other model objects
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param physComIndeces Indeces that specify the location of the physical MUIO commodities in the commodity lists
+#' @param physIndIndeces Indeces that specify the location of the physical MUIO industries in the industry lists
+#' @param econComIndeces Indeces that specify the location of the economic MUIO commodities (i.e., the "Other" sectors, X in code) in the commodity lists
+#' @param econIndIndeces Indeces that specify the location of the economic MUIO industries (i.e., the "Other" sectors, X in code) in the industry lists
+#' @return A model with the multiyear objects adjusted for the MUIO industries/commodities.
+adjustMultiYearObjectsForMUIO <- function(model, physComIndeces, physIndIndeces, econComIndeces, econIndIndeces){
+  
+  # Adjust MultiYearCommodity/Indistry Output values for MUIO
+  # Assumes constant physical totals and economic totals for MUIO sectors across years, similar to WIO
+  
+  model$MultiYearIndustryOutput[physIndIndeces,] <- rep(model$IndustryOutput[physIndIndeces], ncol(model$MultiYearIndustryOutput))
+  model$MultiYearIndustryOutput[econIndIndeces,] <- rep(model$IndustryOutput[econIndIndeces], ncol(model$MultiYearIndustryOutput))
+  
+  model$MultiYearCommodityOutput[physComIndeces,] <- rep(model$CommodityOutput[physComIndeces], ncol(model$MultiYearCommodityOutput))
+  model$MultiYearCommodityOutput[econComIndeces,] <- rep(model$CommodityOutput[econComIndeces], ncol(model$MultiYearCommodityOutput))
+  
+  #Adjust MultiYearCPI values for MUIO
+  #Assumes constant CPI for MUIO sectors across years, similar to WIO
+  model$MultiYearIndustryCPI[physIndIndeces,] <- rep(100, ncol(model$MultiYearIndustryCPI))
+  model$MultiYearIndustryCPI[econIndIndeces,] <- rep(100, ncol(model$MultiYearIndustryCPI))
+  
+  model$MultiYearCommodityCPI[physComIndeces,] <- rep(100, ncol(model$MultiYearCommodityCPI))
+  model$MultiYearCommodityCPI[econComIndeces,] <- rep(100, ncol(model$MultiYearCommodityCPI))
+
+  return(model)
+}
diff --git a/R/SatelliteFunctions.R b/R/SatelliteFunctions.R
index dcf5d524..23210a91 100644
--- a/R/SatelliteFunctions.R
+++ b/R/SatelliteFunctions.R
@@ -83,11 +83,11 @@ generateFlowtoDollarCoefficient <- function (sattable, outputyear, referenceyear
   rownames(Output_adj) <- gsub(paste0("/", location_acronym), "", rownames(Output_adj))    
   # Merge the satellite table with the adjusted industry output
   Sattable_USEEIO_wOutput <- merge(sattable, Output_adj, by.x = "Sector", by.y = 0, all.x = TRUE)
-  # Drop rows where output is zero
   outputcolname <- paste0(outputyear, output_type, "Output")
-  Sattable_USEEIO_wOutput <- Sattable_USEEIO_wOutput[Sattable_USEEIO_wOutput[, outputcolname] != 0, ]
   # Drop rows where output is NA
   Sattable_USEEIO_wOutput <- Sattable_USEEIO_wOutput[!is.na(Sattable_USEEIO_wOutput[, outputcolname]), ]
+  # Drop rows where output is zero
+  Sattable_USEEIO_wOutput <- Sattable_USEEIO_wOutput[Sattable_USEEIO_wOutput[, outputcolname] != 0, ]
   # Calculate FlowAmount by dividing the original FlowAmount by the adjusted industry output
   Sattable_USEEIO_wOutput$FlowAmount <- Sattable_USEEIO_wOutput$FlowAmount/Sattable_USEEIO_wOutput[, outputcolname]
   Sattable_USEEIO_wOutput[, outputcolname] <- NULL
@@ -358,5 +358,10 @@ removeMissingSectors <- function(tbs) {
   if(n > 0){
     logging::logdebug(paste0(n, "records dropped with no sector"))
   }
+  sectors <- unique(tbs[is.na(tbs$SectorName), ])
+  if(nrow(sectors)>0){
+    logging::logwarn(paste0("Lost sectors due to missing mapping: ",
+                            paste0(unique(sectors[['Sector']]), collapse=', ')))
+  }
   return(df)
 }
diff --git a/R/UtilityFunctions.R b/R/UtilityFunctions.R
index 218fba43..381422cd 100644
--- a/R/UtilityFunctions.R
+++ b/R/UtilityFunctions.R
@@ -463,3 +463,78 @@ getInputFilePath <- function(configpaths, folderPath="extdata", filename, packag
   filepath <- system.file(folderPath, filename, package = package)
   return(filepath)
 }
+
+#' Return the schema subscript for accessing useeior objects
+#' @param specs list of model specs must include BaseIOSchema
+#' @return schema, str in form "YYsch" or NULL for 2012
+getSchemaCode <- function(specs) {
+  if(specs$BaseIOSchema != 2012) {
+    schema <- paste0(substring(specs$BaseIOSchema, 3,4), "sch")
+  } else {
+    # despite the file name, the objects don't have the schema so it should not be used
+    schema <- NULL
+  }
+  return(schema)
+}
+
+#' Reorder sectors in the model objects according to the provided order.
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param comOrder A list containing the order of the commodities in the model
+#' @param indOrder A list containing the order of the industries in the model
+#' @return A model with the specified MUIO sectors in physical units and rearranged sector orders (optional)
+reorderModelSectors <- function (model, comOrder, indOrder){
+  
+  # Rearrange relevant model objects
+  model$UseTransactions <- model$UseTransactions[comOrder, indOrder]
+  model$DomesticUseTransactions <- model$DomesticUseTransactions[comOrder, indOrder]
+  model$FinalDemand <- model$FinalDemand[comOrder, ]
+  model$DomesticFinalDemand <- model$DomesticFinalDemand[comOrder, ]
+  model$UseValueAdded <- model$UseValueAdded[, indOrder]
+  model$MakeTransactions <- model$MakeTransactions[indOrder, comOrder]
+  model$Commodities <- model$Commodities[comOrder, ]
+  model$Industries <- model$Industries[indOrder, ]
+  model$InternationalTradeAdjustment <- model$InternationalTradeAdjustment[comOrder]
+  model$MultiYearCommodityOutput <- model$MultiYearCommodityOutput[comOrder,]
+  model$MultiYearIndustryOutput <- model$MultiYearIndustryOutput[indOrder,]
+  model$MultiYearCommodityCPI <- model$MultiYearCommodityCPI[comOrder,]
+  model$MultiYearIndustryCPI <- model$MultiYearIndustryCPI[indOrder,]
+  model$CommodityOutput <- model$CommodityOutput[comOrder]
+  model$IndustryOutput <- model$IndustryOutput[indOrder]
+  model$Margins <- model$Margins[comOrder,]
+  
+  # Replace only multi year outputs for the curret model year?
+  multiYearComOutputIndex <- which(colnames(model$MultiYearCommodityOutput) == model$specs$IOYear)
+  multiYearIndOutputIndex <- which(colnames(model$MultiYearIndustryOutput) == model$specs$IOYear)
+  model$MultiYearCommodityOutput[,multiYearComOutputIndex] <- model$CommodityOutput
+  model$MultiYearIndustryOutput[,multiYearIndOutputIndex] <- model$IndustryOutput
+  
+  return(model)
+}
+
+#' Remove sectors from the model objects according to the provided indexes
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param comIndexes A list containing the indexes of the commodities in the model
+#' @param indIndexes A list containing the indexes of the industries in the model
+#' @return A model with the specified MUIO sectors in physical units and rearranged sector orders (optional)
+removeModelSectors <- function (model, comIndexes, indIndexes){
+  
+  # Rearrange relevant model objects
+  model$UseTransactions <- model$UseTransactions[-(comIndexes), -(indIndexes)]
+  model$DomesticUseTransactions <- model$DomesticUseTransactions[-(comIndexes), -(indIndexes)]
+  model$FinalDemand <- model$FinalDemand[-(comIndexes), ]
+  model$DomesticFinalDemand <- model$DomesticFinalDemand[-(comIndexes), ]
+  model$UseValueAdded <- model$UseValueAdded[, -(indIndexes)]
+  model$MakeTransactions <- model$MakeTransactions[-(indIndexes), -(comIndexes)]
+  model$Commodities <- model$Commodities[-(comIndexes), ]
+  model$Industries <- model$Industries[-(indIndexes), ]
+  model$InternationalTradeAdjustment <- model$InternationalTradeAdjustment[-(comIndexes)]
+  model$MultiYearCommodityOutput <- model$MultiYearCommodityOutput[-(comIndexes),]
+  model$MultiYearIndustryOutput <- model$MultiYearIndustryOutput[-(indIndexes),]
+  model$MultiYearCommodityCPI <- model$MultiYearCommodityCPI[-(comIndexes),]
+  model$MultiYearIndustryCPI <- model$MultiYearIndustryCPI[-(indIndexes),]
+  model$CommodityOutput <- model$CommodityOutput[-(comIndexes)]
+  model$IndustryOutput <- model$IndustryOutput[-(indIndexes)]
+  model$Margins <- model$Margins[-(comIndexes),]
+
+  return(model)
+}
diff --git a/R/ValidateModel.R b/R/ValidateModel.R
index 96246f88..c67af092 100644
--- a/R/ValidateModel.R
+++ b/R/ValidateModel.R
@@ -143,10 +143,17 @@ compareCommodityOutputandDomesticUseplusProductionDemand <- function(model, tole
 #' @return A list with pass/fail validation result and the cell-by-cell relative diff matrix
 #' @export 
 compareCommodityOutputXMarketShareandIndustryOutputwithCPITransformation <- function(model, tolerance=0.05) {
-  commodityCPI_ratio <- model$MultiYearCommodityCPI[, "2017"]/model$MultiYearCommodityCPI[, "2012"]
+  if(model$specs$BaseIOSchema == 2012){
+    target_year <- "2017"
+  } else if(model$specs$BaseIOSchema == 2017){
+    target_year <- "2022"
+  }
+  commodityCPI_ratio <- (model$MultiYearCommodityCPI[, target_year]/
+                           model$MultiYearCommodityCPI[, as.character(model$specs$BaseIOSchema)])
   commodityCPI_ratio[is.na(commodityCPI_ratio)] <- 1
   
-  industryCPI_ratio <- model$MultiYearIndustryCPI[, "2017"]/model$MultiYearIndustryCPI[, "2012"]
+  industryCPI_ratio <- (model$MultiYearIndustryCPI[, target_year]/
+                          model$MultiYearIndustryCPI[, as.character(model$specs$BaseIOSchema)])
   industryCPI_ratio[is.na(industryCPI_ratio)] <- 1
   
   q <- removeHybridProcesses(model, model$q * commodityCPI_ratio)
diff --git a/R/WIOFunctions.R b/R/WIOFunctions.R
new file mode 100644
index 00000000..666ada8f
--- /dev/null
+++ b/R/WIOFunctions.R
@@ -0,0 +1,897 @@
+#' Obtain WIO specs from input files
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param configpaths str vector, paths (including file name) of configuration file(s).
+#' If NULL, built-in config files are used.
+#' @return A model with the specified WIO specs.
+getWIOSpecs <- function (model, configpaths = NULL){
+  
+  model$WIOSpecs <- vector(mode='list')
+  
+  for (configFile in model$specs$WIOSpecs){
+    logging::loginfo(paste0("Loading WIO specification file for ", configFile, "..."))
+    config <- getConfiguration(configFile, "WIO", configpaths)
+    
+    if('WIO' %in% names(config)){
+      name <- names(config$WIO)
+      config$WIO[[name]]$OriginalSectorCode <- name
+      model$WIOSpecs <- append(model$WIOSpecs, config$WIO)
+    }
+  }
+  
+  return(model)
+}
+
+#' Setup the WIO specs based on the input files. 
+#' This function is essentially a wrapper for disaggregateSetup() function, but included 
+#' for clarifying the different code flows between the two model types.
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param configpaths str vector, paths (including file name) of disagg configuration file(s).
+#' If NULL, built-in config files are used.
+#' @return A model object with the correct WIO specs.
+getWIOFiles <- function (model, configpaths = NULL){ 
+  model <- disaggregateSetup(model, configpaths, "WIO")
+  return(model)
+}
+
+#' Prepare make and use input files from FlowBySector file.
+#' @param fbs FlowBySector dataframe.
+#' @param spec WIO model spec
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @return model with list of two dataframes: UseTableDF and MakeTableDF
+prepareWIODFfromFBS <- function(fbs, spec, model) {
+  sectorlist <- spec$NAICSSectorCW$USEEIO_Code[spec$NAICSSectorCW$Type != "Flowable"]
+  year <- fbs$Year[[1]]
+
+  # Map Sectors and flows to new WIO codes
+  lookup <- spec$NAICSSectorCW[c("Type", "Tag", "USEEIO_Code")]
+  for (col in unique(lookup$Type)){
+    fbs[col] <- dplyr::recode(
+      fbs[[col]],
+      !!!setNames(subset(lookup, Type==col)$USEEIO_Code,
+                  subset(lookup, Type==col)$Tag))
+  }
+
+  ## full dplyr implementation runs into 'promise already under evaluation' error:
+  # fbs <- dplyr::mutate(
+  #   fbs,
+  #   dplyr::across(
+  #     dplyr::all_of(unique(lookup$Type)),
+  #     ~ dplyr::recode(.x,
+  #       !!!setNames(subset(lookup, Type==dplyr::cur_column())$USEEIO_Code,
+  #                   subset(lookup, Type==dplyr::cur_column())$Tag))))
+
+  # Consolidate master crosswalk on model level and rename
+  NAICStoBEA <- unique(model$crosswalk[, c("NAICS","USEEIO")])
+  colnames(NAICStoBEA) <- c("NAICS","BEA")
+  # Generate allocation_factor data frame containing allocation factors between NAICS and BEA sectors
+  allocation_factor <- getNAICStoBEAAllocation(year, model)
+  colnames(allocation_factor) <- c("NAICS", "BEA", "Location", "allocation_factor")
+  
+  for(col in c("SectorProducedBy", "SectorConsumedBy")) {
+    colnames(fbs)[colnames(fbs)==col] <- "NAICS"
+    # Merge fbs table with NAICStoBEA mapping
+    fbs <- merge(fbs, NAICStoBEA, by = "NAICS", all.x = TRUE)
+    # Merge the BEA-coded satellite table with allocation_factor dataframe
+    fbs <- merge(fbs, allocation_factor, by = c("NAICS", "BEA", "Location"), all.x = TRUE)
+    # Replace NA in allocation_factor with 1
+    fbs[is.na(fbs$allocation_factor), "allocation_factor"] <- 1
+    # Where no mapping exists (e.g. new waste sectors), maintain the original sector code
+    fbs$BEA <- ifelse(is.na(fbs$BEA), fbs$NAICS, fbs$BEA)
+    # Calculate FlowAmount for BEA-coded sectors using allocation factors
+    fbs$FlowAmount <- fbs$FlowAmount*fbs$allocation_factor
+    colnames(fbs)[colnames(fbs)=="BEA"] <- col
+    fbs[, c("NAICS", "allocation_factor")] <- list(NULL)
+        
+  }
+
+  # Update FBS column names
+  old_names <- c('FlowAmount', 'Unit', 'MetaSources')
+  new_names <- c('Amount', 'Unit', 'Note')
+  cols <- c("CommodityCode", "IndustryCode", new_names, "WIOSection")
+  code_cols <- c("IndustryCode", "CommodityCode")
+  fbs <- dplyr::rename_with(fbs, ~ new_names,
+                            all_of(old_names))
+  
+  # Separate out use data
+  use1 <- fbs[fbs$SectorConsumedBy %in% sectorlist, ]
+  use1$WIOSection <- 'Waste Generation by Mass'
+  use1 <- dplyr::rename_with(use1, ~c('CommodityCode', 'IndustryCode'),
+                             all_of(c('Flowable', 'SectorProducedBy')))
+  use1$SectorConsumedBy <- NULL
+  use2 <- fbs[(fbs$SectorProducedBy %in% sectorlist & !(fbs$SectorConsumedBy %in% sectorlist)), ]
+
+  # For the case where there are waste treatment sectors mapped to data in the fbs
+  if(dim(use2)[1] != 0 & is.null(spec$BEASectorsAsTreatmentSectors )){
+    use2$WIOSection <- 'Waste Treatment Commodities'  
+    use2 <- dplyr::rename_with(use2, ~c('CommodityCode', 'IndustryCode'),
+                               all_of(c('Flowable', 'SectorConsumedBy')))
+    use2$SectorProducedBy <- NULL
+ 
+    use <- rbind(use1, use2)
+    # Add loc to all sectors
+    use[code_cols] <- lapply(use[code_cols], function(x) paste0(x,"/",use$Location))
+    use <- use[,(names(use) %in% cols)]
+    use <- aggregate(Amount ~ IndustryCode + CommodityCode + Unit + Note + WIOSection,
+                     data = use, FUN = sum)
+    
+  } else {
+    # For the case where we dont want to add Waste Treatment Sectors from the FBS
+    # but rather from the BEA sectors/ there are no waste treatment sectors. 
+    use <- use1
+    # Add loc to all sectors
+    use[code_cols] <- lapply(use[code_cols], function(x) paste0(x,"/",use$Location))
+    use <- use[,(names(use) %in% cols)]
+    use <- aggregate(Amount ~ IndustryCode + CommodityCode + Unit + Note + WIOSection,
+                     data = use, FUN = sum)
+
+    # Get disaggregated sectors and format them as inputs for WIO as Treatment Commodities/Industries
+    use2 <- transformBEASectorToDFInput(model, spec, "UseRows")
+    use2 <- rbind(use2, transformBEASectorToDFInput(model, spec, "UseCols"))
+    use2 <- rbind(use2, transformBEASectorToDFInput(model, spec, "FD"))
+    use2 <- rbind(use2, transformBEASectorToDFInput(model, spec, "VA"))
+    
+    # find duplicate rows (without comparing columns 4 & 5, Notes & WIO section)
+    duplicateRows <- which(duplicated(use2[,-(4:5)]) == "TRUE")
+    use2 <- use2[-(duplicateRows),]
+    
+    use <- rbind(use, use2) # bind Waste Gen and Waste Treatment sections of the Use DF
+  }
+  
+  # Separate out make data
+  make <- fbs[fbs$SectorConsumedBy %in% sectorlist, ]  
+  make_agg <- dplyr::group_by(make, Flowable, SectorConsumedBy, Location, Unit) 
+  make_agg <- dplyr::summarize(
+    make_agg,
+    Amount = sum(Amount),
+    Note = dplyr::nth(Note, 1),
+    .groups = 'drop'
+  )
+  make_agg <- dplyr::rename_with(make_agg, ~c('CommodityCode', 'IndustryCode'),
+                                 all_of(c('Flowable', 'SectorConsumedBy')))
+  make_agg$WIOSection <- 'Waste Generation by Treatment'
+
+  make2 <- fbs[(fbs$SectorProducedBy %in% sectorlist & !(fbs$SectorConsumedBy %in% sectorlist)), ]
+  make_agg2 <- dplyr::group_by(make2, Flowable, SectorProducedBy, Location, Unit) 
+  make_agg2 <- dplyr::summarize(
+    make_agg2,
+    Amount = sum(Amount),
+    Note = dplyr::nth(Note, 1),
+    .groups = 'drop'
+  )
+  make_agg2 <- dplyr::rename_with(make_agg2, ~c('CommodityCode', 'IndustryCode'),
+                                 all_of(c('Flowable', 'SectorProducedBy')))
+  make_agg2$WIOSection <- 'Waste Treatment Commodities' 
+  
+
+  if (is.null(spec$BEASectorsAsTreatmentSectors)) {
+    make_agg <- rbind(make_agg, make_agg2)
+    make_agg[code_cols] <- lapply(make_agg[code_cols], function(x) paste0(x,"/",make_agg$Location))
+    make_agg <- make_agg[,cols]
+  }  else {
+    # For the case where we dont want to add Waste Treatment Sectors from the FBS but rather from the BEA sectors
+    make_agg[code_cols] <- lapply(make_agg[code_cols], function(x) paste0(x,"/",make_agg$Location))
+    make_agg <- make_agg[,cols]
+    
+    #Reorder make_agg to appropriate input DF order
+    make_agg <- make_agg[,c(2,1,3,4,5,6)]
+    
+    make_agg2 <- transformBEASectorToDFInput(model, spec, "MakeRows")
+    make_agg2 <- rbind(make_agg2, transformBEASectorToDFInput(model, spec, "MakeCols"))
+    
+    # find duplicate rows (without comparing columns 4 & 5, Notes & WIO section)
+    duplicateRows <- which(duplicated(make_agg2[,-(4:5)]) == "TRUE")
+    make_agg2 <- make_agg2[-(duplicateRows),]
+    
+    make_agg <- rbind(make_agg, make_agg2) # bind Waste Gen and Waste Treatment sections of the Use DF
+    
+    # Add specified sectors to WIOspecs
+    spec <- addSectorsToWIOCW(model, spec)
+    
+    # Remove specified sectors that we are using as WIO sectors from model
+    comIndexes <- which(model$Commodities$Code_Loc %in% spec$BEASectorsAsTreatmentSectors$WasteTreatmentCommodities)
+    indIndexes <- which(model$Industries$Code_Loc %in% spec$BEASectorsAsTreatmentSectors$WasteTreatmentIndustries)
+    model <- removeModelSectors(model, comIndexes, indIndexes)
+
+  }
+  
+  x <- list()
+  x$UseFileDF <- use
+  x$MakeFileDF <- data.frame(make_agg)
+
+  result <- list()
+  result$spec <- append(spec, x)
+  result$model <- model
+  return(result)
+}
+
+
+#' Initialize all the WIO model objects simultaneously. 
+#' @param model An EEIO model object with model sepcs and IO tables loaded
+#' @return A model object with the WIO lists initialized but empty 
+initializeWIOObjects <- function(model){
+  
+  model$WasteTreatmentIndustries <- data.frame()
+  model$WasteTreatmentCommodities <- data.frame()
+  model$WasteGenTreat <- data.frame()
+  model$WasteGenMass <- data.frame()
+  model$RecyclingTreat <- data.frame()
+  model$RecyclingMass <- data.frame()
+  
+  return(model)
+}
+
+
+#' Build a WIO-style model by including data read from wiospecs folder
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @return A model with the UseTransactions matrix modified with WIO specs.
+assembleWIOModel <- function (model){
+  
+  for(WIO in model$WIOSpecs){
+    
+    if(is.null(model$WasteTreatmentIndustries)){
+      model <- initializeWIOObjects(model) # Initialize all WIO objects
+    }
+    
+    # Create WIO sector lists
+    model <- subsetWIOSectors(model, WIO, "Waste Treatment Industries")
+    model <- subsetWIOSectors(model, WIO, "Waste Treatment Commodities")
+    model <- subsetWIOSectors(model, WIO, "Waste Generation by Treatment")
+    model <- subsetWIOSectors(model, WIO, "Waste Generation by Mass")
+    model <- subsetWIOSectors(model, WIO, "Recycling by Treatment")
+    model <- subsetWIOSectors(model, WIO, "Recycling by Mass")
+ 
+    # Add WIO elements to the useeior model objects
+    model <- includeWIOSectorDFs(model, WIO)
+    model <- includeFullUseWIO(model, WIO)
+    model <- includeMakeWIO(model, WIO)
+    model <- adjustITAwithWIOSectors(model, WIO)
+
+    # Check WIO balances
+    model <- calculateWIOOutputs(model, WIO)
+    checkWIOBalance(model, "Waste")
+    checkWIOBalance(model, "Recycling")
+    
+    # Adjust MultiYear objects with WIO sectors
+    model <- adjustMultiYearObjectsForWIO(model, WIO)
+    
+    # Adjust Margins object with WIO sectors
+    model <- adjustMarginswithWIOSectors(model, WIO)
+
+  }
+
+  # If there is more than 1 WIO spec, reorder the WIO sectors such that all Waste Treatment Industries/Commodities are placed 
+  # before all Waste Generation by Mass/Treatment sectors
+  if(length(model$WIOSpecs) > 1 ){
+    model <- reorderWIOSectors(model)
+  }
+
+  return(model)
+}
+
+
+#' Get subset of sectors corresponding to WasteTreatmentIndustries, WasteTreatmentCommodities,
+#' WasteGentTreatment, WasteGenMass, RecyclingTreatment, or RecyclingMass
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param WIO A list with WIO specifications and data
+#' @param WIOSection A string that indicates which section of the WIO model the sectors belong to
+#' @return A model with the model WIO model objects with the correct subset of sectors and format
+subsetWIOSectors <- function (model, WIO, WIOSection){
+  
+  # Get rows from WIO$NAICSSectorCW that only have the value "Waste Treatment Industries" under the category column
+  sectorsSubset <- subset(WIO$NAICSSectorCW, WIO$NAICSSectorCW$Category == WIOSection)
+  colsToRemove <- c("Sector Type", "NAICS_2012_Code", "Tag", "Type")
+  
+  sectorsSubset   <- sectorsSubset [, !colnames(sectorsSubset) %in% colsToRemove] # Remove unneeded columns
+  if(nrow(sectorsSubset) == 0){
+    return(model)
+  }
+
+  colnames(sectorsSubset) <- colnames(model$Commodities) # Rename columns to match model$commodities
+  sectorsSubset$Code_Loc <- paste0(sectorsSubset$Code,"/",sectorsSubset$Code_Loc)
+  
+   if(WIOSection == "Waste Treatment Industries"){
+    model$WasteTreatmentIndustries <- rbind(model$WasteTreatmentIndustries, sectorsSubset)
+    
+  }else if(WIOSection == "Waste Treatment Commodities"){
+    model$WasteTreatmentCommodities <- rbind(model$WasteTreatmentCommodities, sectorsSubset)
+    
+  }else if(WIOSection == "Waste Generation by Treatment"){
+    model$WasteGenTreat  <- rbind(model$WasteGenTreat, sectorsSubset)
+    
+  }else if(WIOSection == "Waste Generation by Mass"){
+    model$WasteGenMass <- rbind(model$WasteGenMass, sectorsSubset)
+
+  }else if(WIOSection == "Recycling by Treatment"){
+    model$RecyclingTreat <- rbind(model$RecyclingTreat, sectorsSubset) 
+
+  }else if(WIOSection == "Recycling by Mass"){
+    model$RecyclingnMass <- rbind(model$RecyclingnMass, sectorsSubset) 
+    
+  }else{
+    stop("Not a valid sector for a WIO model.")
+  }
+  
+  return(model)
+}
+
+#' Include the WIO elements in the model$Commodity and model$Industry objects
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param WIO A list with WIO specifications and data
+#' @return A model object which contain the model$Commodity and model$Industry objects with WIO sectors
+includeWIOSectorDFs <- function (model, WIO){
+  # Get list of all WIO commodities and industries in a structural sense (i.e., WIO rows and columns for Make/Use)
+  WIOUseRows <- do.call("rbind",list(model$WasteTreatmentCommodities, model$WasteGenMass, model$RecyclingnMass))
+  WIOUseColumns <- do.call("rbind", list(model$WasteTreatmentIndustries, model$WasteGenTreat, model$RecyclingTreat))
+  
+  # Add only the sectors that are present in the currenct WIO object to avoid adding the same sector
+  # more than once when dealing with multiple WIO sectors (e.g. concrete and food waste)
+  WIOUseRows <- WIOUseRows[which(WIOUseRows$Code %in% WIO$NAICSSectorCW$USEEIO_Code),]
+  WIOUseColumns <- WIOUseColumns[which(WIOUseColumns$Code %in% WIO$NAICSSectorCW$USEEIO_Code),]
+  
+  fullWIOComList <- rbind(model$Commodities, WIOUseRows) # Create commodity and industry lists of the full WIO Use table
+  rownames(fullWIOComList) <- 1:nrow(fullWIOComList)
+  
+  fullWIOIndList <- rbind(model$Industries, WIOUseColumns[,-(3:5)])
+  rownames(fullWIOIndList) <- 1:nrow(fullWIOIndList)
+  
+  model$Commodities <- fullWIOComList
+  model$Industries <- fullWIOIndList
+  
+  return(model)
+  
+}
+
+#' Include the WIO elements of the Use table in the correct configuration
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param WIO A list with WIO specifications and data
+#' @return A model with the UseTransactions matrix modified with WIO specs.
+includeFullUseWIO <- function (model, WIO){
+  # Find commodity an industry lengths for the expanded use table
+  WIOComLength <- dim(model$Commodities)[1]
+  WIOIndLength <- dim(model$Industries)[1] 
+  
+  # Create WIO tables and fill with correct values  
+  # For Use Transactions
+  # Create an empty dataframe of the appropriate dimensions
+  WIOUseTransactions <- data.frame(matrix(0, nrow = WIOComLength, ncol = WIOIndLength)) 
+  # Name the rows and columns of the dataframe with the appropriate commodity and industry names respectively
+  rownames(WIOUseTransactions) <- model$Commodities$Code_Loc
+  colnames(WIOUseTransactions) <- model$Industries$Code_Loc
+  # Populate the IO only portion with the model$UseTransactions values
+  WIOUseTransactions[1:dim(model$UseTransactions)[1], 1:dim(model$UseTransactions)[2]] <- model$UseTransactions
+  
+  # For DomesticUseTransactions
+  # Create an empty dataframe of the appropriate dimensions
+  WIODomesticUseTransactions <- data.frame(matrix(0, nrow = WIOComLength, ncol = WIOIndLength))
+  # Name the rows and columns of the dataframe with the appropriate commodity and industry names respectively
+  rownames(WIODomesticUseTransactions) <- model$Commodities$Code_Loc
+  colnames(WIODomesticUseTransactions) <- model$Industries$Code_Loc
+  # Populate the IO only portion with the model$UseTransactions values
+  WIODomesticUseTransactions[1:dim(model$DomesticUseTransactions)[1],
+                             1:dim(model$DomesticUseTransactions)[2]] <- model$DomesticUseTransactions
+  
+  # For FinalDemand
+  WIOFinalDemand <- data.frame(matrix(0, nrow = WIOComLength, ncol = dim(model$FinalDemand)[2]))
+  rownames(WIOFinalDemand) <- model$Commodities$Code_Loc
+  colnames(WIOFinalDemand) <- model$FinalDemandMeta$Code_Loc
+  WIOFinalDemand[1:dim(model$UseTransactions)[1],] <- model$FinalDemand
+  
+  # For DomesticFinalDemand
+  WIODomesticFinalDemand <- data.frame(matrix(0, nrow = WIOComLength, ncol = dim(model$DomesticFinalDemand)[2]))
+  rownames(WIODomesticFinalDemand) <- model$Commodities$Code_Loc
+  colnames(WIODomesticFinalDemand) <- model$FinalDemandMeta$Code_Loc
+  WIODomesticFinalDemand[1:dim(model$UseTransactions)[1],] <- model$DomesticFinalDemand
+  
+  # For UseValueAdded
+  WIOUseValueAdded <- data.frame(matrix(0, nrow = dim(model$UseValueAdded)[1], ncol = WIOIndLength))
+  rownames(WIOUseValueAdded) <- model$ValueAddedMeta$Code_Loc
+  colnames(WIOUseValueAdded) <- model$Industries$Code_Loc
+  WIOUseValueAdded[,1:dim(model$UseTransactions)[2]] <- model$UseValueAdded
+  
+  #Split WIO$UseFile into UseTransactions, FinalDemand, and UseValueAdded segments
+  useTransactionsDF <-  subset(WIO$UseFileDF, (WIO$UseFileDF$CommodityCode %in% model$Commodities$Code_Loc) 
+                               & (WIO$UseFileDF$IndustryCode %in% model$Industries$Code_Loc))
+  finalDemandDF <- subset(WIO$UseFileDF, (WIO$UseFileDF$CommodityCode %in% model$Commodities$Code_Loc) & 
+                            (WIO$UseFileDF$IndustryCode %in% model$FinalDemandMeta$Code_Loc))
+  VADF <- subset(WIO$UseFileDF, (WIO$UseFileDF$CommodityCode %in% model$ValueAddedMeta$Code_Loc) & 
+                   (WIO$UseFileDF$IndustryCode %in% model$Industries$Code_Loc))
+  
+  # Assign WIO specific values in the correct location of the WIOfullUse
+  # For UseTransactions and DomesticUseTransactions
+  for(r in 1:nrow(useTransactionsDF)){
+    comIndex <- which(model$Commodities$Code_Loc %in% useTransactionsDF[r,]$CommodityCode)
+    indIndex <- which(model$Industries$Code_Loc %in% useTransactionsDF[r,]$IndustryCode)
+
+    if(length(comIndex)!=0 & length(indIndex) !=0){
+      WIOUseTransactions[comIndex, indIndex] <- useTransactionsDF[r,]$Amount
+      WIODomesticUseTransactions[comIndex, indIndex] <- useTransactionsDF[r,]$Amount
+    }
+  }
+  
+  model$UseTransactions <- WIOUseTransactions
+  model$DomesticUseTransactions <- WIODomesticUseTransactions
+
+  # For FinalDemand and DomesticFinalDemand
+  for(r in 1:nrow(finalDemandDF)){
+    comIndex <- which(model$Commodities$Code_Loc %in% finalDemandDF[r,]$CommodityCode)
+    indIndex <- which(model$FinalDemandMeta$Code_Loc %in% finalDemandDF[r,]$IndustryCode)
+    
+    if(length(comIndex)!=0 & length(indIndex) !=0){
+      WIOFinalDemand[comIndex, indIndex] <- finalDemandDF[r,]$Amount
+      WIODomesticFinalDemand[comIndex, indIndex] <- finalDemandDF[r,]$Amount
+    }
+  }
+  
+  model$FinalDemand <- WIOFinalDemand
+  model$DomesticFinalDemand <- WIODomesticFinalDemand
+
+  # For UseValueAdded
+  for(r in 1:nrow(VADF)){
+    comIndex <- which(model$ValueAddedMeta$Code_Loc %in% VADF[r,]$CommodityCode)
+    indIndex <- which(model$Industries$Code_Loc %in% VADF[r,]$IndustryCode)
+    
+    if(length(comIndex)!=0 & length(indIndex) !=0){
+      WIOUseValueAdded[comIndex, indIndex] <- VADF[r,]$Amount
+    }
+  }
+  
+  model$UseValueAdded <- WIOUseValueAdded
+  return(model)
+}
+
+#' Include the WIO elements of the Make table in the correct configuration
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param WIO A list with WIO specifications and data
+#' @return A model with the MakeTransactions matrix modified with WIO specs.
+includeMakeWIO <- function (model, WIO){
+  
+  #Create WIO matrices with the correct dimensions to append to use table
+  WIOComLength <- dim(model$Commodities)[1]
+  WIOIndLength <- dim(model$Industries)[1] 
+  
+  # For MakeTransactions
+  # Create WIO Make table and fill with correct values
+  # Create an empty dataframe of the appropriate dimensions
+  WIOMakeTransactions <- data.frame(matrix(0, nrow = WIOIndLength, ncol = WIOComLength))
+  # Name the rows and columns of the dataframe with the appropriate commodity and industry names respectively
+  rownames(WIOMakeTransactions) <- model$Industries$Code_Loc
+  colnames(WIOMakeTransactions) <- model$Commodities$Code_Loc
+  
+  # Populate the IO only portion with the model$MakeTransactions values
+  WIOMakeTransactions[1:dim(model$MakeTransactions)[1], 1:dim(model$MakeTransactions)[2]] <- model$MakeTransactions
+  
+  # Assign WIO specific values in the correct location of the full WIOUseTransactions
+  for(r in 1:nrow(WIO$MakeFileDF)){
+    comIndex <- which(model$Commodities$Code_Loc %in% WIO$MakeFileDF[r,]$CommodityCode)
+    indIndex <- which(model$Industries$Code_Loc %in% WIO$MakeFileDF[r,]$IndustryCode)
+    
+    if(length(comIndex)!=0 & length(indIndex) !=0){
+      WIOMakeTransactions[indIndex, comIndex] <- WIO$MakeFileDF[r,]$Amount
+    }
+  }
+  
+  model$MakeTransactions <- WIOMakeTransactions
+  
+  return(model)
+}
+
+
+#' Calculate the total industry and commodity outputs for the expanded WIO tables
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param WIO A list with WIO specifications and data
+#' @return A model object which contain the model$Commodity or model$Industry objects with WIO sectors
+calculateWIOOutputs<- function (model, WIO){
+  # The outputs need to be calculated using the row sums for each table to avoid mixing units
+  model$IndustryOutput <- rowSums(model$MakeTransactions)
+  model$CommodityOutput <- rowSums(model$UseTransactions)+rowSums(model$FinalDemand)
+  
+  return(model)
+}
+
+#' Adjust InternationalTradeAdjustment to the correct dimensions based on WIO sectors
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param WIO A list with WIO specifications and data
+#' @return A model object with a modified international trade adjustment object based on WIO sectors
+adjustITAwithWIOSectors <- function (model, WIO){
+  # Get list of all WIO commodities and industries in a structural sense (i.e., WIO rows and columns for Make/Use)
+  WIOUseRows <- do.call("rbind",list(model$WasteTreatmentCommodities, model$WasteGenMass, model$RecyclingnMass))
+  
+  # Add only the sectors that are present in the currenct WIO object to avoid adding the same sector
+  # more than once when dealing with multiple WIO sectors (e.g. concrete and food waste)
+  WIOUseRows <- WIOUseRows[which(WIOUseRows$Code %in% WIO$NAICSSectorCW$USEEIO_Code),]
+  
+  WIOITA <- double(dim(WIOUseRows)[1])
+  names(WIOITA) <- WIOUseRows$Code_Loc
+  model$InternationalTradeAdjustment <- append(model$InternationalTradeAdjustment, WIOITA)
+
+  return(model)
+}
+
+
+#' Adjust Margins to the correct dimensions based on WIO sectors
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param WIO A list with WIO specifications and data
+#' @return A model object with a modified Margins object based on WIO sectors
+adjustMarginswithWIOSectors <- function (model, WIO){
+  # Get list of all WIO commodities and industries in a structural sense (i.e., WIO rows and columns for Make/Use)
+  WIOUseRows <- do.call("rbind",list(model$WasteTreatmentCommodities, model$WasteGenMass, model$RecyclingnMass))
+  
+  # Add only the sectors that are present in the currenct WIO object to avoid adding the same sector
+  # more than once when dealing with multiple WIO sectors (e.g. concrete and food waste)
+  WIOUseRows <- WIOUseRows[which(WIOUseRows$Code %in% WIO$NAICSSectorCW$USEEIO_Code),]
+  
+  # Create DF to house margin values for WIO sectors
+  WIOMargins <- data.frame(matrix(nrow = dim(WIOUseRows)[1], 
+                                  ncol = ncol(model$Margins)))
+  colnames(WIOMargins) <- colnames(model$Margins)
+  
+  # Populate WIOMargins DF with the relevant data from WIOUseRows
+  # For Producers value, assume total commodity output 
+  # For Transportation, Wholese, and Retail, assume 0
+  # For Purchasers value, assume total commodity output. 
+  # This assumptions are due to a lack of relevant data in the WIOspecs (i.e. WIO input files)
+  WIOMargins$SectorCode <- WIOUseRows$Code
+  WIOMargins$ProducersValue <- model$CommodityOutput[names(model$CommodityOutput) %in% WIOUseRows$Code_Loc]
+  WIOMargins$Transportation <- rep(0,dim(WIOUseRows)[1])
+  WIOMargins$Wholesale <- rep(0,dim(WIOUseRows)[1])
+  WIOMargins$Retail <- rep(0,dim(WIOUseRows)[1])
+  WIOMargins$Name <- WIOUseRows$Name
+  WIOMargins$Code_Loc <- WIOUseRows$Code_Loc
+  WIOMargins$PurchasersValue <- rowSums(WIOMargins[, c("ProducersValue", "Transportation", "Wholesale", "Retail")])
+  
+  # Append to model$Margins
+  model$Margins <- rbind(model$Margins, WIOMargins)
+  rownames(model$Margins) <- 1:nrow(model$Margins) # relable rows
+  
+  return(model)
+}
+
+
+#' Check balance of WIO waste and recycling sectors
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param sectorType A string that indicates to compare the balance of waste or recycling generation and treatment sectors.
+#' @return A model with the UseTransactions matrix modified with WIO specs.
+checkWIOBalance <- function (model, sectorType = "Waste"){
+  # Get all waste generation and recycling by mass and treatment from use table
+  if(sectorType == "Waste"){
+    useGen <- model$UseTransactions[which(rownames(model$UseTransactions) %in% model$WasteGenMass$Code_Loc),]
+    FDGen <-  model$FinalDemand[which(rownames(model$FinalDemand) %in% model$WasteGenMass$Code_Loc),]
+    makeTreatment <- model$MakeTransactions[which(rownames(model$MakeTransactions) %in% model$WasteGenTreat$Code_Loc),]
+  }else{
+    useGen <- model$UseTransactions[which(rownames(model$UseTransactions) %in% model$RecyclingMass$Code_Loc),]
+    makeTreatment <- model$MakeTransactions[which(rownames(model$MakeTransactions) %in% model$RecyclingTreat$Code_Loc),]
+  }
+
+  if(dim(useGen)[1] != 0 & dim(makeTreatment)[1] != 0){
+    genSum <- sum(useGen) + sum(FDGen)
+    treatSum <- sum(makeTreatment)
+    
+    # if the ratio of the sum of generation over the sum of treatment is greater than 1%
+    # then the generation and treatment is not balanced and we need to stop execution
+    if(abs(1 - genSum/treatSum) > 0.01){
+      stop(paste0(sectorType, " not balanced"))
+    }else{
+      logging::loginfo(paste0(sectorType, " adequately balanced within 1%."))
+    }
+  } else if(dim(useGen)[1] != 0 | dim(makeTreatment)[1] != 0) {
+    # for the case where some, but not all, WIO sectors are properly defined
+    stop(paste0(sectorType, " sector(s) missing from table."))
+  }
+}
+
+#' Take an existing USEEIO sector and transform it into a dataframe formatted as a WIO-style input file
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param spec A model object contain the WIO specifications
+#' @param vectorToTransform A string indicating which table and vector to use, e.g., UseRows, MakeCols, etc.
+#' @return A model with the UseTransactions matrix modified with WIO specs.
+transformBEASectorToDFInput <- function (model, spec, vectorToTransform){
+  # Get industry and commodity indeces of BEA sectors to transform into WIO-style input DF
+  indIndeces <- which(model$Industries$Code_Loc %in% spec$BEASectorsAsTreatmentSectors$WasteTreatmentIndustries)
+  comIndeces <- which(model$Commodities$Code_Loc %in% spec$BEASectorsAsTreatmentSectors$WasteTreatmentCommodities)
+  
+  # TODO: Simplify if-else by taking common elements outside.
+  if(vectorToTransform == "UseRows" | vectorToTransform == "FD"){
+
+    # Create a Use Dataframe from the relevant sectors
+    if(vectorToTransform == "UseRows"){
+      useRows <- as.data.frame(t(model$UseTransactions[comIndeces, , drop = FALSE])) # Get relevant use rows
+      note <- "UseRows"
+    }else{
+      useRows <- as.data.frame(t(model$FinalDemand[comIndeces, , drop = FALSE])) # Get relevant use rows
+      note <- "FD"
+    }
+    
+    # Create dataframe with a number of rows equal to the number of total commodities in the model,
+    # and the values equal to the column names of the relevant commodities
+    commoditiesAsDFCols <- as.data.frame(t(replicate(dim(useRows)[1], colnames(useRows))))
+
+    # cbind useRows and commoditiesAsDFCols DFs in an alternating manner
+    outputDF <- do.call("data.frame", lapply(1:ncol(useRows), function(j) cbind(ts(commoditiesAsDFCols[,j]), ts(useRows[,j]))))
+    # name every 2 columns as "CommodityCode" and "Amount"
+    names(outputDF) <- make.names(rep(c("CommodityCode","Amount"), dim(useRows)[2]), unique = FALSE)
+    # "append" every 2 columns starting from column 3 to the bottom of columns 1 and 2
+    outputDF <- data.frame(CommodityCode=unlist(outputDF[c(TRUE, FALSE)]), Amount=unlist(outputDF[c(FALSE, TRUE)]))
+    outputDF$Amount <- as.numeric(as.character(outputDF$Amount))
+
+    # create a column dataframe containing the industry codes relevant to the use rows for the selected commodities
+    industriesAsDFCols <- data.frame(rep(rownames(useRows), dim(useRows)[2]))
+    colnames(industriesAsDFCols) <- c("IndustryCode")
+    outputDF <- cbind(industriesAsDFCols, outputDF)
+
+    rownames(outputDF) <- 1:nrow(outputDF)
+
+    WIOSection <- "Waste Treatment Commodities"
+    
+  }else if(vectorToTransform == "UseCols" | vectorToTransform == "VA"){
+
+    # Create a Use Dataframe from the relevant sectors
+    if(vectorToTransform == "UseCols"){
+      useCols <- as.data.frame(model$UseTransactions[, indIndeces]) # Get relevant use rows 
+      note <- "UseCols"
+    } else{
+      useCols <- as.data.frame(model$UseValueAdded[, indIndeces]) # Get relevant use rows
+      note <- "VA"
+    }
+
+    # Create dataframe with a number of rows equal to the number of total commodities in the model,
+    # and the values equal to the column names of the relevant commodities
+    industriesAsDFCols <- as.data.frame(t(replicate(dim(useCols)[1], colnames(useCols))))
+
+    # cbind useCols and industriesAsDFCols DFs in an alternating manner
+    outputDF <- do.call("data.frame", lapply(1:ncol(useCols), function(j) cbind(ts(industriesAsDFCols[,j]), ts(useCols[,j]))))
+    # name every 2 columns as "CommodityCode" and "Amount"
+    names(outputDF) <- make.names(rep(c("IndustryCode","Amount"), dim(useCols)[2]), unique = FALSE)
+    # "append" every 2 columns starting from column 3 to the bottom of columns 1 and 2
+    outputDF <- data.frame(IndustryCode=unlist(outputDF[c(TRUE, FALSE)]), Amount=unlist(outputDF[c(FALSE, TRUE)]))
+    outputDF$Amount <- as.numeric(as.character(outputDF$Amount)) #transform amount back into a numeric column
+
+    # create a column dataframe containing the industry codes relevant to the use rows for the selected commodities
+    commoditiesAsDFCols <- data.frame(rep(rownames(useCols), dim(useCols)[2]))
+    colnames(commoditiesAsDFCols) <- c("CommodityCode")
+    outputDF <- cbind(outputDF$IndustryCode,commoditiesAsDFCols, outputDF$Amount)
+
+    colnames(outputDF) <- c("IndustryCode","CommodityCode","Amount")
+    rownames(outputDF) <- 1:nrow(outputDF)
+    
+    WIOSection <- "Waste Treatment Industries"
+    
+  }else if(vectorToTransform == "MakeRows"){
+    # Create a  Dataframe from the relevant sectors
+    makeRows <- as.data.frame(t(model$MakeTransactions[indIndeces, , drop = FALSE])) # Get relevant use rows
+    # Create dataframe with a number of rows equal to the number of total commodities in the model,
+    # and the values equal to the column names of the relevant commodities
+    industriesAsDFCols <- as.data.frame(t(replicate(dim(makeRows)[1], colnames(makeRows))))
+
+    # cbind makeRows and industriesAsDFCols DFs in an alternating manner
+    outputDF <- do.call("data.frame", lapply(1:ncol(makeRows), function(j) cbind(ts(industriesAsDFCols[,j]), ts(makeRows[,j]))))
+    # name every 2 columns as "CommodityCode" and "Amount"
+    names(outputDF) <- make.names(rep(c("Industry","Amount"), dim(makeRows)[2]), unique = FALSE)
+    # "append" every 2 columns starting from column 3 to the bottom of columns 1 and 2
+    outputDF <- data.frame(IndustryCode=unlist(outputDF[c(TRUE, FALSE)]), Amount=unlist(outputDF[c(FALSE, TRUE)]))
+    outputDF$Amount <- as.numeric(as.character(outputDF$Amount))
+    
+    # create a column dataframe containing the industry codes relevant to the use rows for the selected commodities
+    commoditiesAsDFCols <- data.frame(rep(rownames(makeRows), dim(makeRows)[2]))
+    colnames(commoditiesAsDFCols) <- c("CommodityCode")
+    outputDF <- cbind(outputDF$IndustryCode, commoditiesAsDFCols, outputDF$Amount)
+    
+    colnames(outputDF) <- c("IndustryCode","CommodityCode","Amount")
+    
+    rownames(outputDF) <- 1:nrow(outputDF)
+    
+    note <- "MakeRows"
+    WIOSection <- "Waste Treatment Industries"
+    
+  }else if(vectorToTransform == "MakeCols"){
+    # Create a  Dataframe from the relevant sectors
+    makeCols <- as.data.frame(model$MakeTransactions[,comIndeces , drop = FALSE]) # Get relevant use rows
+    # Create dataframe with a number of rows equal to the number of total commodities in the model,
+    # and the values equal to the column names of the relevant commodities
+    commoditiesAsDFCols <- as.data.frame(t(replicate(dim(makeCols)[1], colnames(makeCols))))
+
+    # cbind makeCols and commoditiesAsDFCols DFs in an alternating manner
+    outputDF <- do.call("data.frame", lapply(1:ncol(makeCols), function(j) cbind(ts(commoditiesAsDFCols[,j]), ts(makeCols[,j]))))
+    # name every 2 columns as "CommodityCode" and "Amount"
+    names(outputDF) <- make.names(rep(c("Commodity","Amount"), dim(makeCols)[2]), unique = FALSE)
+    # "append" every 2 columns starting from column 3 to the bottom of columns 1 and 2
+    outputDF <- data.frame(CommodityCode=unlist(outputDF[c(TRUE, FALSE)]), Amount=unlist(outputDF[c(FALSE, TRUE)]))
+    outputDF$Amount <- as.numeric(as.character(outputDF$Amount))
+
+    # create a column dataframe containing the industry codes relevant to the use rows for the selected commodities
+    industriesAsDFCols <- data.frame(rep(rownames(makeCols), dim(makeCols)[2]))
+    colnames(industriesAsDFCols) <- c("IndustryCode")
+    outputDF <- cbind(industriesAsDFCols, outputDF)
+    
+    rownames(outputDF) <- 1:nrow(outputDF)
+    note <- "MakeCols"
+    WIOSection <- "Waste Treatment Commodities"
+  }
+ 
+  # Remove rows with 0s under amount column
+  outputDF <- outputDF[outputDF$Amount !=0,] 
+  
+  # Add columns expected by rest of prepareWIODFfromFBS function
+  additionalDFCols <- data.frame(lapply(c("USD",note, WIOSection),rep,dim(outputDF)[1]))
+  colnames(additionalDFCols) <- c("Unit", "Note", "WIOSection")
+  
+  outputDF <- cbind(outputDF[,1:2],additionalDFCols,outputDF[3])
+  
+
+  return(outputDF)
+}
+
+#' Add sectors specified by BEASectorsAsTreatmentSectors to the spec object 
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param spec A dataframe with WIO specifications
+#' @return spec A dataframe with the specified sectors added to the spec$NAICSSetorCW object 
+addSectorsToWIOCW <- function (model, spec){
+  
+  #' Remove sectors labeled by "Waste Treatment Commodities" and "Waste Treatment Industries", 
+  #' which are NOT specified by BEASectorsAsTreatmentSectors, from the spec object  
+  spec <- removeSectorsFromWIOCW(model, spec)
+
+  # Get industry and commodity indeces of BEA sectors to transform into WIO-style input DF
+  indIndeces <- which(model$Industries$Code_Loc %in% spec$BEASectorsAsTreatmentSectors$WasteTreatmentIndustries)
+  comIndeces <- which(model$Commodities$Code_Loc %in% spec$BEASectorsAsTreatmentSectors$WasteTreatmentCommodities)
+  
+  WIONAICSSectorCW <- data.frame(matrix(nrow = sum(length(spec$BEASectorsAsTreatmentSectors$WasteTreatmentCommodities), 
+                                                   length(spec$BEASectorsAsTreatmentSectors$WasteTreatmentIndustries)), 
+                                        ncol = ncol(spec$NAICSSectorCW)))
+  colnames(WIONAICSSectorCW) <- colnames(spec$NAICSSectorCW)
+  WIONAICSSectorCW[,1] <- "WIO"
+  WIONAICSSectorCW$Tag <- "USEEIO sectors as WIO Treatment sectors"
+  WIONAICSSectorCW$Type <- "N/A"
+  WIONAICSSectorCW$NAICS_2012_Code <- "N/A"
+  WIONAICSSectorCW$Subcategory <- "N/A"
+  WIONAICSSectorCW$Description <- "N/A"
+
+  # replace some columns with columns from model$Commodities, som with the procedure below
+  
+  WTCommodities <- strsplit(spec$BEASectorsAsTreatmentSectors$WasteTreatmentCommodities,"/")
+  WTCommodities <- data.frame(matrix(unlist(WTCommodities), nrow = length(WTCommodities), byrow = TRUE))
+  colnames(WTCommodities) <- c("USEEIO_Code", "Location")
+  WTCommodities$Category <- "Waste Treatment Commodities"
+  
+  WTIndustries <- strsplit(spec$BEASectorsAsTreatmentSectors$WasteTreatmentIndustries,"/")
+  WTIndustries <- data.frame(matrix(unlist(WTIndustries), nrow = length(WTIndustries), byrow = TRUE))
+  colnames(WTIndustries) <- c("USEEIO_Code", "Location")
+  WTIndustries$Category <- "Waste Treatment Industries"
+  
+  WTISectors <- rbind(WTCommodities, WTIndustries)
+  
+  WIONAICSSectorCW$Category <- WTISectors$Category
+  WIONAICSSectorCW$USEEIO_Code <- WTISectors$USEEIO_Code
+  WIONAICSSectorCW$Location <- WTISectors$Location
+
+  WIONAICSSectorCW$USEEIO_Name <- t(cbind(t(model$Commodities$Name[comIndeces]), t(model$Industries$Name[indIndeces])))
+  WIONAICSSectorCW$Unit <- t(cbind(t(model$Commodities$Unit[comIndeces]), t(model$Industries$Unit[indIndeces])))
+  colnames(WIONAICSSectorCW) <- colnames(spec$NAICSSectorCW) # Needed because the above 2 assignments change the column names
+  
+  # Add specified sectors to the relevant lists within spec
+  spec$NAICSSectorCW <- rbind(spec$NAICSSectorCW, WIONAICSSectorCW)
+  
+  spec$NewSectorNames <- append(spec$NewSectorNames, WIONAICSSectorCW$USEEIO_Name)
+  spec$NewSectorCodes <- append(spec$NewSectorCodes, WIONAICSSectorCW$USEEIO_Code)
+  spec$Category <- append(spec$Category, WIONAICSSectorCW$Category)
+  spec$Subcategory <- append(spec$Subcategory, WIONAICSSectorCW$Subcategory)
+  spec$Description <- append(spec$Description, WIONAICSSectorCW$Description)
+  
+  return(spec)
+}
+
+#' Remove sectors labeled by "Waste Treatment Commodities" and "Waste Treatment Industries", 
+#' which are NOT specified by BEASectorsAsTreatmentSectors, from the spec object 
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param spec A dataframe with WIO specifications
+#' @return spec A dataframe with the specified sectors added to the spec$NAICSSetorCW object 
+removeSectorsFromWIOCW <- function (model, spec){
+  
+  # Remove existing rows labeled as "Waste Treatment Commodities" and "Waste Treatment Industries" within spec$NAICSSectorCW
+  # These will be replaced by the disaggregated sectors
+  indexesToRemove <- which(spec$NAICSSectorCW$Category == "Waste Treatment Commodities")
+  indexesToRemove <- append(indexesToRemove, which(spec$NAICSSectorCW$Category == "Waste Treatment Industries"))
+  
+  if(length(indexesToRemove) !=0 ){
+    spec$NAICSSectorCW <- spec$NAICSSectorCW[-indexesToRemove,]
+    spec$NewSectorNames[indexesToRemove] <- NULL
+    spec$NewSectorCodes[indexesToRemove] <- NULL
+    spec$Category[indexesToRemove] <- NULL
+    spec$Subcategory[indexesToRemove] <- NULL
+    spec$Description[indexesToRemove] <- NULL
+  }
+  
+  return(spec)
+}
+
+
+#' Adjust MultiYearObjects in WIO models such that they have the same dimensions as the other model objects
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @param WIO A dataframe with WIO specifications
+#' @return spec A dataframe with the specified sectors added to the spec$NAICSSetorCW object 
+adjustMultiYearObjectsForWIO <- function(model, WIO){
+  
+  # Get list of all WIO commodities and industries in a structural sense (i.e., WIO rows and columns for Make/Use)
+  WIOUseRows <- do.call("rbind",list(model$WasteTreatmentCommodities, model$WasteGenMass, model$RecyclingnMass))
+  WIOUseColumns <- do.call("rbind", list(model$WasteTreatmentIndustries, model$WasteGenTreat, model$RecyclingTreat))
+  
+  # Add only the sectors that are present in the currenct WIO object to avoid adding the same sector
+  # more than once when dealing with multiple WIO sectors (e.g. concrete and food waste)
+  WIOUseRows <- WIOUseRows[which(WIOUseRows$Code %in% WIO$NAICSSectorCW$USEEIO_Code),]
+  WIOUseColumns <- WIOUseColumns[which(WIOUseColumns$Code %in% WIO$NAICSSectorCW$USEEIO_Code),]
+  
+  # Populate MultiYearCommodityoutput and MultiYearIndustryOutput objects 
+  
+  # Populate MultiYearCommodityOutput by repeating the value of the current year output of the WIO Commodities
+  multiYearWIOComOutput <- data.frame(matrix(nrow = dim(WIOUseRows)[1], 
+                                             ncol = ncol(model$MultiYearCommodityOutput)))
+  
+  colnames(multiYearWIOComOutput) <- colnames(model$MultiYearCommodityOutput)
+  rownames(multiYearWIOComOutput) <- WIOUseRows$Code_Loc
+  comValues <- model$CommodityOutput[names(model$CommodityOutput) %in% WIOUseRows$Code_Loc]
+  multiYearWIOComOutput[,] <- rep(comValues, ncol(model$MultiYearCommodityOutput))
+  model$MultiYearCommodityOutput <- rbind(model$MultiYearCommodityOutput, multiYearWIOComOutput)
+  
+  # Populate MultiYearIndustryOutput by repeating the value of the current year output of the WIO Industries
+  multiYearWIOIndOutput <- data.frame(matrix(nrow = dim(WIOUseColumns)[1], 
+                                             ncol = ncol(model$MultiYearIndustryOutput)))
+  
+  colnames(multiYearWIOIndOutput) <- colnames(model$MultiYearIndustryOutput)
+  rownames(multiYearWIOIndOutput) <- WIOUseColumns$Code_Loc
+  indValues <- model$IndustryOutput[names(model$IndustryOutput) %in% WIOUseColumns$Code_Loc]
+  multiYearWIOIndOutput[,] <- rep(indValues, ncol(model$MultiYearIndustryOutput))
+  model$MultiYearIndustryOutput <- rbind(model$MultiYearIndustryOutput, multiYearWIOIndOutput)
+  
+  # Populate MultiYearCommodityCPI and MultiYearIndustryCPI
+  # Assume constant CPI for the WIO commodities as there currently is no data available to calculate this for waste sectors
+  multiYearWIOCPI <- data.frame(matrix(nrow = dim(WIOUseRows)[1], 
+                                             ncol = ncol(model$MultiYearCommodityCPI)))
+  
+  colnames(multiYearWIOCPI) <- colnames(model$MultiYearCommodityCPI)
+  rownames(multiYearWIOCPI) <- WIOUseRows$Code_Loc
+  comValues <- rep(100,dim(multiYearWIOCPI)[1])
+  multiYearWIOCPI[,] <- rep(comValues, ncol(model$MultiYearCommodityCPI))
+  model$MultiYearCommodityCPI <- rbind(model$MultiYearCommodityCPI, multiYearWIOCPI)
+  
+  # Assume constant CPI for the WIO industries as there currently is no data available to calculate this for waste sectors
+  multiYearWIOCPI <- data.frame(matrix(nrow = dim(WIOUseColumns)[1], 
+                                       ncol = ncol(model$MultiYearIndustryCPI)))
+  
+  colnames(multiYearWIOCPI) <- colnames(model$MultiYearIndustryCPI)
+  rownames(multiYearWIOCPI) <- WIOUseColumns$Code_Loc
+  indValues <- rep(100,dim(multiYearWIOCPI)[1])
+  multiYearWIOCPI[,] <- rep(indValues, ncol(model$MultiYearIndustryCPI))
+  model$MultiYearIndustryCPI <- rbind(model$MultiYearIndustryCPI, multiYearWIOCPI)
+  
+  
+  return(model)
+}
+
+#' Adjust WIO sectors such that they are in the correct order. Should only be needed in
+#' the case that there is more than 1 WIOSpec.
+#' @param model An EEIO model object with model specs and IO tables loaded
+#' @return  A model object with the WIO sectors in the correct order
+reorderWIOSectors <- function(model){
+  
+  # Get WIO sector indexes
+  WIOTreatmentComIndexes <- which(model$Commodities$Code_Loc %in% model$WasteTreatmentCommodities$Code_Loc)
+  WIOTreatmentIndIndexes <- which(model$Industries$Code_Loc %in% model$WasteTreatmentIndustries$Code_Loc)
+  
+  wasteGenMassComIndexes <- which(model$Commodities$Code_Loc %in% model$WasteGenMass$Code_Loc)
+  wasteGenTreatIndIndexes <- which(model$Industries$Code_Loc %in% model$WasteGenTreat$Code_Loc)
+  
+  # Reorder commodities
+  WIOComOrder <- c(WIOTreatmentComIndexes,wasteGenMassComIndexes)
+  comOrder <- 1:dim(model$Commodities)[1]  # Create an ordered int vector from 1 to number of commodities
+  comOrder <- comOrder[-(WIOComOrder)] # Remove ints corresponding to the WIO commodity indeces from their proper order
+  comOrder <- c(comOrder, WIOComOrder) # Add ints corresponding to the WIO commodity indeces to the end of the list
+  
+  # Reorder industries
+  WIOIndOrder <- c(WIOTreatmentIndIndexes,wasteGenTreatIndIndexes)
+  indOrder <- 1:dim(model$Industries)[1]  # Create an ordered int vector from 1 to number of commodities
+  indOrder <- indOrder[-(WIOIndOrder)] # Remove ints corresponding to the WIO commodity indeces from their proper order
+  indOrder <- c(indOrder, WIOIndOrder) # Add ints corresponding to the WIO commodity indeces to the end of the list
+ 
+  model <- reorderModelSectors(model, comOrder, indOrder)
+  
+  return(model)
+}
diff --git a/README.md b/README.md
index c7f0d35a..4b36353e 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
 
 `useeior` is an R package for building and using [USEEIO models](https://www.epa.gov/land-research/us-environmentally-extended-input-output-useeio-models).
 
-The [model object](format_specs/Model.md) is the primary output that is built according to a given [model specification](format_specs/ModelSpecification.md) and optional hybridization specification, e.g. [disaggregation](format_specs/DisaggregationAndAggregationSpecification.md).
+The [model object](format_specs/Model.md) is the primary output that is built according to a given [model specification](format_specs/ModelSpecification.md) and optional hybridization specification, e.g. [disaggregation](format_specs/ModelCustomization.md).
 [Model specifications](inst/extdata/modelspecs) and associated hybridization specifications, e.g. [disaggregation](inst/extdata/disaggspecs), for EPA-validated models are included in the package.
 
 `useeior` offers various functions for validating, calculating, visualizing, and writing out models and/or their components.
diff --git a/data-raw/BEAData.R b/data-raw/BEAData.R
index d551e1eb..210d0640 100644
--- a/data-raw/BEAData.R
+++ b/data-raw/BEAData.R
@@ -1,9 +1,19 @@
-# Download all IO tables under Make-Use framework from BEA iTable
+url_ls <- c(IO = "https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip",
+            imports = "https://apps.bea.gov/industry/xls/io-annual",
+            GDP = "https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip",
+            SUP = "https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip",
+            margins = "https://apps.bea.gov/industry/xls/underlying-estimates"
+            )
+
+dir <- file.path(rappdirs::user_data_dir(), "USEEIO-input")
+dir.create(dir, showWarnings = FALSE)
+
+# Download and unzip all IO tables under Make-Use framework from BEA iTable
 getBEAIOTables <- function() {
   # Create the placeholder file
-  AllTablesIO <- "inst/extdata/AllTablesIO.zip"
+  AllTablesIO <- paste0(dir, "/", "AllTablesIO.zip")
   # Download all BEA IO tables into the placeholder file
-  url <- "https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"
+  url <- url_ls["IO"]
   if (!file.exists(AllTablesIO)) {
     utils::download.file(url, AllTablesIO, mode = "wb")
   }
@@ -11,9 +21,9 @@ getBEAIOTables <- function() {
   files <- unzip(AllTablesIO, list = TRUE)
   fname <- files[files$Length > 0, ]$Name
   if (all(fname == basename(fname))) {
-    exdir <- "inst/extdata/AllTablesIO"
+    exdir <- paste0(dir, "/", "AllTableIO")
   } else {
-    exdir <- "inst/extdata/"
+    exdir <- dir
   }
   # Unzip the file to the designated directory
   unzip(AllTablesIO, files = fname, exdir = exdir,
@@ -26,1134 +36,774 @@ getBEAIOTables <- function() {
 }
 
 
-# Get BEA Detail Make (Before Redef, 2012 schema) table from static Excel
-getBEADetailMakeBeforeRedef2012Schema <- function(year) {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Load data
-  FileName <- file.path("inst/extdata/AllTablesIO",
-                        files[startsWith(files, "IOMake_Before_Redefinitions") &
-                                endsWith(files, "Detail.xlsx")])
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  DetailMake <- as.data.frame(readxl::read_excel(FileName,
-                                                 sheet = as.character(year)))
-  # Assign row and column names
-  DetailMake <- DetailMake[!is.na(DetailMake[, 2]), ]
-  colnames(DetailMake) <- DetailMake[1, ]
-  rownames(DetailMake) <- DetailMake$Code
-  # Trim table, convert all values to numeric, assign row names
-  DetailMake <- as.data.frame(lapply(DetailMake[-1, -c(1:2)], as.numeric),
-                              check.names = FALSE,
-                              row.names = DetailMake[-1, 1])
-  # Replace NA with zero
-  DetailMake[is.na(DetailMake)] <- 0
-  # Write data to .rda
-  writeDatatoRDA(data = DetailMake,
-                 data_name = paste0("Detail_Make_", year, "_BeforeRedef"))
-  # Write metadata to JSON
-  writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Detail_Make_", year, "_BeforeRedef"),
-                      year = year,
-                      source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = date_last_modified,
-                      date_accessed = date_accessed)
+# Download and unzip all Supply and Use tables from BEA AllTablesSUP.zip
+getBEASupplyUseTables <- function() {
+  # Create the placeholder file
+  AllTablesSUP <- paste0(dir, "/", "AllTablesIOSUP.zip")
+  # Download all BEA IO tables into the placeholder file
+  url <- url_ls["SUP"]
+  if (!file.exists(AllTablesSUP)) {
+    utils::download.file(url, AllTablesSUP, mode = "wb")
+  }
+  # Get the name of all files in the zip archive
+  files <- unzip(AllTablesSUP, list = TRUE)
+  fname <- files[files$Length > 0, ]$Name
+  if (all(fname == basename(fname))) {
+    exdir <- paste0(dir, "/", "AllTablesSUP")
+  } else {
+    exdir <- dir
+  }
+  # Unzip the file to the designated directory
+  unzip(AllTablesSUP, files = fname, exdir = exdir,
+        overwrite = TRUE, setTimes = TRUE)
+  # Create output
+  ls <- list("url" = url,
+             "date_accessed" = as.character(as.Date(file.mtime(AllTablesSUP))),
+             "files" = basename(fname))
+  return(ls)
 }
 
-# Get BEA Detail Use (PRO, Before Redef, 2012 schema) table from static Excel
-getBEADetailUsePROBeforeRedef2012Schema <- function(year) {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Load data
-  FileName <- file.path("inst/extdata/AllTablesIO",
-                        files[startsWith(files, "IOUse_Before_Redefinitions_PRO") &
-                                endsWith(files, "Detail.xlsx")])
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  DetailUse <- as.data.frame(readxl::read_excel(FileName,
-                                                sheet = as.character(year)))
-  # Assign row and column names
-  DetailUse <- DetailUse[!is.na(DetailUse[, 2]), ]
-  colnames(DetailUse) <- DetailUse[1, ]
-  rownames(DetailUse) <- DetailUse$Code
-  # Trim table, convert all values to numeric, assign row names
-  DetailUse <- as.data.frame(lapply(DetailUse[-1, -c(1:2)], as.numeric),
-                             check.names = FALSE,
-                             row.names = DetailUse[-1, 1])
-  # Replace NA with zero
-  DetailUse[is.na(DetailUse)] <- 0
-  # Write data to .rda
-  writeDatatoRDA(data = DetailUse,
-                 data_name = paste0("Detail_Use_", year, "_PRO_BeforeRedef"))
-  # Write metadata to JSON
-  writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Detail_Use_", year, "_PRO_BeforeRedef"),
-                      year = year,
-                      source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = date_last_modified,
-                      date_accessed = date_accessed)
+# Download and unzip all GDP tables from BEA
+getBEAUnderlyingTables <- function() {
+  # Create the placeholder file
+  UnderlyingTables <- paste0(dir, "/", "UGdpByInd.zip")
+  # Download all BEA IO tables into the placeholder file
+  url <- url_ls["GDP"]
+  if (!file.exists(UnderlyingTables)) {
+    utils::download.file(url, UnderlyingTables, mode = "wb")
+  }
+  # Get the name of all files in the zip archive
+  files <- unzip(UnderlyingTables, list = TRUE)
+  fname <- files[files$Length > 0, ]$Name
+  if (all(fname == basename(fname))) {
+    exdir <- paste0(dir, "/", "UGdpByInd")
+  } else {
+    exdir <- dir
+  }
+  # Unzip the file to the designated directory
+  unzip(UnderlyingTables, files = fname, exdir = exdir,
+        overwrite = TRUE, setTimes = TRUE)
+  # Create output
+  ls <- list("url" = url,
+             "date_accessed" = as.character(as.Date(file.mtime(UnderlyingTables))),
+             "files" = basename(fname))
+  return(ls)
 }
 
-# Get BEA Detail Use (PUR, Before Redef, 2012 schema) 2012 table from static Excel
-getBEADetailUsePURBeforeRedef2012Schema <- function(year) {
+#' Extract table from BEA data 
+#' @param year, str IOschema year
+#' @param filename, str e.g. "IOUse_Before_Redefinitions_PRO"
+#' @param ioschema, str e.g. "Detail"
+unpackFile <- function(year, filename, ioschema) {
   # Download data
   url <- getBEAIOTables()[["url"]]
   date_accessed <- getBEAIOTables()[["date_accessed"]]
   files <- getBEAIOTables()[["files"]]
   # Load data
-  FileName <- file.path("inst/extdata/AllTablesIO",
-                        files[startsWith(files, "IOUse_Before_Redefinitions_PUR") &
-                                endsWith(files, "Detail.xlsx")])
+  FileName <- file.path(rappdirs::user_data_dir(), "USEEIO-input", "AllTableIO",
+                        files[startsWith(files, filename) &
+                                endsWith(files, paste0(ioschema, ".xlsx"))])
   date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  DetailUse <- as.data.frame(readxl::read_excel(FileName,
-                                                sheet = as.character(year)))
+  df <- as.data.frame(readxl::read_excel(FileName,
+                                         sheet = as.character(year)))
+  # return multiple items to access later
+  ls <- list("df" = df,
+             "url" = url,
+             "date_accessed" = date_accessed,
+             "date_last_modified" = date_last_modified)
+  return(ls)
+}
+
+#' Process dataframe to remove spaces and assign col/row names
+#' @param df, dataframe of matrix (i.e., make or use table)
+processDetailMatrix <- function(df) {
   # Assign row and column names
-  DetailUse <- DetailUse[!is.na(DetailUse[, 2]), ]
-  colnames(DetailUse) <- DetailUse[1, ]
-  rownames(DetailUse) <- DetailUse$Code
+  df <- df[!is.na(df[, 2]), ]
+  colnames(df) <- df[1, ]
+  rownames(df) <- df$Code
   # Trim table, convert all values to numeric, assign row names
-  DetailUse <- as.data.frame(lapply(DetailUse[-1, -c(1:2)], as.numeric),
-                             check.names = FALSE,
-                             row.names = DetailUse[-1, 1])
+  df <- as.data.frame(lapply(df[-1, -c(1:2)], as.numeric),
+                      check.names = FALSE,
+                      row.names = df[-1, 1])
   # Replace NA with zero
-  DetailUse[is.na(DetailUse)] <- 0
-  # Write data to .rda
-  writeDatatoRDA(data = DetailUse,
-                 data_name = paste0("Detail_Use_", year, "_PUR_BeforeRedef"))
-  # Write metadata to JSON
-  writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Detail_Use_", year, "_PUR_BeforeRedef"),
-                      year = year,
-                      source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = date_last_modified,
-                      date_accessed = date_accessed)
+  df[is.na(df)] <- 0
+  return(df)
 }
 
-# Get BEA Detail Make (After Redef, 2012 schema) table from static Excel
-getBEADetailMakeAfterRedef2012Schema <- function(year) {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Load data
-  FileName <- file.path("inst/extdata/AllTablesIO",
-                        files[startsWith(files, "IOMake_After_Redefinitions") &
-                                endsWith(files, "Detail.xlsx")])
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  DetailMake <- as.data.frame(readxl::read_excel(FileName,
-                                                 sheet = as.character(year)))
-  # Assign row and column names
-  DetailMake <- DetailMake[!is.na(DetailMake[, 2]), ]
-  colnames(DetailMake) <- DetailMake[1, ]
-  rownames(DetailMake) <- DetailMake$Code
-  # Trim table, convert all values to numeric, assign row names
-  DetailMake <- as.data.frame(lapply(DetailMake[-1, -c(1:2)], as.numeric),
+#' Process dataframe to remove spaces and assign col/row names
+#' @param df, dataframe of matrix (i.e., make or use table)
+processSummaryMatrix <- function(df) {
+  # Trim table, assign column names
+  df <- df[!is.na(df[, 2]), ]
+  colnames(df) <- df[1, ]
+  colname_check <- is.na(colnames(df))
+  colnames(df)[colname_check] <- df[2, colname_check]
+  # Fill NA in code column with corresponding name
+  df[is.na(df[, 1]), 1] <- df[is.na(df[, 1]), 2]
+  # Convert all values to numeric, assign row names
+  df <- as.data.frame(lapply(df[-c(1:2), -c(1:2)], as.numeric),
                               check.names = FALSE,
-                              row.names = DetailMake[-1, 1])
+                              row.names = df[-c(1:2), 1])
   # Replace NA with zero
-  DetailMake[is.na(DetailMake)] <- 0
-  # Write data to .rda
-  writeDatatoRDA(data = DetailMake,
-                 data_name = paste0("Detail_Make_", year, "_AfterRedef"))
-  # Write metadata to JSON
-  writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Detail_Make_", year, "_AfterRedef"),
-                      year = year,
-                      source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = date_last_modified,
-                      date_accessed = date_accessed)
+  df[is.na(df)] <- 0
+  return(df)
 }
 
-# Get BEA Detail Use (PRO, After Redef, 2012 schema) table from static Excel
-getBEADetailUsePROAfterRedef2012Schema <- function(year) {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Load data
-  FileName <- file.path("inst/extdata/AllTablesIO",
-                        files[startsWith(files, "IOUse_After_Redefinitions_PRO") &
-                                endsWith(files, "Detail.xlsx")])
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  DetailUse <- as.data.frame(readxl::read_excel(FileName,
-                                                sheet = as.character(year)))
-  # Assign row and column names
-  DetailUse <- DetailUse[!is.na(DetailUse[, 2]), ]
-  colnames(DetailUse) <- DetailUse[1, ]
-  rownames(DetailUse) <- DetailUse$Code
-  # Trim table, convert all values to numeric, assign row names
-  DetailUse <- as.data.frame(lapply(DetailUse[-1, -c(1:2)], as.numeric),
-                             check.names = FALSE,
-                             row.names = DetailUse[-1, 1])
-  # Replace NA with zero
-  DetailUse[is.na(DetailUse)] <- 0
+#' Write RDA and json metadata files
+#' @param df, dataframe of matrix (i.e., make or use table)
+#' @param year, str IO data year
+#' @param name, str
+#' @param ls, list of metadata items
+#' @param scehma_year str of schema year (e.g., 2012 or 2017)
+writeFile <- function(df, year, name, ls, schema_year) {
+  if (!is.null(schema_year)){
+    # append schema to filename e.g., _17sch
+    name <- paste0(name, "_", substring(schema_year, 3, 4), "sch")
+  }
   # Write data to .rda
-  writeDatatoRDA(data = DetailUse,
-                 data_name = paste0("Detail_Use_", year, "_PRO_AfterRedef"))
+  writeDatatoRDA(data = df,
+                 data_name = name)
   # Write metadata to JSON
   writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Detail_Use_", year, "_PRO_AfterRedef"),
+                      name = name,
                       year = year,
                       source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = date_last_modified,
-                      date_accessed = date_accessed)
+                      url = ls[["url"]],
+                      date_last_modified = ls[["date_last_modified"]],
+                      date_accessed = ls[["date_accessed"]])  
 }
 
-# Get BEA Detail Use (PUR, After Redef, 2012 schema) table from static Excel
-getBEADetailUsePURAfterRedef2012Schema <- function(year) {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Load data
-  FileName <- file.path("inst/extdata/AllTablesIO",
-                        files[startsWith(files, "IOUse_After_Redefinitions_PUR") &
-                                endsWith(files, "Detail.xlsx")])
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  DetailUse <- data.frame(readxl::read_excel(FileName,
-                                             sheet = as.character(year)))
-  # Assign row and column names
-  DetailUse <- DetailUse[!is.na(DetailUse[, 2]), ]
-  colnames(DetailUse) <- DetailUse[1, ]
-  rownames(DetailUse) <- DetailUse$Code
-  # Trim table, convert all values to numeric, assign row names
-  DetailUse <- as.data.frame(lapply(DetailUse[-1, -c(1:2)], as.numeric),
-                             check.names = FALSE,
-                             row.names = DetailUse[-1, 1])
-  # Replace NA with zero
-  DetailUse[is.na(DetailUse)] <- 0
-  # Write data to .rda
-  writeDatatoRDA(data = DetailUse,
-                 data_name = paste0("Detail_Use_", year, "_PUR_AfterRedef"))
-  # Write metadata to JSON
-  writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Detail_Use_", year, "_PUR_AfterRedef"),
-                      year = year,
-                      source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = date_last_modified,
-                      date_accessed = date_accessed)
+# Get BEA Detail Make (Before Redef) table from static Excel
+getBEADetailMakeBeforeRedef <- function(year) {
+  ls <- unpackFile(year, filename="IOMake_Before_Redefinitions", ioschema="Detail")
+  DetailMake <- data.frame(ls["df"])
+  DetailMake <- processDetailMatrix(DetailMake)
+  writeFile(df = DetailMake, year = year,
+            name = paste0("Detail_Make_", year, "_BeforeRedef"), ls = ls,
+            schema_year = year)
 }
 
-# Get BEA Summary Make (Before Redef, 2012 schema) table from static Excel
-getBEASummaryMakeBeforeRedef2012Schema <- function() {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "IOMake_Before_Redefinitions") &
-                  endsWith(files, "Summary.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesIO", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
-  # Load data
-  for (year in 2010:end_year) {
-    SummaryMake <- data.frame(readxl::read_excel(FileName,
-                                                 sheet = as.character(year)))
-    # Trim table, assign column names
-    SummaryMake <- SummaryMake[!is.na(SummaryMake[, 2]), ]
-    colnames(SummaryMake) <- SummaryMake[1, ]
-    colname_check <- is.na(colnames(SummaryMake))
-    colnames(SummaryMake)[colname_check] <- SummaryMake[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SummaryMake[is.na(SummaryMake[, 1]), 1] <- SummaryMake[is.na(SummaryMake[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SummaryMake <- as.data.frame(lapply(SummaryMake[-c(1:2), -c(1:2)], as.numeric),
-                                 check.names = FALSE,
-                                 row.names = SummaryMake[-c(1:2), 1])
-    # Replace NA with zero
-    SummaryMake[is.na(SummaryMake)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SummaryMake,
-                   data_name = paste0("Summary_Make_", year, "_BeforeRedef"))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Summary_Make_", year, "_BeforeRedef"),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
-  }
+# Get BEA Detail Use (PRO, Before Redef) table from static Excel
+getBEADetailUsePROBeforeRedef <- function(year) {
+  ls <- unpackFile(year, filename="IOUse_Before_Redefinitions_PRO", ioschema="Detail")
+  DetailUse <- data.frame(ls["df"])
+  DetailUse <- processDetailMatrix(DetailUse)
+  writeFile(df = DetailUse, year = year,
+            name = paste0("Detail_Use_", year, "_PRO_BeforeRedef"), ls = ls,
+            schema_year = year)
 }
 
-# Get BEA Summary Use (PRO, Before Redef, 2012 schema) table from static Excel
-getBEASummaryUsePROBeforeRedef2012Schema <- function() {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "IOUse_Before_Redefinitions_PRO") &
-                  endsWith(files, "Summary.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesIO", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
-  # Load data
-  for (year in 2010:end_year) {
-    SummaryUse <- as.data.frame(readxl::read_excel(FileName,
-                                                   sheet = as.character(year)))
-    # Trim table, assign column names
-    SummaryUse <- SummaryUse[!is.na(SummaryUse[, 2]), ]
-    colnames(SummaryUse) <- SummaryUse[1, ]
-    colname_check <- is.na(colnames(SummaryUse))
-    colnames(SummaryUse)[colname_check] <- SummaryUse[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SummaryUse[is.na(SummaryUse[, 1]), 1] <- SummaryUse[is.na(SummaryUse[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SummaryUse <- as.data.frame(lapply(SummaryUse[-c(1:2), -c(1:2)], as.numeric),
-                                check.names = FALSE,
-                                row.names = SummaryUse[-c(1:2), 1])
-    # Replace NA with zero
-    SummaryUse[is.na(SummaryUse)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SummaryUse,
-                   data_name = paste0("Summary_Use_", year, "_PRO_BeforeRedef"))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Summary_Use_", year, "_PRO_BeforeRedef"),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
-  }
+# Get BEA Detail Use (PUR, Before Redef) table from static Excel
+getBEADetailUsePURBeforeRedef <- function(year) {
+  ls <- unpackFile(year, filename="IOUse_Before_Redefinitions_PUR", ioschema="Detail")
+  DetailUse <- data.frame(ls["df"])
+  DetailUse <- processDetailMatrix(DetailUse)
+  writeFile(df = DetailUse, year = year,
+            name = paste0("Detail_Use_", year, "_PUR_BeforeRedef"), ls = ls,
+            schema_year = year)
 }
 
-# Get BEA Summary Use (PUR, Before Redef, 2012 schema) table from static Excel
-getBEASummaryUsePURBeforeRedef2012Schema <- function(year) {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "IOUse_Before_Redefinitions_PUR") &
-                  endsWith(files, "Summary.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesIO", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Load data
-  SummaryUse <- as.data.frame(readxl::read_excel(FileName,
-                                                 sheet = as.character(year)))
-  # Trim table, assign column names
-  SummaryUse <- SummaryUse[!is.na(SummaryUse[, 2]), ]
-  colnames(SummaryUse) <- SummaryUse[1, ]
-  colname_check <- is.na(colnames(SummaryUse))
-  colnames(SummaryUse)[colname_check] <- SummaryUse[2, colname_check]
-  # Fill NA in code column with corresponding name
-  SummaryUse[is.na(SummaryUse[, 1]), 1] <- SummaryUse[is.na(SummaryUse[, 1]), 2]
-  # Convert all values to numeric, assign row names
-  SummaryUse <- as.data.frame(lapply(SummaryUse[-c(1:2), -c(1:2)], as.numeric),
-                              check.names = FALSE,
-                              row.names = SummaryUse[-c(1:2), 1])
-  # Replace NA with zero
-  SummaryUse[is.na(SummaryUse)] <- 0
-  # Write data to .rda
-  writeDatatoRDA(data = SummaryUse,
-                 data_name = paste0("Summary_Use_", year, "_PUR_BeforeRedef"))
-  # Write metadata to JSON
-  writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Summary_Use_", year, "_PUR_BeforeRedef"),
-                      year = year,
-                      source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = date_last_modified,
-                      date_accessed = date_accessed)
+# Get BEA Detail Make (After Redef) table from static Excel
+getBEADetailMakeAfterRedef <- function(year) {
+  ls <- unpackFile(year, filename="IOMake_After_Redefinitions", ioschema="Detail ")
+  ### ^^ Typo in filename from BEA requires extra space in ioschema ^^^
+  DetailMake <- data.frame(ls["df"])
+  DetailMake <- processDetailMatrix(DetailMake)
+  writeFile(df = DetailMake, year = year,
+            name = paste0("Detail_Make_", year, "_AfterRedef"), ls = ls,
+            schema_year = year)
 }
 
-# Get BEA Summary Make (After Redef, 2012 schema) table from static Excel
-getBEASummaryMakeAfterRedef2012Schema <- function() {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "IOMake_After_Redefinitions") &
-                  endsWith(files, "Summary.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesIO", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
-  # Load data
-  for (year in 2010:end_year) {
-    SummaryMake <- data.frame(readxl::read_excel(FileName,
-                                                 sheet = as.character(year)))
-    # Trim table, assign column names
-    SummaryMake <- SummaryMake[!is.na(SummaryMake[, 2]), ]
-    colnames(SummaryMake) <- SummaryMake[1, ]
-    colname_check <- is.na(colnames(SummaryMake))
-    colnames(SummaryMake)[colname_check] <- SummaryMake[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SummaryMake[is.na(SummaryMake[, 1]), 1] <- SummaryMake[is.na(SummaryMake[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SummaryMake <- as.data.frame(lapply(SummaryMake[-c(1:2), -c(1:2)], as.numeric),
-                                 check.names = FALSE,
-                                 row.names = SummaryMake[-c(1:2), 1])
-    # Replace NA with zero
-    SummaryMake[is.na(SummaryMake)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SummaryMake,
-                   data_name = paste0("Summary_Make_", year, "_AfterRedef"))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Summary_Make_", year, "_AfterRedef"),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
-  }
+# Get BEA Detail Use (PRO, After Redef) table from static Excel
+getBEADetailUsePROAfterRedef <- function(year) {
+  ls <- unpackFile(year, filename="IOUse_After_Redefinitions_PRO", ioschema="Detail")
+  DetailUse <- data.frame(ls["df"])
+  DetailUse <- processDetailMatrix(DetailUse)
+  writeFile(df = DetailUse, year = year,
+            name = paste0("Detail_Use_", year, "_PRO_AfterRedef"), ls = ls,
+            schema_year = year)
 }
 
-# Get BEA Summary Use (PRO, After Redef, 2012 schema) table from static Excel
-getBEASummaryUsePROAfterRedef2012Schema <- function() {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "IOUse_After_Redefinitions_PRO") &
-                  endsWith(files, "Summary.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesIO", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
-  # Load data
-  for (year in 2010:end_year) {
-    SummaryUse <- as.data.frame(readxl::read_excel(FileName,
-                                                   sheet = as.character(year)))
-    # Trim table, assign column names
-    SummaryUse <- SummaryUse[!is.na(SummaryUse[, 2]), ]
-    colnames(SummaryUse) <- SummaryUse[1, ]
-    colname_check <- is.na(colnames(SummaryUse))
-    colnames(SummaryUse)[colname_check] <- SummaryUse[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SummaryUse[is.na(SummaryUse[, 1]), 1] <- SummaryUse[is.na(SummaryUse[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SummaryUse <- as.data.frame(lapply(SummaryUse[-c(1:2), -c(1:2)], as.numeric),
-                                check.names = FALSE,
-                                row.names = SummaryUse[-c(1:2), 1])
-    # Replace NA with zero
-    SummaryUse[is.na(SummaryUse)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SummaryUse,
-                   data_name = paste0("Summary_Use_", year, "_PRO_AfterRedef"))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Summary_Use_", year, "_PRO_AfterRedef"),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
-  }
+# Get BEA Detail Use (PUR, After Redef) table from static Excel
+getBEADetailUsePURAfterRedef <- function(year) {
+  ls <- unpackFile(year, filename="IOUse_After_Redefinitions_PUR", ioschema="Detail")
+  DetailUse <- data.frame(ls["df"])
+  DetailUse <- processDetailMatrix(DetailUse)
+  writeFile(df = DetailUse, year = year,
+            name = paste0("Detail_Use_", year, "_PUR_AfterRedef"), ls = ls,
+            schema_year = year)
 }
 
-# Get BEA Sector Make (Before Redef, 2012 schema) table from static Excel
-getBEASectorMakeBeforeRedef2012Schema <- function() {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "IOMake_Before_Redefinitions") &
-                  endsWith(files, "Sector.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesIO", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
-  # Load data
-  for (year in 2010:end_year) {
-    SectorMake <- data.frame(readxl::read_excel(FileName,
-                                                sheet = as.character(year)))
-    # Trim table, assign column names
-    SectorMake <- SectorMake[!is.na(SectorMake[, 2]), ]
-    colnames(SectorMake) <- SectorMake[1, ]
-    colname_check <- is.na(colnames(SectorMake))
-    colnames(SectorMake)[colname_check] <- SectorMake[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SectorMake[is.na(SectorMake[, 1]), 1] <- SectorMake[is.na(SectorMake[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SectorMake <- as.data.frame(lapply(SectorMake[-c(1:2), -c(1:2)], as.numeric),
-                                check.names = FALSE,
-                                row.names = SectorMake[-c(1:2), 1])
-    # Replace NA with zero
-    SectorMake[is.na(SectorMake)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SectorMake,
-                   data_name = paste0("Sector_Make_", year, "_BeforeRedef"))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Sector_Make_", year, "_BeforeRedef"),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
+# Get BEA Summary Make (Before Redef) table from static Excel
+getBEASummaryMakeBeforeRedef <- function(year) {
+  end_year <- 2022
+  for (y in 2017:end_year) {
+    ls <- unpackFile(y, filename="IOMake_Before_Redefinitions", ioschema="Summary")
+    SummaryMake <- data.frame(ls["df"])
+    SummaryMake <- processSummaryMatrix(SummaryMake)
+    writeFile(df = SummaryMake, year = y,
+              name = paste0("Summary_Make_", y, "_BeforeRedef"), ls = ls,
+              schema_year = year)
   }
 }
 
-# Get BEA Sector Use (PRO, Before Redef, 2012 schema) table from static Excel
-getBEASectorUsePROBeforeRedef2012Schema <- function() {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "IOUse_Before_Redefinitions_PRO") &
-                  endsWith(files, "Sector.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesIO", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
-  for (year in 2010:end_year) {
-    SectorUse <- data.frame(readxl::read_excel(FileName,
-                                               sheet = as.character(year)))
-    # Trim table, assign column names
-    SectorUse <- SectorUse[!is.na(SectorUse[, 2]), ]
-    colnames(SectorUse) <- SectorUse[1, ]
-    colname_check <- is.na(colnames(SectorUse))
-    colnames(SectorUse)[colname_check] <- SectorUse[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SectorUse[is.na(SectorUse[, 1]), 1] <- SectorUse[is.na(SectorUse[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SectorUse <- as.data.frame(lapply(SectorUse[-c(1:2), -c(1:2)], as.numeric),
-                               check.names = FALSE,
-                               row.names = SectorUse[-c(1:2), 1])
-    # Replace NA with zero
-    SectorUse[is.na(SectorUse)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SectorUse,
-                   data_name = paste0("Sector_Use_", year, "_PRO_BeforeRedef"))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Sector_Use_", year, "_PRO_BeforeRedef"),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
+# Get BEA Summary Use (PRO, Before Redef) table from static Excel
+getBEASummaryUsePROBeforeRedef <- function(year) {
+  end_year <- 2022
+  for (y in 2017:end_year) {
+    ls <- unpackFile(y, filename="IOUse_Before_Redefinitions_PRO", ioschema="Summary")
+    SummaryUse <- data.frame(ls["df"])
+    SummaryUse <- processSummaryMatrix(SummaryUse)
+    writeFile(df = SummaryUse, year = y,
+              name = paste0("Summary_Use_", y, "_PRO_BeforeRedef"), ls = ls,
+              schema_year = year)
   }
 }
 
-# Get BEA Sector Use (PUR, Before Redef, 2012 schema) table from static Excel
-getBEASectorUsePURBeforeRedef2012Schema <- function(year) {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "IOUse_Before_Redefinitions_PUR") &
-                  endsWith(files, "Sector.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesIO", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Load data
-  SectorUse <- data.frame(readxl::read_excel(FileName,
-                                             sheet = as.character(year)))
-  # Trim table, assign column names
-  SectorUse <- SectorUse[!is.na(SectorUse[, 2]), ]
-  colnames(SectorUse) <- SectorUse[1, ]
-  colname_check <- is.na(colnames(SectorUse))
-  colnames(SectorUse)[colname_check] <- SectorUse[2, colname_check]
-  # Fill NA in code column with corresponding name
-  SectorUse[is.na(SectorUse[, 1]), 1] <- SectorUse[is.na(SectorUse[, 1]), 2]
-  # Convert all values to numeric, assign row names
-  SectorUse <- as.data.frame(lapply(SectorUse[-c(1:2), -c(1:2)], as.numeric),
-                             check.names = FALSE,
-                             row.names = SectorUse[-c(1:2), 1])
-  # Replace NA with zero
-  SectorUse[is.na(SectorUse)] <- 0
-  # Write data to .rda
-  writeDatatoRDA(data = SectorUse,
-                 data_name = paste0("Sector_Use_", year, "_PUR_BeforeRedef"))
-  # Write metadata to JSON
-  writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Sector_Use_", year, "_PUR_BeforeRedef"),
-                      year = year,
-                      source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = date_last_modified,
-                      date_accessed = date_accessed)
+# Get BEA Summary Use (PUR, Before Redef) table from static Excel
+getBEASummaryUsePURBeforeRedef <- function(year) {
+  ls <- unpackFile(year, filename="IOUse_Before_Redefinitions_PUR", ioschema="Summary")
+  SummaryUse <- data.frame(ls["df"])
+  SummaryUse <- processSummaryMatrix(SummaryUse)
+  writeFile(df = SummaryUse, year = year,
+            name = paste0("Summary_Use_", year, "_PUR_BeforeRedef"), ls = ls,
+            schema_year = year)
 }
 
-# Get BEA Sector Make (After Redef, 2012 schema) table from static Excel
-getBEASectorMakeAfterRedef2012Schema <- function() {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "IOMake_After_Redefinitions") &
-                  endsWith(files, "Sector.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesIO", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
-  # Load data
-  for (year in 2010:end_year) {
-    SectorMake <- data.frame(readxl::read_excel(FileName,
-                                                sheet = as.character(year)))
-    # Trim table, assign column names
-    SectorMake <- SectorMake[!is.na(SectorMake[, 2]), ]
-    colnames(SectorMake) <- SectorMake[1, ]
-    colname_check <- is.na(colnames(SectorMake))
-    colnames(SectorMake)[colname_check] <- SectorMake[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SectorMake[is.na(SectorMake[, 1]), 1] <- SectorMake[is.na(SectorMake[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SectorMake <- as.data.frame(lapply(SectorMake[-c(1:2), -c(1:2)], as.numeric),
-                                check.names = FALSE,
-                                row.names = SectorMake[-c(1:2), 1])
-    # Replace NA with zero
-    SectorMake[is.na(SectorMake)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SectorMake,
-                   data_name = paste0("Sector_Make_", year, "_AfterRedef"))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Sector_Make_", year, "_AfterRedef"),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
+# Get BEA Summary Make (After Redef) table from static Excel
+getBEASummaryMakeAfterRedef <- function(year) {
+  end_year <- 2022
+  for (y in 2017:end_year) {
+    ls <- unpackFile(y, filename="IOMake_After_Redefinitions", ioschema="Summary")
+    SummaryMake <- data.frame(ls["df"])
+    SummaryMake <- processSummaryMatrix(SummaryMake)
+    writeFile(df = SummaryMake, year = y,
+              name = paste0("Summary_Make_", y, "_AfterRedef"), ls = ls,
+              schema_year = year)
   }
 }
 
-# Get BEA Sector Use (PRO, After Redef, 2012 schema) table from static Excel
-getBEASectorUsePROAfterRedef2012Schema <- function() {
-  # Download data
-  url <- getBEAIOTables()[["url"]]
-  date_accessed <- getBEAIOTables()[["date_accessed"]]
-  files <- getBEAIOTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "IOUse_After_Redefinitions_PRO") &
-                  endsWith(files, "Sector.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesIO", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
-  for (year in 2010:end_year) {
-    SectorUse <- data.frame(readxl::read_excel(FileName,
-                                               sheet = as.character(year)))
-    # Trim table, assign column names
-    SectorUse <- SectorUse[!is.na(SectorUse[, 2]), ]
-    colnames(SectorUse) <- SectorUse[1, ]
-    colname_check <- is.na(colnames(SectorUse))
-    colnames(SectorUse)[colname_check] <- SectorUse[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SectorUse[is.na(SectorUse[, 1]), 1] <- SectorUse[is.na(SectorUse[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SectorUse <- as.data.frame(lapply(SectorUse[-c(1:2), -c(1:2)], as.numeric),
-                               check.names = FALSE,
-                               row.names = SectorUse[-c(1:2), 1])
-    # Replace NA with zero
-    SectorUse[is.na(SectorUse)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SectorUse,
-                   data_name = paste0("Sector_Use_", year, "_PRO_AfterRedef"))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Sector_Use_", year, "_PRO_AfterRedef"),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
+# Get BEA Summary Use (PRO, After Redef) table from static Excel
+getBEASummaryUsePROAfterRedef <- function(year) {
+  end_year <- 2022
+  for (y in 2017:end_year) {
+    ls <- unpackFile(y, filename="IOUse_After_Redefinitions_PRO", ioschema="Summary")
+    SummaryUse <- data.frame(ls["df"])
+    SummaryUse <- processSummaryMatrix(SummaryUse)
+    writeFile(df = SummaryUse, year = y,
+              name = paste0("Summary_Use_", y, "_PRO_AfterRedef"), ls = ls,
+              schema_year = year)
   }
 }
 
-# Get BEA Detail Import (Before Redef, 2012 schema) from static Excel
-getBEADetailImportBeforeRedef2012Schema <- function(year) {
+# # Get BEA Sector Make (Before Redef, 2012 schema) table from static Excel
+# getBEASectorMakeBeforeRedef2012Schema <- function() {
+#   # Download data
+#   url <- getBEAIOTables()[["url"]]
+#   date_accessed <- getBEAIOTables()[["date_accessed"]]
+#   files <- getBEAIOTables()[["files"]]
+#   # Prepare file name
+#   file <- files[startsWith(files, "IOMake_Before_Redefinitions") &
+#                   endsWith(files, "Sector.xlsx")]
+#   FileName <- file.path("inst/extdata/AllTablesIO", file)
+#   date_last_modified <- as.character(as.Date(file.mtime(FileName)))
+#   # Find latest data year
+#   file_split <- unlist(stringr::str_split(file, pattern = "_"))
+#   year_range <- file_split[length(file_split) - 1]
+#   end_year <- sub(".*-", "", year_range)
+#   # Load data
+#   for (year in 2010:end_year) {
+#     SectorMake <- data.frame(readxl::read_excel(FileName,
+#                                                 sheet = as.character(year)))
+#     # Trim table, assign column names
+#     SectorMake <- SectorMake[!is.na(SectorMake[, 2]), ]
+#     colnames(SectorMake) <- SectorMake[1, ]
+#     colname_check <- is.na(colnames(SectorMake))
+#     colnames(SectorMake)[colname_check] <- SectorMake[2, colname_check]
+#     # Fill NA in code column with corresponding name
+#     SectorMake[is.na(SectorMake[, 1]), 1] <- SectorMake[is.na(SectorMake[, 1]), 2]
+#     # Convert all values to numeric, assign row names
+#     SectorMake <- as.data.frame(lapply(SectorMake[-c(1:2), -c(1:2)], as.numeric),
+#                                 check.names = FALSE,
+#                                 row.names = SectorMake[-c(1:2), 1])
+#     # Replace NA with zero
+#     SectorMake[is.na(SectorMake)] <- 0
+#     # Write data to .rda
+#     writeDatatoRDA(data = SectorMake,
+#                    data_name = paste0("Sector_Make_", year, "_BeforeRedef"))
+#     # Write metadata to JSON
+#     writeMetadatatoJSON(package = "useeior",
+#                         name = paste0("Sector_Make_", year, "_BeforeRedef"),
+#                         year = year,
+#                         source = "US Bureau of Economic Analysis",
+#                         url = url,
+#                         date_last_modified = date_last_modified,
+#                         date_accessed = date_accessed)
+#   }
+# }
+# 
+# # Get BEA Sector Use (PRO, Before Redef, 2012 schema) table from static Excel
+# getBEASectorUsePROBeforeRedef2012Schema <- function() {
+#   # Download data
+#   url <- getBEAIOTables()[["url"]]
+#   date_accessed <- getBEAIOTables()[["date_accessed"]]
+#   files <- getBEAIOTables()[["files"]]
+#   # Prepare file name
+#   file <- files[startsWith(files, "IOUse_Before_Redefinitions_PRO") &
+#                   endsWith(files, "Sector.xlsx")]
+#   FileName <- file.path("inst/extdata/AllTablesIO", file)
+#   date_last_modified <- as.character(as.Date(file.mtime(FileName)))
+#   # Find latest data year
+#   file_split <- unlist(stringr::str_split(file, pattern = "_"))
+#   year_range <- file_split[length(file_split) - 1]
+#   end_year <- sub(".*-", "", year_range)
+#   for (year in 2010:end_year) {
+#     SectorUse <- data.frame(readxl::read_excel(FileName,
+#                                                sheet = as.character(year)))
+#     # Trim table, assign column names
+#     SectorUse <- SectorUse[!is.na(SectorUse[, 2]), ]
+#     colnames(SectorUse) <- SectorUse[1, ]
+#     colname_check <- is.na(colnames(SectorUse))
+#     colnames(SectorUse)[colname_check] <- SectorUse[2, colname_check]
+#     # Fill NA in code column with corresponding name
+#     SectorUse[is.na(SectorUse[, 1]), 1] <- SectorUse[is.na(SectorUse[, 1]), 2]
+#     # Convert all values to numeric, assign row names
+#     SectorUse <- as.data.frame(lapply(SectorUse[-c(1:2), -c(1:2)], as.numeric),
+#                                check.names = FALSE,
+#                                row.names = SectorUse[-c(1:2), 1])
+#     # Replace NA with zero
+#     SectorUse[is.na(SectorUse)] <- 0
+#     # Write data to .rda
+#     writeDatatoRDA(data = SectorUse,
+#                    data_name = paste0("Sector_Use_", year, "_PRO_BeforeRedef"))
+#     # Write metadata to JSON
+#     writeMetadatatoJSON(package = "useeior",
+#                         name = paste0("Sector_Use_", year, "_PRO_BeforeRedef"),
+#                         year = year,
+#                         source = "US Bureau of Economic Analysis",
+#                         url = url,
+#                         date_last_modified = date_last_modified,
+#                         date_accessed = date_accessed)
+#   }
+# }
+# 
+# # Get BEA Sector Use (PUR, Before Redef, 2012 schema) table from static Excel
+# getBEASectorUsePURBeforeRedef2012Schema <- function(year) {
+#   # Download data
+#   url <- getBEAIOTables()[["url"]]
+#   date_accessed <- getBEAIOTables()[["date_accessed"]]
+#   files <- getBEAIOTables()[["files"]]
+#   # Prepare file name
+#   file <- files[startsWith(files, "IOUse_Before_Redefinitions_PUR") &
+#                   endsWith(files, "Sector.xlsx")]
+#   FileName <- file.path("inst/extdata/AllTablesIO", file)
+#   date_last_modified <- as.character(as.Date(file.mtime(FileName)))
+#   # Load data
+#   SectorUse <- data.frame(readxl::read_excel(FileName,
+#                                              sheet = as.character(year)))
+#   # Trim table, assign column names
+#   SectorUse <- SectorUse[!is.na(SectorUse[, 2]), ]
+#   colnames(SectorUse) <- SectorUse[1, ]
+#   colname_check <- is.na(colnames(SectorUse))
+#   colnames(SectorUse)[colname_check] <- SectorUse[2, colname_check]
+#   # Fill NA in code column with corresponding name
+#   SectorUse[is.na(SectorUse[, 1]), 1] <- SectorUse[is.na(SectorUse[, 1]), 2]
+#   # Convert all values to numeric, assign row names
+#   SectorUse <- as.data.frame(lapply(SectorUse[-c(1:2), -c(1:2)], as.numeric),
+#                              check.names = FALSE,
+#                              row.names = SectorUse[-c(1:2), 1])
+#   # Replace NA with zero
+#   SectorUse[is.na(SectorUse)] <- 0
+#   # Write data to .rda
+#   writeDatatoRDA(data = SectorUse,
+#                  data_name = paste0("Sector_Use_", year, "_PUR_BeforeRedef"))
+#   # Write metadata to JSON
+#   writeMetadatatoJSON(package = "useeior",
+#                       name = paste0("Sector_Use_", year, "_PUR_BeforeRedef"),
+#                       year = year,
+#                       source = "US Bureau of Economic Analysis",
+#                       url = url,
+#                       date_last_modified = date_last_modified,
+#                       date_accessed = date_accessed)
+# }
+# 
+# # Get BEA Sector Make (After Redef, 2012 schema) table from static Excel
+# getBEASectorMakeAfterRedef2012Schema <- function() {
+#   # Download data
+#   url <- getBEAIOTables()[["url"]]
+#   date_accessed <- getBEAIOTables()[["date_accessed"]]
+#   files <- getBEAIOTables()[["files"]]
+#   # Prepare file name
+#   file <- files[startsWith(files, "IOMake_After_Redefinitions") &
+#                   endsWith(files, "Sector.xlsx")]
+#   FileName <- file.path("inst/extdata/AllTablesIO", file)
+#   date_last_modified <- as.character(as.Date(file.mtime(FileName)))
+#   # Find latest data year
+#   file_split <- unlist(stringr::str_split(file, pattern = "_"))
+#   year_range <- file_split[length(file_split) - 1]
+#   end_year <- sub(".*-", "", year_range)
+#   # Load data
+#   for (year in 2010:end_year) {
+#     SectorMake <- data.frame(readxl::read_excel(FileName,
+#                                                 sheet = as.character(year)))
+#     # Trim table, assign column names
+#     SectorMake <- SectorMake[!is.na(SectorMake[, 2]), ]
+#     colnames(SectorMake) <- SectorMake[1, ]
+#     colname_check <- is.na(colnames(SectorMake))
+#     colnames(SectorMake)[colname_check] <- SectorMake[2, colname_check]
+#     # Fill NA in code column with corresponding name
+#     SectorMake[is.na(SectorMake[, 1]), 1] <- SectorMake[is.na(SectorMake[, 1]), 2]
+#     # Convert all values to numeric, assign row names
+#     SectorMake <- as.data.frame(lapply(SectorMake[-c(1:2), -c(1:2)], as.numeric),
+#                                 check.names = FALSE,
+#                                 row.names = SectorMake[-c(1:2), 1])
+#     # Replace NA with zero
+#     SectorMake[is.na(SectorMake)] <- 0
+#     # Write data to .rda
+#     writeDatatoRDA(data = SectorMake,
+#                    data_name = paste0("Sector_Make_", year, "_AfterRedef"))
+#     # Write metadata to JSON
+#     writeMetadatatoJSON(package = "useeior",
+#                         name = paste0("Sector_Make_", year, "_AfterRedef"),
+#                         year = year,
+#                         source = "US Bureau of Economic Analysis",
+#                         url = url,
+#                         date_last_modified = date_last_modified,
+#                         date_accessed = date_accessed)
+#   }
+# }
+# 
+# # Get BEA Sector Use (PRO, After Redef, 2012 schema) table from static Excel
+# getBEASectorUsePROAfterRedef2012Schema <- function() {
+#   # Download data
+#   url <- getBEAIOTables()[["url"]]
+#   date_accessed <- getBEAIOTables()[["date_accessed"]]
+#   files <- getBEAIOTables()[["files"]]
+#   # Prepare file name
+#   file <- files[startsWith(files, "IOUse_After_Redefinitions_PRO") &
+#                   endsWith(files, "Sector.xlsx")]
+#   FileName <- file.path("inst/extdata/AllTablesIO", file)
+#   date_last_modified <- as.character(as.Date(file.mtime(FileName)))
+#   # Find latest data year
+#   file_split <- unlist(stringr::str_split(file, pattern = "_"))
+#   year_range <- file_split[length(file_split) - 1]
+#   end_year <- sub(".*-", "", year_range)
+#   for (year in 2010:end_year) {
+#     SectorUse <- data.frame(readxl::read_excel(FileName,
+#                                                sheet = as.character(year)))
+#     # Trim table, assign column names
+#     SectorUse <- SectorUse[!is.na(SectorUse[, 2]), ]
+#     colnames(SectorUse) <- SectorUse[1, ]
+#     colname_check <- is.na(colnames(SectorUse))
+#     colnames(SectorUse)[colname_check] <- SectorUse[2, colname_check]
+#     # Fill NA in code column with corresponding name
+#     SectorUse[is.na(SectorUse[, 1]), 1] <- SectorUse[is.na(SectorUse[, 1]), 2]
+#     # Convert all values to numeric, assign row names
+#     SectorUse <- as.data.frame(lapply(SectorUse[-c(1:2), -c(1:2)], as.numeric),
+#                                check.names = FALSE,
+#                                row.names = SectorUse[-c(1:2), 1])
+#     # Replace NA with zero
+#     SectorUse[is.na(SectorUse)] <- 0
+#     # Write data to .rda
+#     writeDatatoRDA(data = SectorUse,
+#                    data_name = paste0("Sector_Use_", year, "_PRO_AfterRedef"))
+#     # Write metadata to JSON
+#     writeMetadatatoJSON(package = "useeior",
+#                         name = paste0("Sector_Use_", year, "_PRO_AfterRedef"),
+#                         year = year,
+#                         source = "US Bureau of Economic Analysis",
+#                         url = url,
+#                         date_last_modified = date_last_modified,
+#                         date_accessed = date_accessed)
+#   }
+# }
+
+# Get BEA Detail Import (Before Redef schema) from static Excel
+getBEADetailImportBeforeRedef <- function(year) {
   # Download data
-  file <- "ImportMatrices_Before_Redefinitions_DET_2007_2012.xlsx"
-  url <- file.path("https://apps.bea.gov/industry/xls/io-annual", file)
-  FileName <- file.path("inst/extdata/", file)
+  file <- paste0("ImportMatrices_Before_Redefinitions_DET_", year, ".xlsx")
+  url <- file.path(url_ls["imports"], file)
+  FileName <- file.path(dir, "/", file)
   if (!file.exists(FileName)) {
     utils::download.file(url, FileName, mode = "wb")
   }
   # Load data
   DetailImport <- as.data.frame(readxl::read_excel(FileName,
                                                    sheet = as.character(year)))
-  # Trim table, assign column names
-  DetailImport <- DetailImport[!is.na(DetailImport[, 2]), ]
-  colnames(DetailImport) <- DetailImport[1, ]
-  colname_check <- is.na(colnames(DetailImport))
-  colnames(DetailImport)[colname_check] <- DetailImport[2, colname_check]
-  # Fill NA in code column with corresponding name
-  DetailImport[is.na(DetailImport[, 1]), 1] <- DetailImport[is.na(DetailImport[, 1]), 2]
-  # Convert all values to numeric, assign row names
-  DetailImport <- as.data.frame(lapply(DetailImport[-1, -c(1:2)], as.numeric),
-                                check.names = FALSE,
-                                row.names = DetailImport[-1, 1])
-  # Replace NA with zero
-  DetailImport[is.na(DetailImport)] <- 0
-  # Write data to .rda
-  writeDatatoRDA(data = DetailImport,
-                 data_name = paste0("Detail_Import_", year, "_BeforeRedef"))
-  # Write metadata to JSON
-  writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Detail_Import_", year, "_BeforeRedef"),
-                      year = year,
-                      source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = "unknown",
-                      date_accessed = as.character(as.Date(file.mtime(FileName))))
+  DetailImport <- processDetailMatrix(DetailImport)
+  ls <- list("url" = url,
+             "date_accessed" = as.character(as.Date(file.mtime(FileName))),
+             "date_last_modified" = "unknown")
+  writeFile(df = DetailImport, year = year,
+            name = paste0("Detail_Import_", year, "_BeforeRedef"), ls = ls,
+            schema_year = year)
 }
 
-# Get BEA Summary Import (Before Redef, 2012 schema) from static Excel
-getBEASummaryImportBeforeRedef2012Schema <- function() {
+# Get BEA Summary Import (Before Redef) from static Excel
+getBEASummaryImportBeforeRedef <- function(year) {
   # Download data
-  file <- "ImportMatrices_Before_Redefinitions_SUM_1997-2020.xlsx"
-  url <- file.path("https://apps.bea.gov/industry/xls/io-annual", file)
-  FileName <- file.path("inst/extdata/", file)
+  file <- "ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx"
+  url <- file.path(url_ls["imports"], file)
+  FileName <- file.path(dir, file)
   if (!file.exists(FileName)) {
     utils::download.file(url, FileName, mode = "wb")
   }
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- sub(".xlsx", "", file_split[length(file_split)])
-  end_year <- sub(".*-", "", year_range)
+  end_year <- 2022
   # Load data
-  for (year in 2010:end_year) {
+  for (y in 2017:end_year) {
     SummaryImport <- data.frame(readxl::read_excel(FileName,
                                                    sheet = as.character(year)))
-    # Trim table, assign column names
-    SummaryImport <- SummaryImport[!is.na(SummaryImport[, 2]), ]
-    colnames(SummaryImport) <- SummaryImport[1, ]
-    colname_check <- is.na(colnames(SummaryImport))
-    colnames(SummaryImport)[colname_check] <- SummaryImport[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SummaryImport[is.na(SummaryImport[, 1]), 1] <- SummaryImport[is.na(SummaryImport[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SummaryImport <- as.data.frame(lapply(SummaryImport[-c(1:2), -c(1:2)], as.numeric),
-                                check.names = FALSE,
-                                row.names = SummaryImport[-c(1:2), 1])
-    # Replace NA with zero
-    SummaryImport[is.na(SummaryImport)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SummaryImport,
-                   data_name = paste0("Summary_Import_", year, "_BeforeRedef"))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Summary_Import_", year, "_BeforeRedef"),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = "2022-02-11", # obtained from notes on BEA webpage about "BEA's use tables were updated on Feb.11, 2022."
-                        date_accessed = as.character(as.Date(file.mtime(FileName))))
+    SummaryImport <- processSummaryMatrix(SummaryImport)
+    ls <- list("url" = url,
+               "date_accessed" = as.character(as.Date(file.mtime(FileName))),
+               "date_last_modified" = "2024-02-01") # page last modified
+    writeFile(df = SummaryImport, year = y,
+              name = paste0("Summary_Import_", y, "_BeforeRedef"), ls = ls,
+              schema_year = year)
   }
 }
 
-# Download all GDP tables from BEA
-getBEAUnderlyingTables <- function() {
-  # Create the placeholder file
-  UnderlyingTables <- "inst/extdata/UGdpByInd.zip"
-  # Download all BEA IO tables into the placeholder file
-  url <- "https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip"
-  if (!file.exists(UnderlyingTables)) {
-    utils::download.file(url, UnderlyingTables, mode = "wb")
-  }
-  # Get the name of all files in the zip archive
-  files <- unzip(UnderlyingTables, list = TRUE)
-  fname <- files[files$Length > 0, ]$Name
-  if (all(fname == basename(fname))) {
-    exdir <- "inst/extdata/UGdpByInd"
-  } else {
-    exdir <- "inst/extdata/"
-  }
-  # Unzip the file to the designated directory
-  unzip(UnderlyingTables, files = fname, exdir = exdir,
-        overwrite = TRUE, setTimes = TRUE)
-  # Create output
-  ls <- list("url" = url,
-             "date_accessed" = as.character(as.Date(file.mtime(UnderlyingTables))),
-             "files" = basename(fname))
-  return(ls)
-}
-
-# Get Detail BEA Gross Output (2012 schema) since 2002
-getBEADetailGrossOutput2012Schema <- function() {
-  # Download data
-  files <- getBEAUnderlyingTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "GrossOutput")]
-  FileName <- file.path("inst/extdata/UGdpByInd", file)
-  # Load data
-  content <- na.omit(as.data.frame(readxl::read_excel(FileName,
-                                                      sheet = "Contents",
-                                                      na = "")))
-  sheet <- paste0(content[content$Title ==
-                            "U.Gross Output by Industry - Detail Level", "Code"],
-                  "-A")
-  DetailGrossOutput <- as.data.frame(readxl::read_excel(FileName,
-                                                        sheet = sheet))
-  # Trim table, assign column names
-  DetailGrossOutput <- DetailGrossOutput[!is.na(DetailGrossOutput[, 4]), ]
-  colnames(DetailGrossOutput) <- DetailGrossOutput[1, ]
-  Gross_Output_Detail_Industry <- DetailGrossOutput[-1, 2]
-  # Convert all values to numeric, assign row names
-  DetailGrossOutput <- cbind.data.frame(Gross_Output_Detail_Industry,
-                             lapply(DetailGrossOutput[-1, -c(1:3)],
-                                                  as.numeric))
-  # Keep columns since 2002
-  col_2002 <- which(colnames(DetailGrossOutput) == "2002")
-  DetailGrossOutput <- DetailGrossOutput[, c(1, col_2002:ncol(DetailGrossOutput))]
-  return(DetailGrossOutput)
-}
-
-# Get Summary BEA Gross Output (2012 schema) since 2002
-getBEASummaryGrossOutput2012Schema <- function() {
-  # Download data
-  files <- getBEAUnderlyingTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "GrossOutput")]
-  FileName <- file.path("inst/extdata/UGdpByInd", file)
-  # Load data
-  content <- na.omit(as.data.frame(readxl::read_excel(FileName,
-                                                      sheet = "Contents",
-                                                      na = "")))
-  sheet <- paste0(content[content$Title == "U.Gross Output by Industry", "Code"],
-                  "-A")
-  SummaryGrossOutput <- as.data.frame(readxl::read_excel(FileName,
-                                                         sheet = sheet))
-  # Trim table, assign column names
-  SummaryGrossOutput <- SummaryGrossOutput[!is.na(SummaryGrossOutput[, 4]), ]
-  colnames(SummaryGrossOutput) <- SummaryGrossOutput[1, ]
-  Gross_Output_Industry <- SummaryGrossOutput[-1, 2]
-  # Convert all values to numeric, assign row names
-  SummaryGrossOutput <- cbind.data.frame(Gross_Output_Industry,
-                                         lapply(SummaryGrossOutput[-1, -c(1:3)],
-                                                as.numeric))
-  # Keep columns since 2002
-  col_2002 <- which(colnames(SummaryGrossOutput) == "2002")
-  SummaryGrossOutput <- SummaryGrossOutput[, c(1, col_2002:ncol(SummaryGrossOutput))]
-  return(SummaryGrossOutput)
-}
 
-# Get Sector BEA Gross Output (2012 schema) since 2002
-getBEASectorGrossOutput2012Schema <- function() {
+#' Get Detail BEA Gross Output
+#' @param level, str "Detail", "Summary", or "Sector"
+getBEAGrossOutput <- function(level) {
   # Download data
   files <- getBEAUnderlyingTables()[["files"]]
   # Prepare file name
   file <- files[startsWith(files, "GrossOutput")]
-  FileName <- file.path("inst/extdata/UGdpByInd", file)
+  FileName <- file.path(dir, "UGdpByInd", file)
   # Load data
   content <- na.omit(as.data.frame(readxl::read_excel(FileName,
                                                       sheet = "Contents",
                                                       na = "")))
-  sheet <- paste0(content[content$Title == "U.Gross Output by Industry", "Code"],
-                  "-A")
-  SectorGrossOutput <- as.data.frame(readxl::read_excel(FileName,
-                                                        sheet = sheet))
+  if(level=="Detail"){
+    tag = "U.Gross Output by Industry - Detail Level"
+  } else {
+    tag = "U.Gross Output by Industry"
+  }
+  sheet <- paste0(content[content$Title == tag, "Code"], "-A")
+  GrossOutput <- as.data.frame(readxl::read_excel(FileName, sheet = sheet))
   # Trim table, assign column names
-  SectorGrossOutput <- SectorGrossOutput[!is.na(SectorGrossOutput[, 4]), ]
-  colnames(SectorGrossOutput) <- SectorGrossOutput[1, ]
-  Gross_Output_Industry <- SectorGrossOutput[-1, 2]
+  GrossOutput <- GrossOutput[!is.na(GrossOutput[, 4]), ]
+  colnames(GrossOutput) <- GrossOutput[1, ]
+  sector <- GrossOutput[-1, 2]
   # Convert all values to numeric, assign row names
-  SectorGrossOutput <- cbind.data.frame(Gross_Output_Industry,
-                                        lapply(SectorGrossOutput[-1, -c(1:3)],
-                                               as.numeric))
-  # Keep columns since 2002
-  col_2002 <- which(colnames(SectorGrossOutput) == "2002")
-  SectorGrossOutput <- SectorGrossOutput[, c(1, col_2002:ncol(SectorGrossOutput))]
-  return(SectorGrossOutput)
+  GrossOutput <- cbind.data.frame(sector, 
+                                  lapply(GrossOutput[-1, -c(1:3)], as.numeric))
+  return(GrossOutput)
 }
 
-# Map gross output ($) from GDP industries to IO industries (2012 schema) at Detail, Summary, and Sector IO levels.
-mapBEAGrossOutputtoIOIndustry2012Schema <- function() {
-  # Download data
-  url <- getBEAUnderlyingTables()[["url"]]
-  date_accessed <- getBEAUnderlyingTables()[["date_accessed"]]
-  files <- getBEAUnderlyingTables()[["files"]]
-  FileName <- file.path("inst/extdata/UGdpByInd",
-                        files[startsWith(files, "GrossOutput")])
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
 
+# Map gross output ($) from GDP industries to IO industries at Detail, Summary, and Sector IO levels.
+mapBEAGrossOutputtoIOIndustry <- function(schema_year) {
+  ls <- getBEAUnderlyingTables()
+  FileName <- file.path(dir, "UGdpByInd",
+                        ls[["files"]][startsWith(ls[["files"]], "GrossOutput")])
+  ls["date_last_modified"] <- as.character(as.Date(file.mtime(FileName)))
   ### Detail ###
-  DetailGrossOutput <- getBEADetailGrossOutput2012Schema()
+  DetailGrossOutput <- getBEAGrossOutput(level="Detail")
   # Determine year range
   year_range <- colnames(DetailGrossOutput)[2:ncol(DetailGrossOutput)]
   # Map BEA Detail industry code to IO code
   Detail_mapping <- utils::read.table(system.file("extdata",
-                                                  "Crosswalk_DetailGDPIndustrytoIO2012Schema.csv",
+                                                  "Crosswalk_DetailGDPIndustrytoIO.csv",
                                                   package = "useeior"),
                                       sep = ",", header = TRUE,
                                       stringsAsFactors = FALSE,
                                       quote = "\"")
+  Detail_mapping <- Detail_mapping[,c("Gross_Output_Detail_Industry",
+                                      paste0("BEA_", schema_year, "_Detail_Code"))]
+  colnames(Detail_mapping) <- c("sector", "BEA_Detail_Code")
   DetailGrossOutputIO <- merge(Detail_mapping, DetailGrossOutput,
-                               by = "Gross_Output_Detail_Industry",
+                               by = "sector",
                                all.y = TRUE)
   # Aggregate by BEA Detail industry code
   DetailGrossOutputIO <- stats::aggregate(DetailGrossOutputIO[, year_range],
-                                          by = list(DetailGrossOutputIO$BEA_2012_Detail_Code),
+                                          by = list(DetailGrossOutputIO$BEA_Detail_Code),
                                           sum)
   # Assign sector code to row names
   rownames(DetailGrossOutputIO) <- DetailGrossOutputIO[, 1]
   DetailGrossOutputIO[, 1] <- NULL
 
   ### Summary ###
-  SummaryGrossOutput <- getBEASummaryGrossOutput2012Schema()
+  SummaryGrossOutput <- getBEAGrossOutput(level="Summary")
   # Map BEA Summary industry code to IO code
   Summary_mapping <- utils::read.table(system.file("extdata",
-                                                   "Crosswalk_SummaryGDPIndustrytoIO2012Schema.csv",
+                                                   paste0("Crosswalk_SummaryGDPIndustrytoIO", 2012, "Schema.csv"),
                                                    package = "useeior"),
                                        sep = ",", header = TRUE,
                                        stringsAsFactors = FALSE)
+  colnames(Summary_mapping) <- c("sector", "BEA_Summary_Code")
+  ## TODO can update crosswalk file for 2017, 2017 summary schema is same as 2012 ^^
   SummaryGrossOutputIO <- cbind(Summary_mapping, SummaryGrossOutput)
   # Keep Summary rows
-  SummaryGrossOutputIO <- SummaryGrossOutputIO[!SummaryGrossOutputIO$BEA_2012_Summary_Code == "",
-                                               c("BEA_2012_Summary_Code", year_range)]
+  SummaryGrossOutputIO <- SummaryGrossOutputIO[!SummaryGrossOutputIO$BEA_Summary_Code == "",
+                                               c("BEA_Summary_Code", year_range)]
   # Assign sector code to row names
   rownames(SummaryGrossOutputIO) <- SummaryGrossOutputIO[, 1]
   SummaryGrossOutputIO[, 1] <- NULL
 
   ### Sector ###
-  SectorGrossOutput <- getBEASectorGrossOutput2012Schema()
+  SectorGrossOutput <- getBEAGrossOutput(level="Sector")
   # Map BEA Sector industry code to IO code
   Sector_mapping <- utils::read.table(system.file("extdata",
-                                                  "Crosswalk_SectorGDPIndustrytoIO2012Schema.csv",
+                                                  paste0("Crosswalk_SectorGDPIndustrytoIO", 2012, "Schema.csv"),
                                                   package = "useeior"),
                                       sep = ",", header = TRUE, stringsAsFactors = FALSE)
+  colnames(Sector_mapping) <- c("sector", "BEA_Sector_Code")
+  ## TODO can update crosswalk file for 2017, 2017 sector schema is same as 2012 ^^
   SectorGrossOutputIO <- cbind(Sector_mapping, SectorGrossOutput)
   # Keep Summary rows
-  SectorGrossOutputIO <- SectorGrossOutputIO[!SectorGrossOutputIO$BEA_2012_Sector_Code == "",
-                                             c("BEA_2012_Sector_Code", year_range)]
+  SectorGrossOutputIO <- SectorGrossOutputIO[!SectorGrossOutputIO$BEA_Sector_Code == "",
+                                             c("BEA_Sector_Code", year_range)]
   # Assign sector code to row names
   rownames(SectorGrossOutputIO) <- SectorGrossOutputIO[, 1]
   SectorGrossOutputIO[, 1] <- NULL
 
   ### Save and Document data
-  ls <- list("Detail_GrossOutput_IO" = DetailGrossOutputIO,
+  dfs <- list("Detail_GrossOutput_IO" = DetailGrossOutputIO,
              "Summary_GrossOutput_IO" = SummaryGrossOutputIO,
              "Sector_GrossOutput_IO" = SectorGrossOutputIO)
-  for (data_name in names(ls)) {
-    # Write data to .rda
-    writeDatatoRDA(data = ls[[data_name]], data_name = data_name)
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = data_name,
-                        year = year_range,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
+  for (data_name in names(dfs)) {
+    writeFile(df = dfs[[data_name]], year = year_range,
+              name = data_name, ls = ls,
+              schema_year = schema_year)
   }
 }
 
-# Get Detail BEA Chain-Type Price Indexes (CPI) (2012 schema) since 2002
-getBEADetailCPI2012Schema <- function() {
+#' Get Detail BEA Chain-Type Price Indexes (CPI)
+#' @param level, str "Detail", "Summary", or "Sector"
+getBEACPI <- function(level) {
   # Download data
   files <- getBEAUnderlyingTables()[["files"]]
   # Prepare file name
   file <- files[startsWith(files, "GrossOutput")]
-  FileName <- file.path("inst/extdata/UGdpByInd", file)
+  FileName <- file.path(dir, "UGdpByInd", file)
   # Load data
   content <- na.omit(as.data.frame(readxl::read_excel(FileName,
                                                       sheet = "Contents",
                                                       na = "")))
-  dataname <- "U.Chain-Type Price Indexes for Gross Output by Industry"
-  sheet <- paste0(content[content$Title == paste(dataname, "- Detail Level"), "Code"],
-                  "-A")
-  DetailCPI <- as.data.frame(readxl::read_excel(FileName, sheet = sheet))
+  if(level=="Detail"){
+    tag = "U.Chain-Type Price Indexes for Gross Output by Industry - Detail Level"
+  } else {
+    tag = "U.Chain-Type Price Indexes for Gross Output by Industry"
+  }
+  sheet <- paste0(content[content$Title == tag, "Code"], "-A")
+  CPI <- as.data.frame(readxl::read_excel(FileName, sheet = sheet))
   # Trim table, assign column names
-  DetailCPI <- DetailCPI[!is.na(DetailCPI[, 4]), ]
-  colnames(DetailCPI) <- DetailCPI[1, ]
-  Gross_Output_Detail_Industry <- DetailCPI[-1, 2]
+  CPI <- CPI[!is.na(CPI[, 4]), ]
+  colnames(CPI) <- CPI[1, ]
+  sector <- CPI[-1, 2]
   # Convert all values to numeric, assign row names
-  DetailCPI <- cbind.data.frame(Gross_Output_Detail_Industry,
-                                lapply(DetailCPI[-1, -c(1:3)],
-                                       as.numeric))
-  # Keep columns since 2002
-  col_2002 <- which(colnames(DetailCPI) == "2002")
-  DetailCPI <- DetailCPI[, c(1, col_2002:ncol(DetailCPI))]
-  return(DetailCPI)
+  CPI <- cbind.data.frame(sector,
+                          lapply(CPI[-1, -c(1:3)], as.numeric))
+  return(CPI)
 }
 
-# Get Summary BEA Chain-Type Price Indexes (CPI) (2012 schema) since 2002
-getBEASummaryCPI2012Schema <- function() {
-  # Download data
-  files <- getBEAUnderlyingTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "GrossOutput")]
-  FileName <- file.path("inst/extdata/UGdpByInd", file)
-  # Load data
-  content <- na.omit(as.data.frame(readxl::read_excel(FileName,
-                                                      sheet = "Contents",
-                                                      na = "")))
-  dataname <- "U.Chain-Type Price Indexes for Gross Output by Industry"
-  sheet <- paste0(content[content$Title == dataname, "Code"], "-A")
-  SummaryCPI <- as.data.frame(readxl::read_excel(FileName, sheet = sheet))
-  # Trim table, assign column names
-  SummaryCPI <- SummaryCPI[!is.na(SummaryCPI[, 4]), ]
-  colnames(SummaryCPI) <- SummaryCPI[1, ]
-  Gross_Output_Industry <- SummaryCPI[-1, 2]
-  # Convert all values to numeric, assign row names
-  SummaryCPI <- cbind.data.frame(Gross_Output_Industry,
-                                 lapply(SummaryCPI[-1, -c(1:3)],
-                                        as.numeric))
-  # Keep columns since 2002
-  col_2002 <- which(colnames(SummaryCPI) == "2002")
-  SummaryCPI <- SummaryCPI[, c(1, col_2002:ncol(SummaryCPI))]
-  return(SummaryCPI)
-}
 
-# Get Sector BEA Chain-Type Price Indexes (CPI) (2012 schema) since 2002
-getBEASectorCPI2012Schema <- function() {
-  # Download data
-  files <- getBEAUnderlyingTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "GrossOutput")]
-  FileName <- file.path("inst/extdata/UGdpByInd", file)
-  # Load data
-  content <- na.omit(as.data.frame(readxl::read_excel(FileName,
-                                                      sheet = "Contents",
-                                                      na = "")))
-  dataname <- "U.Chain-Type Price Indexes for Gross Output by Industry"
-  sheet <- paste0(content[content$Title == dataname, "Code"], "-A")
-  SectorCPI <- as.data.frame(readxl::read_excel(FileName, sheet = sheet))
-  # Trim table, assign column names
-  SectorCPI <- SectorCPI[!is.na(SectorCPI[, 4]), ]
-  colnames(SectorCPI) <- SectorCPI[1, ]
-  Gross_Output_Industry <- SectorCPI[-1, 2]
-  # Convert all values to numeric, assign row names
-  SectorCPI <- cbind.data.frame(Gross_Output_Industry,
-                                 lapply(SectorCPI[-1, -c(1:3)],
-                                        as.numeric))
-  # Keep columns since 2002
-  col_2002 <- which(colnames(SectorCPI) == "2002")
-  SectorCPI <- SectorCPI[, c(1, col_2002:ncol(SectorCPI))]
-  return(SectorCPI)
-}
-
-# Map CPI from GDP industries to IO industries (2012 schema) at Detail, Summary, and Sector IO levels.
-mapBEACPItoIOIndustry2012Schema <- function() {
-  # Download data
-  url <- getBEAUnderlyingTables()[["url"]]
-  date_accessed <- getBEAUnderlyingTables()[["date_accessed"]]
-  files <- getBEAUnderlyingTables()[["files"]]
-  FileName <- file.path("inst/extdata/UGdpByInd",
-                        files[startsWith(files, "GrossOutput")])
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
+# Map CPI from GDP industries to IO industries at Detail, Summary, and Sector IO levels.
+mapBEACPItoIOIndustry <- function(schema_year) {
+  ls <- getBEAUnderlyingTables()
+  FileName <- file.path(dir, "UGdpByInd",
+                        ls[["files"]][startsWith(ls[["files"]], "GrossOutput")])
+  ls["date_last_modified"] <- as.character(as.Date(file.mtime(FileName)))
 
   ### Detail ###
-  DetailCPI <- getBEADetailCPI2012Schema()
-  DetailCPI$Gross_Output_Detail_Industry <- sub("’", "'",
-                                                DetailCPI$Gross_Output_Detail_Industry)
+  DetailCPI <- getBEACPI(level="Detail")
+  DetailCPI$sector <- sub("’", "'", DetailCPI$sector)
   # Determine year range
   year_range <- colnames(DetailCPI)[2:ncol(DetailCPI)]
   # Map BEA Detail industry code to IO code
   Detail_mapping <- utils::read.table(system.file("extdata",
-                                                  "Crosswalk_DetailGDPIndustrytoIO2012Schema.csv",
+                                                  "Crosswalk_DetailGDPIndustrytoIO.csv",
                                                   package = "useeior"),
                                       sep = ",", header = TRUE,
                                       stringsAsFactors = FALSE,
                                       quote = "\"")
   Detail_mapping$Gross_Output_Detail_Industry <- sub("’", "'",
                                                      Detail_mapping$Gross_Output_Detail_Industry)
+  Detail_mapping <- Detail_mapping[,c("Gross_Output_Detail_Industry",
+                                      paste0("BEA_", schema_year, "_Detail_Code"))]
+  colnames(Detail_mapping) <- c("sector", "BEA_Detail_Code")
   DetailCPIIO <- merge(Detail_mapping, DetailCPI,
-                       by = "Gross_Output_Detail_Industry", all.y = TRUE)
+                       by = "sector", all.y = TRUE)
+  if(sum(is.na(DetailCPIIO$BEA_Detail_Code)) > 0){
+    print('ERROR: missing mappings')
+    DetailCPIIO$BEA_Detail_Code[is.na(DetailCPIIO$BEA_Detail_Code)] <- "missing"
+  }
   # Adjust (weighted average) CPI based on DetailGrossOutput
   # DetailGrossOutput
-  DetailGrossOutput <- getBEADetailGrossOutput2012Schema()
+  DetailGrossOutput <- getBEAGrossOutput(level="Detail")
   # Merge CPI with GrossOutput
-  DetailCPIIO <- merge(DetailCPIIO, DetailGrossOutput, by = "Gross_Output_Detail_Industry")
+  DetailCPIIO <- merge(DetailCPIIO, DetailGrossOutput, by = "sector")
   # Calculate weighted average of CPI
-  for (code in unique(DetailCPIIO[, "BEA_2012_Detail_Code"])) {
-    for (year in year_range) {
-      row <- DetailCPIIO$BEA_2012_Detail_Code == code
-      DetailCPIIO[row, year] <- stats::weighted.mean(DetailCPIIO[row, paste(year, "x", sep = ".")],
-                                                     DetailCPIIO[row, paste(year, "y", sep = ".")])
+  for (code in unique(DetailCPIIO[, "BEA_Detail_Code"])) {
+    for (y in year_range) {
+      row <- DetailCPIIO$BEA_Detail_Code == code
+      DetailCPIIO[row, y] <- stats::weighted.mean(DetailCPIIO[row, paste(y, "x", sep = ".")],
+                                                  DetailCPIIO[row, paste(y, "y", sep = ".")])
     }
   }
-  # Aggregate CPI by BEA_2012_Detail_Code
+  # Aggregate CPI by BEA_Detail_Code
   DetailCPIIO <- stats::aggregate(DetailCPIIO[, year_range],
-                                  by = list(DetailCPIIO$BEA_2012_Detail_Code),
+                                  by = list(DetailCPIIO$BEA_Detail_Code),
                                   mean)
   # Assign sector code to row names
   rownames(DetailCPIIO) <- DetailCPIIO[, 1]
   DetailCPIIO[, 1] <- NULL
 
   ### Summary ###
-  SummaryCPI <- getBEASummaryCPI2012Schema()
+  SummaryCPI <- getBEACPI(level="Summary")
   # Map BEA Summary industry code to IO code
   Summary_mapping <- utils::read.table(system.file("extdata",
-                                                   "Crosswalk_SummaryGDPIndustrytoIO2012Schema.csv",
+                                                   paste0("Crosswalk_SummaryGDPIndustrytoIO", 2012,"Schema.csv"),
                                                    package = "useeior"),
                                        sep = ",", header = TRUE, stringsAsFactors = FALSE)
+  colnames(Summary_mapping) <- c("sector", "BEA_Summary_Code")
+  ## TODO can update crosswalk file for 2017, 2017 summary schema is same as 2012 ^^
   SummaryCPIIO <- cbind(Summary_mapping, SummaryCPI)
   # Keep Summary rows
-  SummaryCPIIO <- SummaryCPIIO[!SummaryCPIIO$BEA_2012_Summary_Code == "",
-                               c("BEA_2012_Summary_Code", year_range)]
+  SummaryCPIIO <- SummaryCPIIO[!SummaryCPIIO$BEA_Summary_Code == "",
+                               c("BEA_Summary_Code", year_range)]
   # Assign sector code to row names
   rownames(SummaryCPIIO) <- SummaryCPIIO[, 1]
   SummaryCPIIO[, 1] <- NULL
 
   ### Sector ###
-  SectorCPI <- getBEASectorCPI2012Schema()
+  SectorCPI <- getBEACPI(level="Sector")
   # Map BEA Sector industry code to IO code
   Sector_mapping <- utils::read.table(system.file("extdata",
-                                                  "Crosswalk_SectorGDPIndustrytoIO2012Schema.csv",
+                                                  paste0("Crosswalk_SectorGDPIndustrytoIO", 2012,"Schema.csv"),
                                                   package = "useeior"),
                                       sep = ",", header = TRUE, stringsAsFactors = FALSE)
+  colnames(Sector_mapping) <- c("sector", "BEA_Sector_Code")
+  ## TODO can update crosswalk file for 2017, 2017 sector schema is same as 2012 ^^
   SectorCPIIO <- cbind(Sector_mapping, SectorCPI)
   # Keep Sector rows
-  SectorCPIIO <- SectorCPIIO[!SectorCPIIO$BEA_2012_Sector_Code == "",
-                             c("BEA_2012_Sector_Code", year_range)]
+  SectorCPIIO <- SectorCPIIO[!SectorCPIIO$BEA_Sector_Code == "",
+                             c("BEA_Sector_Code", year_range)]
   # Assign sector code to row names
   rownames(SectorCPIIO) <- SectorCPIIO[, 1]
   SectorCPIIO[, 1] <- NULL
 
   ### Save and Document data
-  ls <- list("Detail_CPI_IO" = DetailCPIIO,
+  dfs <- list("Detail_CPI_IO" = DetailCPIIO,
              "Summary_CPI_IO" = SummaryCPIIO,
              "Sector_CPI_IO" = SectorCPIIO)
-  for (data_name in names(ls)) {
-    # Write data to .rda
-    writeDatatoRDA(data = ls[[data_name]], data_name = data_name)
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = data_name,
-                        year = year_range,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
+  for (data_name in names(dfs)) {
+    writeFile(df = dfs[[data_name]], year = year_range,
+              name = data_name, ls = ls,
+              schema_year = schema_year)
   }
 }
 
-#' Get Summary BEA Value Added (2012 schema) since 2007
-getBEASummaryValueAdded2012Schema <- function() {
+#' Get Summary BEA Value Added
+getBEASummaryValueAdded <- function() {
   # Download data
   files <- getBEAUnderlyingTables()[["files"]]
   # Prepare file name
   file <- files[startsWith(files, "ValueAdded")]
-  FileName <- file.path("inst/extdata/UGdpByInd", file)
+  FileName <- file.path(dir, "UGdpByInd", file)
   # Load data
   content <- na.omit(as.data.frame(readxl::read_excel(FileName,
                                                       sheet = "Contents",
@@ -1169,97 +819,62 @@ getBEASummaryValueAdded2012Schema <- function() {
   SummaryValueAdded <- cbind.data.frame(Industry,
                                         lapply(SummaryValueAdded[-1, -c(1:3)],
                                                as.numeric))
-  # Keep columns since 2007
-  col_2007 <- which(colnames(SummaryValueAdded) == "2007")
-  SummaryValueAdded <- SummaryValueAdded[, c(1, col_2007:ncol(SummaryValueAdded))]
   return(SummaryValueAdded)
 }
 
-#' Get Sector BEA Value Added (2012 schema) since 2007
-getBEASectorValueAdded2012Schema <- function() {
-  # Download data
-  files <- getBEAUnderlyingTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "ValueAdded")]
-  FileName <- file.path("inst/extdata/UGdpByInd", file)
-  # Load data
-  content <- na.omit(as.data.frame(readxl::read_excel(FileName,
-                                                      sheet = "Contents",
-                                                      na = "")))
-  dataname <- "U.Value Added by Industry"
-  sheet <- paste0(content[content$Title == dataname, "Code"], "-A")
-  SectorValueAdded <- as.data.frame(readxl::read_excel(FileName, sheet = sheet))
-  # Trim table, assign column names
-  SectorValueAdded <- SectorValueAdded[!is.na(SectorValueAdded[, 4]), ]
-  colnames(SectorValueAdded) <- SectorValueAdded[1, ]
-  Industry <- SectorValueAdded[-1, 2]
-  # Convert all values to numeric, assign row names
-  SectorValueAdded <- cbind.data.frame(Industry,
-                                       lapply(SectorValueAdded[-1, -c(1:3)],
-                                              as.numeric))
-  # Keep columns since 2007
-  col_2007 <- which(colnames(SectorValueAdded) == "2007")
-  SectorValueAdded <- SectorValueAdded[, c(1, col_2007:ncol(SectorValueAdded))]
-  return(SectorValueAdded)
-}
 
-#' Map Value Added ($) from GDP industries to IO industries (2012 schema)
-#' since 2007 at Summary and Sector IO levels
-mapBEAValueAddedtoIOIndustry2012Schema <- function() {
+#' Map Value Added ($) from GDP industries to IO industries
+#' at Summary and Sector IO levels
+mapBEAValueAddedtoIOIndustry <- function(schema_year) {
   # Download data
-  url <- getBEAUnderlyingTables()[["url"]]
-  date_accessed <- getBEAUnderlyingTables()[["date_accessed"]]
-  files <- getBEAUnderlyingTables()[["files"]]
-  FileName <- file.path("inst/extdata/UGdpByInd",
-                        files[startsWith(files, "ValueAdded")])
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
+  ls <- getBEAUnderlyingTables()
+  FileName <- file.path(dir, "UGdpByInd",
+                        ls[["files"]][startsWith(ls[["files"]], "ValueAdded")])
+  ls["date_last_modified"] <- as.character(as.Date(file.mtime(FileName)))
 
   ### Summary ###
-  SummaryValueAdded <- getBEASummaryValueAdded2012Schema()
+  SummaryValueAdded <- getBEASummaryValueAdded()
   # Determine year range
   year_range <- colnames(SummaryValueAdded)[2:ncol(SummaryValueAdded)]
   # Map BEA Summary industry code to IO code
   Summary_mapping <- utils::read.table(system.file("extdata",
-                                                   "Crosswalk_SummaryGDPIndustrytoIO2012Schema.csv",
+                                                   paste0("Crosswalk_SummaryGDPIndustrytoIO", 2012,"Schema.csv"),
                                                    package = "useeior"),
                                        sep = ",", header = TRUE, stringsAsFactors = FALSE)
+  colnames(Summary_mapping) <- c("Gross_Output_Industry","BEA_Summary_Code")
+  ## TODO can update crosswalk file for 2017, 2017 summary schema is same as 2012 ^^
   SummaryValueAddedIO <- cbind(Summary_mapping, SummaryValueAdded)
   # Keep Summary rows
-  SummaryValueAddedIO <- SummaryValueAddedIO[!SummaryValueAddedIO$BEA_2012_Summary_Code == "",
-                                             c("BEA_2012_Summary_Code", year_range)]
+  SummaryValueAddedIO <- SummaryValueAddedIO[!SummaryValueAddedIO$BEA_Summary_Code == "",
+                                             c("BEA_Summary_Code", year_range)]
   # Assign sector code to row names
   rownames(SummaryValueAddedIO) <- SummaryValueAddedIO[, 1]
   SummaryValueAddedIO[, 1] <- NULL
 
   ### Sector ###
-  SectorValueAdded <- getBEASectorValueAdded2012Schema()
+  SectorValueAdded <- getBEASummaryValueAdded()
   # Map BEA Sector industry code to IO code
   Sector_mapping <- utils::read.table(system.file("extdata",
-                                                  "Crosswalk_SectorGDPIndustrytoIO2012Schema.csv",
+                                                  paste0("Crosswalk_SectorGDPIndustrytoIO", 2012,"Schema.csv"),
                                                   package = "useeior"),
                                       sep = ",", header = TRUE, stringsAsFactors = FALSE)
+  colnames(Sector_mapping) <- c("Gross_Output_Industry","BEA_Sector_Code")
+  ## TODO can update crosswalk file for 2017, 2017 sector schema is same as 2012 ^^
   SectorValueAddedIO <- cbind(Sector_mapping, SectorValueAdded)
   # Keep Sector rows
-  SectorValueAddedIO <- SectorValueAddedIO[!SectorValueAddedIO$BEA_2012_Sector_Code == "",
-                                           c("BEA_2012_Sector_Code", year_range)]
+  SectorValueAddedIO <- SectorValueAddedIO[!SectorValueAddedIO$BEA_Sector_Code == "",
+                                           c("BEA_Sector_Code", year_range)]
   # Assign sector code to row names
   rownames(SectorValueAddedIO) <- SectorValueAddedIO[, 1]
   SectorValueAddedIO[, 1] <- NULL
 
   ### Save and Document data
-  ls <- list("Summary_ValueAdded_IO" = SummaryValueAddedIO,
+  dfs <- list("Summary_ValueAdded_IO" = SummaryValueAddedIO,
              "Sector_ValueAdded_IO" = SectorValueAddedIO)
-  for (data_name in names(ls)) {
-    # Write data to .rda
-    writeDatatoRDA(data = ls[[data_name]], data_name = data_name)
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = data_name,
-                        year = year_range,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
+  for (data_name in names(dfs)) {
+    writeFile(df = dfs[[data_name]], year = year_range,
+              name = data_name, ls = ls,
+              schema_year = schema_year)
   }
 }
 
@@ -1284,68 +899,93 @@ cleanSectorNames <- function(df) {
   return(df)
 }
 
-# Get BEA (Detail/Summary/Sector) Code and Name under 2012 schema
-getBEACodeName2012Schema <- function() {
+# Get BEA (Detail/Summary/Sector) Code and Name
+getBEACodeName <- function(schema_year) {
   # Download data
+  # Get the data from AllTablesIO
   url <- getBEAIOTables()[["url"]]
   date_accessed <- getBEAIOTables()[["date_accessed"]]
   files <- getBEAIOTables()[["files"]]
-  ### Detail ###
-  # Load data
-  FileName <- file.path("inst/extdata/AllTablesIO",
+  FileName <- file.path(dir, "AllTableIO",
                         files[startsWith(files, "IOUse_Before_Redefinitions_PRO") &
-                                endsWith(files, "Detail.xlsx")])
+                        endsWith(files, "Detail.xlsx")])
+
+  # Get the data from AllTablesSUP
+  # url <- getBEASupplyUseTables()[["url"]]
+  # date_accessed <- getBEASupplyUseTables()[["date_accessed"]]
+  # files <- getBEASupplyUseTables()[["files"]]
+  # FileName <- file.path(dir, "AllTablesSUP",
+  #                       files[startsWith(files, paste0("Use_SUT_Framework_",schema_year,"_DET.xlsx"))])  
+
   date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  BEADetail <- as.data.frame(readxl::read_excel(FileName, sheet = "2012"))
+
+  ### Detail ###
+  # Load data
+  BEADetail <- as.data.frame(readxl::read_excel(FileName, sheet = as.character(schema_year)))
   ## Commodity & Value Added
   DetailCommVA <- BEADetail[!is.na(BEADetail[, 2]), c(1:2)][-1, ]
   commodity_range <- c(1:(which(DetailCommVA[, 1] == "T005") - 1))
+  # value added range in MUT Use table
   va_range <- c((length(commodity_range) + 2):(which(DetailCommVA[, 1] == "T006") - 1))
+  # Value added range from SUT
+  # va_range <- c((length(commodity_range) + 2):(which(DetailCommVA[, 1] == "VABAS") - 1))
+  # va_range <- append(va_range,c((max(va_range) + 3):(which(DetailCommVA[, 1] == "VAPRO") - 1)))
+  
   # Commodity
   BEADetailCommodityCodeName <- DetailCommVA[commodity_range, ]
-  colnames(BEADetailCommodityCodeName) <- c("BEA_2012_Detail_Commodity_Code",
-                                            "BEA_2012_Detail_Commodity_Name")
+  colnames(BEADetailCommodityCodeName) <- c(paste0("BEA_",schema_year,"_Detail_Commodity_Code"),
+                                            paste0("BEA_",schema_year,"_Detail_Commodity_Name"))
   rownames(BEADetailCommodityCodeName) <- NULL
   # Value Added
   BEADetailValueAddedCodeName <- DetailCommVA[va_range, ]
-  colnames(BEADetailValueAddedCodeName) <- c("BEA_2012_Detail_ValueAdded_Code",
-                                             "BEA_2012_Detail_ValueAdded_Name")
+  colnames(BEADetailValueAddedCodeName) <- c(paste0("BEA_",schema_year,"_Detail_ValueAdded_Code"),
+                                             paste0("BEA_",schema_year,"_Detail_ValueAdded_Name"))
   rownames(BEADetailValueAddedCodeName) <- NULL
   ## Industry & Final Demand
   DetailIndFD <- as.data.frame(t(BEADetail[!is.na(BEADetail[, 3]), ][2:1, -c(1:2)]))
   industry_range <- c(1:(which(DetailIndFD[, 1] == "T001") - 1))
-  fd_range <- c((length(industry_range) + 2):(which(DetailIndFD[, 1] == "T004") - 1))
+  
+  # FD range from MUT Use
+  fd_range <- c((length(industry_range) + 2):(which(DetailIndFD[, 2] == "Total Final Uses (GDP)") - 1))
+
+  # FD range from SUT Use
+  # fd_range <- c((length(industry_range) + 2):(which(DetailIndFD[, 1] == "T019") - 1))
+  
   # Industry
   BEADetailIndustryCodeName <- DetailIndFD[industry_range, ]
-  colnames(BEADetailIndustryCodeName) <- c("BEA_2012_Detail_Industry_Code",
-                                           "BEA_2012_Detail_Industry_Name")
+  colnames(BEADetailIndustryCodeName) <- c(paste0("BEA_",schema_year,"_Detail_Industry_Code"),
+                                           paste0("BEA_",schema_year,"_Detail_Industry_Name"))
   rownames(BEADetailIndustryCodeName) <- NULL
   # Final Demand
   BEADetailFinalDemandCodeName <-  DetailIndFD[fd_range, ]
-  colnames(BEADetailFinalDemandCodeName) <- c("BEA_2012_Detail_FinalDemand_Code",
-                                              "BEA_2012_Detail_FinalDemand_Name")
+  colnames(BEADetailFinalDemandCodeName) <- c(paste0("BEA_",schema_year,"_Detail_FinalDemand_Code"),
+                                              paste0("BEA_",schema_year,"_Detail_FinalDemand_Name"))
   rownames(BEADetailFinalDemandCodeName) <- NULL
 
   ### Summary ###
   # Load data
-  FileName <- file.path("inst/extdata/AllTablesIO",
+  FileName <- file.path(dir, "AllTableIO",
                         files[startsWith(files, "IOUse_Before_Redefinitions_PRO") &
-                                endsWith(files, "Summary.xlsx")])
+                              endsWith(files, "Summary.xlsx")])
+  # FileName <- file.path(dir, "AllTablesSUP",
+  #                       files[startsWith(files, "Use_Tables") &
+  #                               endsWith(files, "Summary.xlsx")])
+  
   date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  BEASummary <- as.data.frame(readxl::read_excel(FileName, sheet = "2012"))
+  BEASummary <- as.data.frame(readxl::read_excel(FileName, sheet = as.character(schema_year)))
   ## Commodity & Value Added
   SummaryCommVA <- BEASummary[!is.na(BEASummary[, 2]), c(1:2)][-c(1:2), ]
   commodity_range <- c(1:(which(SummaryCommVA[, 2] == "Total Intermediate") - 1))
   va_range <- c((length(commodity_range) + 2):(which(SummaryCommVA[, 2] == "Total Value Added") - 1))
   # Commodity
   BEASummaryCommodityCodeName <- SummaryCommVA[commodity_range, ]
-  colnames(BEASummaryCommodityCodeName) <- c("BEA_2012_Summary_Commodity_Code",
-                                            "BEA_2012_Summary_Commodity_Name")
+  colnames(BEASummaryCommodityCodeName) <- c(paste0("BEA_",schema_year, "_Summary_Commodity_Code"),
+                                             paste0("BEA_",schema_year, "_Summary_Commodity_Name"))
   rownames(BEASummaryCommodityCodeName) <- NULL
   # Value Added
   BEASummaryValueAddedCodeName <- SummaryCommVA[va_range, ]
-  colnames(BEASummaryValueAddedCodeName) <- c("BEA_2012_Summary_ValueAdded_Code",
-                                             "BEA_2012_Summary_ValueAdded_Name")
+  colnames(BEASummaryValueAddedCodeName) <- c(paste0("BEA_",schema_year, "_Summary_ValueAdded_Code"),
+                                              paste0("BEA_",schema_year, "_Summary_ValueAdded_Name"))
   rownames(BEASummaryValueAddedCodeName) <- NULL
   ## Industry & Final Demand
   SummaryIndFD <- as.data.frame(t(BEASummary[!is.na(BEASummary[, 3]), ][1:2, -c(1:2)]))
@@ -1353,35 +993,35 @@ getBEACodeName2012Schema <- function() {
   fd_range <- c((length(industry_range) + 2):(which(SummaryIndFD[, 2] == "Total Final Uses (GDP)") - 1))
   # Industry
   BEASummaryIndustryCodeName <- SummaryIndFD[industry_range, ]
-  colnames(BEASummaryIndustryCodeName) <- c("BEA_2012_Summary_Industry_Code",
-                                            "BEA_2012_Summary_Industry_Name")
+  colnames(BEASummaryIndustryCodeName) <- c(paste0("BEA_",schema_year, "_Summary_Industry_Code"),
+                                            paste0("BEA_",schema_year, "_Summary_Industry_Name"))
   rownames(BEASummaryIndustryCodeName) <- NULL
   # Final Demand
   BEASummaryFinalDemandCodeName <-  SummaryIndFD[fd_range, ]
-  colnames(BEASummaryFinalDemandCodeName) <- c("BEA_2012_Summary_FinalDemand_Code",
-                                               "BEA_2012_Summary_FinalDemand_Name")
+  colnames(BEASummaryFinalDemandCodeName) <- c(paste0("BEA_",schema_year, "_Summary_FinalDemand_Code"),
+                                               paste0("BEA_",schema_year, "_Summary_FinalDemand_Name"))
   rownames(BEASummaryFinalDemandCodeName) <- NULL
 
   ### Sector ###
   # Load data
-  FileName <- file.path("inst/extdata/AllTablesIO",
+  FileName <- file.path(dir, "AllTableIO",
                         files[startsWith(files, "IOUse_Before_Redefinitions_PRO") &
-                                endsWith(files, "Sector.xlsx")])
+                              endsWith(files, "Sector.xlsx")])
   date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  BEASector <- as.data.frame(readxl::read_excel(FileName, sheet = "2012"))
+  BEASector <- as.data.frame(readxl::read_excel(FileName, sheet = as.character(schema_year)))
   ## Commodity & Value Added
   SectorCommVA <- BEASector[!is.na(BEASector[, 2]), c(1:2)][-c(1:2), ]
   commodity_range <- c(1:(which(SectorCommVA[, 2] == "Total Intermediate") - 1))
   va_range <- c((length(commodity_range) + 2):(which(SectorCommVA[, 2] == "Total Value Added") - 1))
   # Commodity
   BEASectorCommodityCodeName <- SectorCommVA[commodity_range, ]
-  colnames(BEASectorCommodityCodeName) <- c("BEA_2012_Sector_Commodity_Code",
-                                            "BEA_2012_Sector_Commodity_Name")
+  colnames(BEASectorCommodityCodeName) <- c(paste0("BEA_",schema_year, "_Sector_Commodity_Code"),
+                                            paste0("BEA_",schema_year, "_Sector_Commodity_Name"))
   rownames(BEASectorCommodityCodeName) <- NULL
   # Value Added
   BEASectorValueAddedCodeName <- SectorCommVA[va_range, ]
-  colnames(BEASectorValueAddedCodeName) <- c("BEA_2012_Sector_ValueAdded_Code",
-                                             "BEA_2012_Sector_ValueAdded_Name")
+  colnames(BEASectorValueAddedCodeName) <- c(paste0("BEA_",schema_year, "_Sector_ValueAdded_Code"),
+                                             paste0("BEA_",schema_year, "_Sector_ValueAdded_Name"))
   rownames(BEASectorValueAddedCodeName) <- NULL
   ## Industry & Final Demand
   SectorIndFD <- as.data.frame(t(BEASector[!is.na(BEASector[, 3]), ][1:2, -c(1:2)]))
@@ -1389,51 +1029,47 @@ getBEACodeName2012Schema <- function() {
   fd_range <- c((length(industry_range) + 2):(which(SectorIndFD[, 2] == "Total Final Uses (GDP)") - 1))
   # Industry
   BEASectorIndustryCodeName <- SectorIndFD[industry_range, ]
-  colnames(BEASectorIndustryCodeName) <- c("BEA_2012_Sector_Industry_Code",
-                                           "BEA_2012_Sector_Industry_Name")
+  colnames(BEASectorIndustryCodeName) <- c(paste0("BEA_",schema_year, "_Sector_Industry_Code"),
+                                           paste0("BEA_",schema_year, "_Sector_Industry_Name"))
   rownames(BEASectorIndustryCodeName) <- NULL
   # Final Demand
   BEASectorFinalDemandCodeName <-  SectorIndFD[fd_range, ]
-  colnames(BEASectorFinalDemandCodeName) <- c("BEA_2012_Sector_FinalDemand_Code",
-                                              "BEA_2012_Sector_FinalDemand_Name")
+  colnames(BEASectorFinalDemandCodeName) <- c(paste0("BEA_",schema_year, "_Sector_FinalDemand_Code"),
+                                              paste0("BEA_",schema_year, "_Sector_FinalDemand_Name"))
   rownames(BEASectorFinalDemandCodeName) <- NULL
 
   ### Put the data.frames in a list
-  BEACodeNameList <- list("Detail_IndustryCodeName_2012"     = BEADetailIndustryCodeName,
-                          "Detail_CommodityCodeName_2012"    = BEADetailCommodityCodeName,
-                          "Detail_ValueAddedCodeName_2012"   = BEADetailValueAddedCodeName,
-                          "Detail_FinalDemandCodeName_2012"  = BEADetailFinalDemandCodeName,
-                          "Summary_IndustryCodeName_2012"    = BEASummaryIndustryCodeName,
-                          "Summary_CommodityCodeName_2012"   = BEASummaryCommodityCodeName,
-                          "Summary_ValueAddedCodeName_2012"  = BEASummaryValueAddedCodeName,
-                          "Summary_FinalDemandCodeName_2012" = BEASummaryFinalDemandCodeName,
-                          "Sector_IndustryCodeName_2012"     = BEASectorIndustryCodeName,
-                          "Sector_CommodityCodeName_2012"    = BEASectorCommodityCodeName,
-                          "Sector_ValueAddedCodeName_2012"   = BEASectorValueAddedCodeName,
-                          "Sector_FinalDemandCodeName_2012"  = BEASectorFinalDemandCodeName)
+  BEACodeNameList <- list("Detail_IndustryCodeName"     = BEADetailIndustryCodeName,
+                          "Detail_CommodityCodeName"    = BEADetailCommodityCodeName,
+                          "Detail_ValueAddedCodeName"   = BEADetailValueAddedCodeName,
+                          "Detail_FinalDemandCodeName"  = BEADetailFinalDemandCodeName,
+                          "Summary_IndustryCodeName"    = BEASummaryIndustryCodeName,
+                          "Summary_CommodityCodeName"   = BEASummaryCommodityCodeName,
+                          "Summary_ValueAddedCodeName"  = BEASummaryValueAddedCodeName,
+                          "Summary_FinalDemandCodeName" = BEASummaryFinalDemandCodeName,
+                          "Sector_IndustryCodeName"     = BEASectorIndustryCodeName,
+                          "Sector_CommodityCodeName"    = BEASectorCommodityCodeName,
+                          "Sector_ValueAddedCodeName"   = BEASectorValueAddedCodeName,
+                          "Sector_FinalDemandCodeName"  = BEASectorFinalDemandCodeName)
   BEACodeNameList <- lapply(BEACodeNameList, cleanSectorNames)
   BEACodeNameList <- lapply(BEACodeNameList, cleanSectorCodes)
   ### Save and Document data
+  ls <- list("url" = url,
+             "date_last_modified" = date_last_modified,
+             "date_accessed" = date_accessed)
   for (data_name in names(BEACodeNameList)) {
-    # Write data to .rda
-    writeDatatoRDA(data = BEACodeNameList[[data_name]], data_name = data_name)
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = data_name,
-                        year = 2012,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
+    writeFile(df = BEACodeNameList[[data_name]], year = schema_year,
+              name = paste0(data_name, "_", schema_year), ls = ls,
+              schema_year = NULL)
   }
 }
 
-# Get Detail Margins (Before Redefinition, 2012 schema) table from BEA static URL
-getBEADetailMarginsBeforeRedef2012Schema <- function(year) {
+# Get Detail Margins (Before Redefinition) table from BEA static URL
+getBEADetailMarginsBeforeRedef <- function(year) {
   # Download data
-  file <- "Margins_Before_Redefinitions_2007_2012_DET.xlsx"
-  url <- file.path("https://apps.bea.gov/industry/xls/underlying-estimates", file)
-  FileName <- file.path("inst/extdata", file)
+  file <- "Margins_Before_Redefinitions_2017_DET.xlsx"
+  url <- file.path(url_ls["margins"], file)
+  FileName <- file.path(dir, file)
   if (!file.exists(FileName)) {
     utils::download.file(url, FileName, mode = "wb")
   }
@@ -1450,304 +1086,177 @@ getBEADetailMarginsBeforeRedef2012Schema <- function(year) {
   Margins[, 5:ncol(Margins)] <- as.data.frame(lapply(Margins[, 5:ncol(Margins)],
                                                      as.numeric),
                                               check.names = FALSE)
-  # Write data to .rda
-  writeDatatoRDA(data = Margins,
-                 data_name = paste0("Detail_Margins_", year, "_BeforeRedef"))
-  # Write metadata to JSON
-  writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Detail_Margins_", year, "_BeforeRedef"),
-                      year = year,
-                      source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = "2022-03-04", # page last modified
-                      date_accessed = as.character(as.Date(file.mtime(FileName))))
-}
-
-
-# Download all Supply and Use tables from BEA iTable
-getBEASupplyUseTables <- function() {
-  # Create the placeholder file
-  AllTablesSUP <- "inst/extdata/AllTablesIOSUP.zip"
-  # Download all BEA IO tables into the placeholder file
-  url <- "https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"
-  if (!file.exists(AllTablesSUP)) {
-    utils::download.file(url, AllTablesSUP, mode = "wb")
-  }
-  # Get the name of all files in the zip archive
-  files <- unzip(AllTablesSUP, list = TRUE)
-  fname <- files[files$Length > 0, ]$Name
-  if (all(fname == basename(fname))) {
-    exdir <- "inst/extdata/AllTablesSUP"
-  } else {
-    exdir <- "inst/extdata/"
-  }
-  # Unzip the file to the designated directory
-  unzip(AllTablesSUP, files = fname, exdir = exdir,
-        overwrite = TRUE, setTimes = TRUE)
-  # Create output
   ls <- list("url" = url,
-             "date_accessed" = as.character(as.Date(file.mtime(AllTablesSUP))),
-             "files" = basename(fname))
-  return(ls)
+             "date_accessed" = as.character(as.Date(file.mtime(FileName))),
+             "date_last_modified" = "2024-02-01") # page last modified 
+  writeFile(df = Margins, year = year,
+            name = paste0("Detail_Margins_", year, "_BeforeRedef"), ls = ls,
+            schema_year = year)
 }
 
-# Get BEA Detail Supply (2012 schema) table from static Excel
-getBEADetailSupply2012Schema <- function(year) {
-  # Download data
-  url <- getBEASupplyUseTables()[["url"]]
-  date_accessed <- getBEASupplyUseTables()[["date_accessed"]]
-  files <- getBEASupplyUseTables()[["files"]]
-  # Load data
-  FileName <- file.path("inst/extdata/AllTablesSUP",
-                        files[startsWith(files, "Supply") &
-                                endsWith(files, "DET.xlsx")])
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
+
+# Get BEA Detail Supply table from static Excel
+getBEADetailSupply <- function(year) {
+  ls <- getBEASupplyUseTables()
+  FileName <- file.path(dir, "AllTablesSUP",
+                        ls[["files"]][startsWith(ls[["files"]], "Supply") &
+                                      endsWith(ls[["files"]], "DET.xlsx")])
+  ls["date_last_modified"] <- "2024-02-01" # page last modified 
   DetailSupply <- as.data.frame(readxl::read_excel(FileName,
                                                    sheet = as.character(year)))
-  # Assign row and column names
-  DetailSupply <- DetailSupply[!is.na(DetailSupply[, 2]), ]
-  colnames(DetailSupply) <- DetailSupply[1, ]
-  rownames(DetailSupply) <- DetailSupply$Code
-  # Trim table, convert all values to numeric, assign row names
-  DetailSupply <- as.data.frame(lapply(DetailSupply[-1, -c(1:2)], as.numeric),
-                                check.names = FALSE,
-                                row.names = DetailSupply[-1, 1])
-  # Replace NA with zero
-  DetailSupply[is.na(DetailSupply)] <- 0
-  # Write data to .rda
-  writeDatatoRDA(data = DetailSupply,
-                 data_name = paste0("Detail_Supply_", year))
-  # Write metadata to JSON
-  writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Detail_Supply_", year),
-                      year = year,
-                      source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = date_last_modified,
-                      date_accessed = date_accessed)
+  DetailSupply <- processDetailMatrix(DetailSupply)
+  writeFile(df = DetailSupply, year = year,
+            name = paste0("Detail_Supply_", year), ls = ls,
+            schema_year = year)
 }
 
 
-# Get BEA Detail Use (under the Supply-Use framework, 2012 schema) table from static Excel
-getBEADetailUseSUT2012Schema <- function(year) {
-  # Download data
-  url <- getBEASupplyUseTables()[["url"]]
-  date_accessed <- getBEASupplyUseTables()[["date_accessed"]]
-  files <- getBEASupplyUseTables()[["files"]]
-  # Load data
-  FileName <- file.path("inst/extdata/AllTablesSUP",
-                        files[startsWith(files, "Use") &
-                                endsWith(files, "DET.xlsx")])
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
+# Get BEA Detail Use (under the Supply-Use framework schema) table from static Excel
+getBEADetailUseSUT <- function(year) {
+  ls <- getBEASupplyUseTables()
+  FileName <- file.path(dir, "AllTablesSUP",
+                        ls[["files"]][startsWith(ls[["files"]], "Use") &
+                                        endsWith(ls[["files"]], "DET.xlsx")])
+  ls["date_last_modified"] = "2024-02-01" # page last modified 
   DetailUse <- as.data.frame(readxl::read_excel(FileName,
                                                    sheet = as.character(year)))
-  # Assign row and column names
-  DetailUse <- DetailUse[!is.na(DetailUse[, 2]), ]
-  colnames(DetailUse) <- DetailUse[1, ]
-  rownames(DetailUse) <- DetailUse$Code
-  # Trim table, convert all values to numeric, assign row names
-  DetailUse <- as.data.frame(lapply(DetailUse[-1, -c(1:2)], as.numeric),
-                                check.names = FALSE,
-                                row.names = DetailUse[-1, 1])
-  # Replace NA with zero
-  DetailUse[is.na(DetailUse)] <- 0
-  # Write data to .rda
-  writeDatatoRDA(data = DetailUse,
-                 data_name = paste0("Detail_Use_SUT_", year))
-  # Write metadata to JSON
-  writeMetadatatoJSON(package = "useeior",
-                      name = paste0("Detail_Use_SUT_", year),
-                      year = year,
-                      source = "US Bureau of Economic Analysis",
-                      url = url,
-                      date_last_modified = date_last_modified,
-                      date_accessed = date_accessed)
+  DetailUse <- processDetailMatrix(DetailUse)
+  writeFile(df = DetailUse, year = year,
+            name = paste0("Detail_Use_SUT_", year), ls = ls,
+            schema_year = year)
 }
 
 
-# Get BEA Summary Supply (2012 schema) table from static Excel
-getBEASummarySupply2012Schema <- function() {
-  # Download data
-  url <- getBEASupplyUseTables()[["url"]]
-  date_accessed <- getBEASupplyUseTables()[["date_accessed"]]
-  files <- getBEASupplyUseTables()[["files"]]
+# Get BEA Summary Supply table from static Excel
+getBEASummarySupply <- function(year) {
+  ls <- getBEASupplyUseTables()
   # Prepare file name
-  file <- files[startsWith(files, "Supply") & endsWith(files, "SUM.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesSUP", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
+  file <- ls[["files"]][startsWith(ls[["files"]], "Supply") & 
+                          endsWith(ls[["files"]], "Summary.xlsx")]
+  FileName <- file.path(dir, "AllTablesSUP", file)
+  end_year <- 2022
   # Load data
-  for (year in 2010:end_year) {
+  for (y in 2017:end_year) {
     SummarySupply <- as.data.frame(readxl::read_excel(FileName,
-                                                      sheet = as.character(year)))
-    # Trim table, assign column names
-    SummarySupply <- SummarySupply[!is.na(SummarySupply[, 2]), ]
-    colnames(SummarySupply) <- SummarySupply[1, ]
-    colname_check <- is.na(colnames(SummarySupply))
-    colnames(SummarySupply)[colname_check] <- SummarySupply[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SummarySupply[is.na(SummarySupply[, 1]), 1] <- SummarySupply[is.na(SummarySupply[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SummarySupply <- as.data.frame(lapply(SummarySupply[-c(1:2), -c(1:2)], as.numeric),
-                                   check.names = FALSE,
-                                   row.names = SummarySupply[-c(1:2), 1])
-    # Replace NA with zero
-    SummarySupply[is.na(SummarySupply)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SummarySupply,
-                   data_name = paste0("Summary_Supply_", year))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Summary_Supply_", year),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
+                                                      sheet = as.character(y)))
+    SummarySupply <- processSummaryMatrix(SummarySupply)
+    writeFile(df = SummarySupply, year = y,
+              name = paste0("Summary_Supply_", y), ls = ls,
+              schema_year = year)
   }
 }
 
-# Get BEA Summary Use (under the Supply-Use framework, 2012 schema) table from static Excel
-getBEASummaryUseSUT2012Schema <- function() {
-  # Download data
-  url <- getBEASupplyUseTables()[["url"]]
-  date_accessed <- getBEASupplyUseTables()[["date_accessed"]]
-  files <- getBEASupplyUseTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "Use") & endsWith(files, "Sum.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesSUP", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
+# Get BEA Summary Use under the Supply-Use framework from static Excel
+getBEASummaryUseSUT <- function(year) {
+  ls <- getBEASupplyUseTables()
+  file <- ls[["files"]][startsWith(ls[["files"]], "Use") &
+                          endsWith(ls[["files"]], "Summary.xlsx")]
+  FileName <- file.path(dir, "AllTablesSUP", file)
+  end_year <- 2022
   # Load data
-  for (year in 2010:end_year) {
+  for (y in 2017:end_year) {
     SummaryUse <- as.data.frame(readxl::read_excel(FileName,
                                                    sheet = as.character(year)))
-    # Trim table, assign column names
-    SummaryUse <- SummaryUse[!is.na(SummaryUse[, 2]), ]
-    colnames(SummaryUse) <- SummaryUse[1, ]
-    colname_check <- is.na(colnames(SummaryUse))
-    colnames(SummaryUse)[colname_check] <- SummaryUse[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SummaryUse[is.na(SummaryUse[, 1]), 1] <- SummaryUse[is.na(SummaryUse[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SummaryUse <- as.data.frame(lapply(SummaryUse[-c(1:2), -c(1:2)], as.numeric),
-                                check.names = FALSE,
-                                row.names = SummaryUse[-c(1:2), 1])
-    # Replace NA with zero
-    SummaryUse[is.na(SummaryUse)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SummaryUse,
-                   data_name = paste0("Summary_Use_SUT_", year))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Summary_Use_SUT_", year),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
+    SummaryUse <- processSummaryMatrix(SummaryUse)
+    writeFile(df = SummaryUse, year = y,
+              name = paste0("Summary_Use_SUT_", y), ls = ls,
+              schema_year = year)
   }
 }
 
 
-# Get BEA Sector Supply (2012 schema) table from static Excel
-getBEASectorSupply2012Schema <- function() {
-  # Download data
-  url <- getBEASupplyUseTables()[["url"]]
-  date_accessed <- getBEASupplyUseTables()[["date_accessed"]]
-  files <- getBEASupplyUseTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "Supply") & endsWith(files, "SEC.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesSUP", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
-  # Load data
-  for (year in 2010:end_year) {
-    SectorSupply <- as.data.frame(readxl::read_excel(FileName,
-                                                     sheet = as.character(year)))
-    # Trim table, assign column names
-    SectorSupply <- SectorSupply[!is.na(SectorSupply[, 2]), ]
-    colnames(SectorSupply) <- SectorSupply[1, ]
-    colname_check <- is.na(colnames(SectorSupply))
-    colnames(SectorSupply)[colname_check] <- SectorSupply[2, colname_check]
-    # Assign T017 to Total industry supply if not provided
-    if (is.na(SectorSupply[SectorSupply$`Commodities/Industries` == "Total industry supply", 1])) {
-      SectorSupply[SectorSupply$`Commodities/Industries` == "Total industry supply", 1] <- "T017"
-    }
-    # Fill NA in code column with corresponding name
-    SectorSupply[is.na(SectorSupply[, 1]), 1] <- SectorSupply[is.na(SectorSupply[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SectorSupply <- as.data.frame(lapply(SectorSupply[-c(1:2), -c(1:2)], as.numeric),
-                                  check.names = FALSE,
-                                  row.names = SectorSupply[-c(1:2), 1])
-    # Replace NA with zero
-    SectorSupply[is.na(SectorSupply)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SectorSupply,
-                   data_name = paste0("Sector_Supply_", year))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Sector_Supply_", year),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
-  }
-}
-
-
-# Get BEA Sector Use (under the Supply-Use framework, 2012 schema) table from static Excel
-getBEASectorUseSUT2012Schema <- function() {
-  # Download data
-  url <- getBEASupplyUseTables()[["url"]]
-  date_accessed <- getBEASupplyUseTables()[["date_accessed"]]
-  files <- getBEASupplyUseTables()[["files"]]
-  # Prepare file name
-  file <- files[startsWith(files, "Use") & endsWith(files, "SECT.xlsx")]
-  FileName <- file.path("inst/extdata/AllTablesSUP", file)
-  date_last_modified <- as.character(as.Date(file.mtime(FileName)))
-  # Find latest data year
-  file_split <- unlist(stringr::str_split(file, pattern = "_"))
-  year_range <- file_split[length(file_split) - 1]
-  end_year <- sub(".*-", "", year_range)
-  # Load data
-  for (year in 2010:end_year) {
-    SectorUse <- as.data.frame(readxl::read_excel(FileName,
-                                                  sheet = as.character(year)))
-    # Trim table, assign column names
-    SectorUse <- SectorUse[!is.na(SectorUse[, 2]), ]
-    colnames(SectorUse) <- SectorUse[1, ]
-    colname_check <- is.na(colnames(SectorUse))
-    colnames(SectorUse)[colname_check] <- SectorUse[2, colname_check]
-    # Fill NA in code column with corresponding name
-    SectorUse[is.na(SectorUse[, 1]), 1] <- SectorUse[is.na(SectorUse[, 1]), 2]
-    # Convert all values to numeric, assign row names
-    SectorUse <- as.data.frame(lapply(SectorUse[-c(1:2), -c(1:2)], as.numeric),
-                               check.names = FALSE,
-                               row.names = SectorUse[-c(1:2), 1])
-    # Replace NA with zero
-    SectorUse[is.na(SectorUse)] <- 0
-    # Write data to .rda
-    writeDatatoRDA(data = SectorUse,
-                   data_name = paste0("Sector_Use_SUT_", year))
-    # Write metadata to JSON
-    writeMetadatatoJSON(package = "useeior",
-                        name = paste0("Sector_Use_SUT_", year),
-                        year = year,
-                        source = "US Bureau of Economic Analysis",
-                        url = url,
-                        date_last_modified = date_last_modified,
-                        date_accessed = date_accessed)
-  }
-}
+# # Get BEA Sector Supply table from static Excel
+# getBEASectorSupply <- function() {
+#   # Download data
+#   url <- getBEASupplyUseTables()[["url"]]
+#   date_accessed <- getBEASupplyUseTables()[["date_accessed"]]
+#   files <- getBEASupplyUseTables()[["files"]]
+#   # Prepare file name
+#   file <- files[startsWith(files, "Supply") & endsWith(files, "SEC.xlsx")]
+#   FileName <- file.path("inst/extdata/AllTablesSUP", file)
+#   date_last_modified <- as.character(as.Date(file.mtime(FileName)))
+#   # Find latest data year
+#   file_split <- unlist(stringr::str_split(file, pattern = "_"))
+#   year_range <- file_split[length(file_split) - 1]
+#   end_year <- sub(".*-", "", year_range)
+#   # Load data
+#   for (year in 2010:end_year) {
+#     SectorSupply <- as.data.frame(readxl::read_excel(FileName,
+#                                                      sheet = as.character(year)))
+#     # Trim table, assign column names
+#     SectorSupply <- SectorSupply[!is.na(SectorSupply[, 2]), ]
+#     colnames(SectorSupply) <- SectorSupply[1, ]
+#     colname_check <- is.na(colnames(SectorSupply))
+#     colnames(SectorSupply)[colname_check] <- SectorSupply[2, colname_check]
+#     # Assign T017 to Total industry supply if not provided
+#     if (is.na(SectorSupply[SectorSupply$`Commodities/Industries` == "Total industry supply", 1])) {
+#       SectorSupply[SectorSupply$`Commodities/Industries` == "Total industry supply", 1] <- "T017"
+#     }
+#     # Fill NA in code column with corresponding name
+#     SectorSupply[is.na(SectorSupply[, 1]), 1] <- SectorSupply[is.na(SectorSupply[, 1]), 2]
+#     # Convert all values to numeric, assign row names
+#     SectorSupply <- as.data.frame(lapply(SectorSupply[-c(1:2), -c(1:2)], as.numeric),
+#                                   check.names = FALSE,
+#                                   row.names = SectorSupply[-c(1:2), 1])
+#     # Replace NA with zero
+#     SectorSupply[is.na(SectorSupply)] <- 0
+#     # Write data to .rda
+#     writeDatatoRDA(data = SectorSupply,
+#                    data_name = paste0("Sector_Supply_", year))
+#     # Write metadata to JSON
+#     writeMetadatatoJSON(package = "useeior",
+#                         name = paste0("Sector_Supply_", year),
+#                         year = year,
+#                         source = "US Bureau of Economic Analysis",
+#                         url = url,
+#                         date_last_modified = date_last_modified,
+#                         date_accessed = date_accessed)
+#   }
+# }
+# 
+# 
+# # Get BEA Sector Use (under the Supply-Use framework, 2012 schema) table from static Excel
+# getBEASectorUseSUT2012Schema <- function() {
+#   # Download data
+#   url <- getBEASupplyUseTables()[["url"]]
+#   date_accessed <- getBEASupplyUseTables()[["date_accessed"]]
+#   files <- getBEASupplyUseTables()[["files"]]
+#   # Prepare file name
+#   file <- files[startsWith(files, "Use") & endsWith(files, "SECT.xlsx")]
+#   FileName <- file.path("inst/extdata/AllTablesSUP", file)
+#   date_last_modified <- as.character(as.Date(file.mtime(FileName)))
+#   # Find latest data year
+#   file_split <- unlist(stringr::str_split(file, pattern = "_"))
+#   year_range <- file_split[length(file_split) - 1]
+#   end_year <- sub(".*-", "", year_range)
+#   # Load data
+#   for (year in 2010:end_year) {
+#     SectorUse <- as.data.frame(readxl::read_excel(FileName,
+#                                                   sheet = as.character(year)))
+#     # Trim table, assign column names
+#     SectorUse <- SectorUse[!is.na(SectorUse[, 2]), ]
+#     colnames(SectorUse) <- SectorUse[1, ]
+#     colname_check <- is.na(colnames(SectorUse))
+#     colnames(SectorUse)[colname_check] <- SectorUse[2, colname_check]
+#     # Fill NA in code column with corresponding name
+#     SectorUse[is.na(SectorUse[, 1]), 1] <- SectorUse[is.na(SectorUse[, 1]), 2]
+#     # Convert all values to numeric, assign row names
+#     SectorUse <- as.data.frame(lapply(SectorUse[-c(1:2), -c(1:2)], as.numeric),
+#                                check.names = FALSE,
+#                                row.names = SectorUse[-c(1:2), 1])
+#     # Replace NA with zero
+#     SectorUse[is.na(SectorUse)] <- 0
+#     # Write data to .rda
+#     writeDatatoRDA(data = SectorUse,
+#                    data_name = paste0("Sector_Use_SUT_", year))
+#     # Write metadata to JSON
+#     writeMetadatatoJSON(package = "useeior",
+#                         name = paste0("Sector_Use_SUT_", year),
+#                         year = year,
+#                         source = "US Bureau of Economic Analysis",
+#                         url = url,
+#                         date_last_modified = date_last_modified,
+#                         date_accessed = date_accessed)
+#   }
+# }
 
diff --git a/data-raw/BEAData_Detail.R b/data-raw/BEAData_Detail.R
index bdb31c12..c2680cc5 100644
--- a/data-raw/BEAData_Detail.R
+++ b/data-raw/BEAData_Detail.R
@@ -1,45 +1,43 @@
 source("data-raw/BEAData.R")
+source("R/UtilityFunctions.R")
 
-schema_year <- 2012
+schema_year <- 2017
 
-# Download, save and document 2012 BEA Detail Make (Before Redef, 2012 schema)
-getBEADetailMakeBeforeRedef2012Schema(schema_year)
 
-# Download, save and document 2012 BEA Detail Use (PRO, Before Redef, 2012 schema)
-getBEADetailUsePROBeforeRedef2012Schema(schema_year)
+# Download, save and document BEA Detail Make (Before Redef)
+getBEADetailMakeBeforeRedef(schema_year)
 
-# Download, save and document 2012 BEA Detail Use (PUR, Before Redef, 2012 schema)
-getBEADetailUsePURBeforeRedef2012Schema(schema_year)
+# Download, save and document BEA Detail Use (PRO, Before Redef)
+getBEADetailUsePROBeforeRedef(schema_year)
 
-# Download, save and document 2012 BEA Detail Make (After Redef, 2012 schema)
-getBEADetailMakeAfterRedef2012Schema(schema_year)
+# Download, save and document BEA Detail Use (PUR, Before Redef)
+getBEADetailUsePURBeforeRedef(schema_year)
 
-# Download, save and document 2012 BEA Detail Use (PRO, After Redef, 2012 schema)
-getBEADetailUsePROAfterRedef2012Schema(schema_year)
+# Download, save and document BEA Detail Make (After Redef)
+getBEADetailMakeAfterRedef(schema_year)
 
-# Download, save and document 2012 BEA Detail Use (PUR, After Redef, 2012 schema)
-getBEADetailUsePURAfterRedef2012Schema(schema_year)
+# Download, save and document BEA Detail Use (PRO, After Redef)
+getBEADetailUsePROAfterRedef(schema_year)
 
+# Download, save and document BEA Detail Use (PUR, After Redef)
+getBEADetailUsePURAfterRedef(schema_year)
 
-# Download, save and document 2012 BEA Summary Use (PUR, Before Redef, 2012 schema)
-getBEASummaryUsePURBeforeRedef2012Schema(schema_year)
+# Download, save and document BEA Summary Use (PUR, Before Redef)
+getBEASummaryUsePURBeforeRedef(schema_year)
 
-# Download, save and document 2012 BEA Sector Use (PUR, Before Redef, 2012 schema)
-getBEASectorUsePURBeforeRedef2012Schema(schema_year)
+# Download, save and document BEA Detail Import matrix
+getBEADetailImportBeforeRedef(schema_year)
 
-# Download, save and document 2012 BEA Detail Import matrix
-getBEADetailImportBeforeRedef2012Schema(schema_year)
+# Download, save and document BEA Detail, Summary, and Sector Code and Name
+getBEACodeName(schema_year)
 
-# Download, save and document BEA Detail, Summary, and Sector Code and Name (2012 schema)
-getBEACodeName2012Schema()
-
-# Download, save and document 2012 BEA Detail Margins table
-getBEADetailMarginsBeforeRedef2012Schema(schema_year)
+# Download, save and document BEA Detail Margins table
+getBEADetailMarginsBeforeRedef(schema_year)
 
 ## Supply and Use Tables
-# Download, save and document 2012 BEA Detail Supply (2012 schema)
-getBEADetailSupply2012Schema(schema_year)
+# Download, save and document BEA Detail Supply
+getBEADetailSupply(schema_year)
 
-# Download, save and document 2012 BEA Detail Supply (2012 schema)
-getBEADetailUseSUT2012Schema(schema_year)
+# Download, save and document BEA Detail Use
+getBEADetailUseSUT(schema_year)
 
diff --git a/data-raw/BEAData_Support.R b/data-raw/BEAData_Support.R
index 9552b49c..e56fe5b8 100644
--- a/data-raw/BEAData_Support.R
+++ b/data-raw/BEAData_Support.R
@@ -1,55 +1,39 @@
 source("data-raw/BEAData.R")
+source("R/UtilityFunctions.R")
 
-## Annual Summary Make and Use
-# Download, save and document 2010-2020 BEA Summary Make (Before Redef, 2012 schema)
-getBEASummaryMakeBeforeRedef2012Schema()
-
-# Download, save and document 2010-2020 BEA Summary Use (PRO, Before Redef, 2012 schema)
-getBEASummaryUsePROBeforeRedef2012Schema()
-
-# Download, save and document 2010-2020 BEA Summary Make (After Redef, 2012 schema)
-getBEASummaryMakeAfterRedef2012Schema()
-
-# Download, save and document 2010-2020 BEA Summary Use (PRO, After Redef, 2012 schema)
-getBEASummaryUsePROAfterRedef2012Schema()
+schema_year <- 2017
+# 2017 - 2022 tables
 
 
-## Annual Sector Make and Use
-# Download, save and document 2010-2020 BEA Sector Make (Before Redef, 2012 schema)
-getBEASectorMakeBeforeRedef2012Schema()
-
-# Download, save and document 2010-2020 BEA Sector Use (PRO, Before Redef, 2012 schema)
-getBEASectorUsePROBeforeRedef2012Schema()
+## Annual Summary Make and Use
+# Download, save and document BEA Summary Make (Before Redef)
+getBEASummaryMakeBeforeRedef(schema_year)
 
-# Download, save and document 2010-2020 BEA Sector Make (After Redef, 2012 schema)
-getBEASectorMakeAfterRedef2012Schema()
+# Download, save and document BEA Summary Use (PRO, Before Redef)
+getBEASummaryUsePROBeforeRedef(schema_year)
 
-# Download, save and document 2010-2018 BEA Sector Use (PRO, After Redef, 2012 schema)
-getBEASectorUsePROAfterRedef2012Schema()
+# Download, save and document BEA Summary Make (After Redef)
+getBEASummaryMakeAfterRedef(schema_year)
 
+# Download, save and document BEA Summary Use (PRO, After Redef)
+getBEASummaryUsePROAfterRedef(schema_year)
 
 ## Supporting Data
-# Download, save and document 2010-2020 BEA Summary Import matrix
-getBEASummaryImportBeforeRedef2012Schema()
+# Download, save and document BEA Summary Import matrix
+getBEASummaryImportBeforeRedef(schema_year)
 
 # Download, save and document BEA Detail, Summary, and Sector Gross Output tables
-mapBEAGrossOutputtoIOIndustry2012Schema()
+mapBEAGrossOutputtoIOIndustry(schema_year)
 
-# Download, save and document BEA Detail, Summary, and Sector CPI tables since 2002
-mapBEACPItoIOIndustry2012Schema()
+# Download, save and document BEA Detail, Summary, and Sector CPI tables
+mapBEACPItoIOIndustry(schema_year)
 
-# Download, save and document BEA Summary and Sector Value Added tables since 2002
-mapBEAValueAddedtoIOIndustry2012Schema()
+# Download, save and document BEA Summary and Sector Value Added tables
+mapBEAValueAddedtoIOIndustry(schema_year)
 
 ## Supply and Use Tables
-# Download, save and document 2010-2020 BEA Summary Supply (2012 schema)
-getBEASummarySupply2012Schema()
-
-# Download, save and document 2010-2020 BEA Summary Use (2012 schema)
-getBEASummaryUseSUT2012Schema()
-
-# Download, save and document 2010-2020 BEA Sector Supply (2012 schema)
-getBEASectorSupply2012Schema()
+# Download, save and document BEA Summary Supply
+getBEASummarySupply(schema_year)
 
-# Download, save and document 2010-2020 BEA Sector Supply (2012 schema)
-getBEASectorUseSUT2012Schema()
+# Download, save and document BEA Summary Use
+getBEASummaryUseSUT(schema_year)
diff --git a/data-raw/MasterCrosswalk.R b/data-raw/MasterCrosswalk.R
index b13733fd..2f773f48 100644
--- a/data-raw/MasterCrosswalk.R
+++ b/data-raw/MasterCrosswalk.R
@@ -1,24 +1,35 @@
+source("data-raw/BEAData.R")
+source("R/CrosswalkFunctions.R")
+
+getReferenceFileName <- function () {
+  files <- getBEASupplyUseTables()[["files"]]
+  fileName <- file.path(rappdirs::user_data_dir(), "USEEIO-input", "AllTablesSUP",
+                        files[startsWith(files, "Use") &
+                                endsWith(files, "DET.xlsx")])
+  return(fileName)
+}
+
+# Get schema year of current data
+getSchemaYearfromFileName <- function (FileName) {
+  #get year from filename
+  year <- substr(FileName,unlist(gregexpr(pattern ='k_',FileName))+2,unlist(gregexpr(pattern ='_D',FileName))-1)
+  year <- as.integer(year)
+  return(year)
+}
+
 # Extract existing BEA-NAICS mapping from BEA IO table
-extractBEAtoNAICSfromIOTable <- function (year) { # year = 2012 or 2007
-  if (year == 2012) {
-    # Download the IO table
-    FileName <- "inst/extdata/IOUse_Before_Redefinitions_PRO_2007_2012_Detail.xlsx"
-    if(!file.exists(FileName)) {
-      utils::download.file("https://apps.bea.gov/industry/xls/io-annual/IOUse_Before_Redefinitions_PRO_DET.xlsx",
-                    FileName, mode = "wb")
-    }
-    # Load desired excel file
-    BEAtable <- as.data.frame(readxl::read_excel(FileName, sheet = "NAICS Codes", col_names = FALSE))
-    # Split to BEA and BEAtoNAICS
-    BEA <- BEAtable[-c(1:5), c(1:2, 4:5)]
-    BEAtoNAICS <- BEAtable[-c(1:5), c(4:5, 7)]
-  } else { #year = 2007
-    BEAtable <- as.data.frame(readxl::read_excel("inst/extdata/IOUse_Before_Redefinitions_PRO_2007_Detail.xlsx",
-                                                 sheet = "NAICS codes", col_names = FALSE))
-    # Split to BEA and BEAtoNAICS
-    BEA <- BEAtable[-c(1:4), 1:4]
-    BEAtoNAICS <- BEAtable[-c(1:4), c(3:4, 6)]
-  }
+extractBEAtoNAICSfromIOTable <- function () { 
+
+  FileName <- getReferenceFileName()
+  #get year from filename
+  year <- getSchemaYearfromFileName(FileName)
+  
+  # Load desired excel file
+  BEAtable <- as.data.frame(readxl::read_excel(FileName, sheet = "NAICS Codes", col_names = FALSE))
+  # Split to BEA and BEAtoNAICS
+  BEA <- BEAtable[-c(1:5), c(1:2, 4:5)]
+  BEAtoNAICS <- BEAtable[-c(1:5), c(4:5, 7)]
+
   
   # Extract BEA (Sector, Summary, Detail) Code and Name
   # BEA only
@@ -40,7 +51,7 @@ extractBEAtoNAICSfromIOTable <- function (year) { # year = 2012 or 2007
   # Split the NAICS column by comma (,)
   BEAtoNAICS <- cbind(BEAtoNAICS, do.call("rbind", strsplit(BEAtoNAICS$NAICS, ",")))
   BEAtoNAICS$NAICS <- NULL
-  # Reshape and drop duplicats
+  # Reshape and drop duplicates
   BEAtoNAICSlong <- reshape2::melt(BEAtoNAICS, id.vars = c("BEA_Detail_Code", "BEA_Detail_Name"))
   BEAtoNAICSlong$variable <- NULL
   BEAtoNAICSlong <- unique(BEAtoNAICSlong)
@@ -58,16 +69,11 @@ extractBEAtoNAICSfromIOTable <- function (year) { # year = 2012 or 2007
   BEAtoNAICSlongDash <- unique(BEAtoNAICSlongDash)
   # The NAICS codes are "n.a."
   # The NAICS codes without dash (-)
-  if (year==2012) {
-    BEAtoNAICSlongNA <- BEAtoNAICSlong[BEAtoNAICSlong$value == "n.a.", ]
-    BEAtoNAICSlongSubset <- BEAtoNAICSlong[!rownames(BEAtoNAICSlong) %in% grep("-", BEAtoNAICSlong$value, value = FALSE) & !BEAtoNAICSlong$value == "n.a.", ]
-    BEAtoNAICSlongSubset <- do.call("cbind.data.frame", lapply(BEAtoNAICSlongSubset, gsub, pattern="*", replacement=""))
-    BEAtoNAICSlongSubset$value <- gsub("[*]", "", BEAtoNAICSlongSubset$value)
-  } else {
-    BEAtoNAICSlongNA <- BEAtoNAICSlong[BEAtoNAICSlong$value == "n/a", ]
-    BEAtoNAICSlongSubset <- BEAtoNAICSlong[!rownames(BEAtoNAICSlong) %in% grep("-", BEAtoNAICSlong$value, value = FALSE) & !BEAtoNAICSlong$value == "n/a", ]
-    BEAtoNAICSlongSubset <- do.call("cbind.data.frame", lapply(BEAtoNAICSlongSubset, gsub, pattern="*", replacement=""))
-  }
+  BEAtoNAICSlongNA <- BEAtoNAICSlong[BEAtoNAICSlong$value == "n.a.", ]
+  BEAtoNAICSlongSubset <- BEAtoNAICSlong[!rownames(BEAtoNAICSlong) %in% grep("-", BEAtoNAICSlong$value, value = FALSE) & !BEAtoNAICSlong$value == "n.a.", ]
+  BEAtoNAICSlongSubset <- do.call("cbind.data.frame", lapply(BEAtoNAICSlongSubset, gsub, pattern="*", replacement=""))
+  BEAtoNAICSlongSubset$value <- gsub("[*]", "", BEAtoNAICSlongSubset$value)
+
   
   # Assemble all chunks together
   BEAtoNAICS <- rbind(BEAtoNAICSlongDash, BEAtoNAICSlongNA, BEAtoNAICSlongSubset)
@@ -78,7 +84,7 @@ extractBEAtoNAICSfromIOTable <- function (year) { # year = 2012 or 2007
   BEAtoNAICS <- merge(BEAtoNAICS, BEA, by = c("BEA_Detail_Code", "BEA_Detail_Name"), all.x = TRUE)
   BEAtoNAICS <- BEAtoNAICS[, c(colnames(BEA), "NAICS_Code")]
   BEAtoNAICS$NAICS_Code <- as.integer(BEAtoNAICS$NAICS_Code)
-  BEAtoNAICS[BEAtoNAICS$BEA_Detail_Code=="517A00" & BEAtoNAICS$NAICS_Code=="5719", "NAICS_Code"] <- as.integer(5179)
+
   # Add year into column names
   colnames(BEAtoNAICS)[1:6] <- gsub("BEA_", paste("BEA_", year, "_", sep = ""), colnames(BEAtoNAICS)[1:6])
   colnames(BEAtoNAICS)[7] <- gsub("NAICS_", paste("NAICS_", year, "_", sep = ""), colnames(BEAtoNAICS)[7])
@@ -95,7 +101,8 @@ getBEAtoNAICS <- function (year) {
   NAICSyearCode.y <- paste("NAICS_", year, "_Code.y", sep = "")
   
   # Generate BEAtoNAICS table from IO table
-  BEAtoNAICS <- extractBEAtoNAICSfromIOTable(year)
+  #Note only returns current year
+  BEAtoNAICS <- extractBEAtoNAICSfromIOTable()
   
   # Generate complete NAICSwide table from NAICS list from Census
   NAICSwide <- getNAICS2to6Digits(year)
@@ -142,7 +149,7 @@ getBEAtoNAICS <- function (year) {
 # Create mapping between BEA and USEEIO code
 getBEAtoUSEEIO <- function (year) {
   # Prepare a base BEAtoUSEEIO table from IO table
-  BEAtoUSEEIO <- extractBEAtoNAICSfromIOTable(year)
+  BEAtoUSEEIO <- extractBEAtoNAICSfromIOTable()
   BEAyearDetail <- c(paste("BEA_", year, "_Detail_Code", sep = ""), paste("BEA_", year, "_Detail_Name", sep = ""))
   # Add USEEIO columns
   if (year==2007) {
@@ -177,6 +184,9 @@ getMasterCrosswalk <- function (year) {
   BEAtoUSEEIOtoNAICS <- BEAtoUSEEIOtoNAICS[!BEAtoUSEEIOtoNAICS[, BEAyearSectorCode] %in% c("23", "G"), ]
   BEAtoUSEEIOtoNAICS <- BEAtoUSEEIOtoNAICS[!BEAtoUSEEIOtoNAICS[, BEAyearSummaryCode] %in% c("HS", "ORE", "531"), ]
   # Load pre-created tables for 23, G, F, and V sectors
+  Columns <- c(paste0(rep("BEA_", 6), year, rep(c("_Sector", "_Summary", "_Detail"), each = 2), rep(c("_Code", "_Name"), 3)),
+               paste0(rep("USEEIO", 2),  c("_Code", "_Industry")),
+               paste0(rep("NAICS_", 2), year, c("_Code", "_Name")))
   # 23
   Crosswalk23 <- utils::read.table(paste0("inst/extdata/23_BEAtoUSEEIOtoNAICS_", year, ".csv"), sep = ",", header = TRUE, stringsAsFactors = FALSE)
   # HS&ORE
@@ -184,16 +194,19 @@ getMasterCrosswalk <- function (year) {
   # G
   CrosswalkG <- utils::read.table(paste0("inst/extdata/G_BEAtoUSEEIOtoNAICS_", year, ".csv"), sep = ",", header = TRUE, stringsAsFactors = FALSE)
   # F
-  CrosswalkF <- utils::read.table(paste0("inst/extdata/F_BEAtoUSEEIOtoNAICS_", year, ".csv"), sep = ",", header = TRUE, stringsAsFactors = FALSE)
+  CrosswalkF <- utils::read.table("inst/extdata/F_BEAtoUSEEIOtoNAICS.csv", sep = ",", header = TRUE, stringsAsFactors = FALSE)
+  colnames(CrosswalkF) <- Columns
   # V
-  CrosswalkV <- utils::read.table(paste0("inst/extdata/V_BEAtoUSEEIOtoNAICS_", year, ".csv"), sep = ",", header = TRUE, stringsAsFactors = FALSE)
+  CrosswalkV <- utils::read.table("inst/extdata/V_BEAtoUSEEIOtoNAICS.csv", sep = ",", header = TRUE, stringsAsFactors = FALSE)
+  colnames(CrosswalkV) <- Columns
   
   # Attach the pre-created 23, G, F, and V sectors to BEAtoUSEEIOtoNAICS
   BEAtoUSEEIOtoNAICS <- rbind(BEAtoUSEEIOtoNAICS, Crosswalk23, CrosswalkHSandORE, CrosswalkG, CrosswalkF, CrosswalkV)
   
   # Add USEEIO_Commodity columns
-  SectortoCommodity <- utils::read.table(paste0("inst/extdata/Crosswalk_DetailIndustrytoCommodityName", year, "Schema.csv"),
+  SectortoCommodity <- utils::read.table("inst/extdata/Crosswalk_DetailIndustrytoCommodityNameSchema.csv",
                                          sep = ",", header = TRUE, stringsAsFactors = FALSE, quote = "\"")
+  colnames(SectortoCommodity) <- c(paste0("BEA_", year, "_Detail_Code"), paste0("BEA_", year, "_Detail_Name"), "USEEIO_Name")
   BEAtoUSEEIOtoNAICS <- merge(BEAtoUSEEIOtoNAICS, SectortoCommodity[, -2], by = paste("BEA_", year, "_Detail_Code", sep = ""), all.x = TRUE)
   
   # Keep wanted columns
@@ -232,7 +245,7 @@ getMasterCrosswalk <- function (year) {
   if (year==2007) {
     MasterCrosswalk <- merge(BEAtoUSEEIOtoNAICS, NAICS2012to2007to2017all, by = "NAICS_2007_Code", all = TRUE)
     MasterCrosswalk <- MasterCrosswalk[, c(colnames(BEAtoUSEEIOtoNAICS), "NAICS_2012_Code")]
-  } else {
+  } else if (year==2012) {
     MasterCrosswalk <- merge(BEAtoUSEEIOtoNAICS, NAICS2012to2007to2017all, by = "NAICS_2012_Code", all = TRUE)
     MasterCrosswalk <- MasterCrosswalk[, c(colnames(BEAtoUSEEIOtoNAICS), "NAICS_2007_Code", "NAICS_2017_Code")]
     # Include 7-, 8-, and 10-digit NAICS (from Census for manufacturing and mining sectors)
@@ -247,6 +260,14 @@ getMasterCrosswalk <- function (year) {
     MasterCrosswalk <- merge(MasterCrosswalk, BEA_Sector_CodeName_Mapping, by = c("BEA_2012_Sector_Code", "BEA_2012_Sector_Name"), all.x = TRUE)
     MasterCrosswalk[, c("BEA_2012_Sector_Code", "BEA_2012_Sector_Name")] <- MasterCrosswalk[, c("BEA_2012_Sector_Code_agg", "BEA_2012_Sector_Name_agg")]
     MasterCrosswalk[, c("BEA_2012_Sector_Code_agg", "BEA_2012_Sector_Name_agg")] <- NULL
+  } else if (year==2017) {
+    MasterCrosswalk <- merge(BEAtoUSEEIOtoNAICS, NAICS2012to2007to2017all, by = "NAICS_2017_Code", all = TRUE)
+    MasterCrosswalk <- MasterCrosswalk[, c(colnames(BEAtoUSEEIOtoNAICS), "NAICS_2007_Code", "NAICS_2012_Code")]
+    # Replace Code and Name for BEA_2012_Sector
+    BEA_Sector_CodeName_Mapping <- utils::read.table("inst/extdata/BEA_2017_Sector_CodeName_mapping.csv", sep = ",", header = TRUE, stringsAsFactors = FALSE)
+    MasterCrosswalk <- merge(MasterCrosswalk, BEA_Sector_CodeName_Mapping, by = c("BEA_2017_Sector_Code", "BEA_2017_Sector_Name"), all.x = TRUE)
+    MasterCrosswalk[, c("BEA_2017_Sector_Code", "BEA_2017_Sector_Name")] <- MasterCrosswalk[, c("BEA_2017_Sector_Code_agg", "BEA_2017_Sector_Name_agg")]
+    MasterCrosswalk[, c("BEA_2017_Sector_Code_agg", "BEA_2017_Sector_Name_agg")] <- NULL
   }
   # Order by NAICS and USEEIO code columns
   MasterCrosswalk[MasterCrosswalk==""] <- NA
@@ -256,12 +277,14 @@ getMasterCrosswalk <- function (year) {
   return(MasterCrosswalk)
 }
 
-MasterCrosswalk2012 <- getMasterCrosswalk(2012)
-MasterCrosswalk2012 <- MasterCrosswalk2012[, c(paste("BEA_2012", c("Sector", "Summary", "Detail"), "Code", sep = "_"),
-                                               paste("NAICS", c(2012, 2007, 2017), "Code", sep = "_"))]
-usethis::use_data(MasterCrosswalk2012, overwrite = T)
+year <- getSchemaYearfromFileName(getReferenceFileName())
+MasterCrosswalk <- getMasterCrosswalk(year)
+diff1 <- dplyr::anti_join(MasterCrosswalk, useeior::MasterCrosswalk)
+usethis::use_data(MasterCrosswalk, overwrite = T)
 
-MasterCrosswalk2007 <- getMasterCrosswalk(2007)
-MasterCrosswalk2007 <- MasterCrosswalk2007[, c(paste("BEA_2007", c("Sector", "Summary", "Detail"), "Code", sep = "_"),
-                                               paste("NAICS", c(2012, 2007), "Code", sep = "_"))]
-usethis::use_data(MasterCrosswalk2007, overwrite = T)
+# Check differences with prior crosswalk
+oldMC <- get(paste0("MasterCrosswalk", year), as.environment("package:useeior"))
+newMC <- MasterCrosswalk[, c(paste("BEA",year, c("Sector", "Summary", "Detail"), "Code", sep = "_"),
+                             paste("NAICS", c(2017, 2012), "Code", sep = "_"))]
+diff2 <- dplyr::anti_join(newMC, oldMC)
+writeDatatoRDA(newMC, paste0("MasterCrosswalk", year))
diff --git a/data/Detail_CPI_IO.rda b/data/Detail_CPI_IO_12sch.rda
similarity index 100%
rename from data/Detail_CPI_IO.rda
rename to data/Detail_CPI_IO_12sch.rda
diff --git a/data/Detail_CPI_IO_17sch.rda b/data/Detail_CPI_IO_17sch.rda
new file mode 100644
index 00000000..8a3653a1
Binary files /dev/null and b/data/Detail_CPI_IO_17sch.rda differ
diff --git a/data/Detail_CommodityCodeName_2017.rda b/data/Detail_CommodityCodeName_2017.rda
new file mode 100644
index 00000000..ffa0b680
Binary files /dev/null and b/data/Detail_CommodityCodeName_2017.rda differ
diff --git a/data/Detail_FinalDemandCodeName_2017.rda b/data/Detail_FinalDemandCodeName_2017.rda
new file mode 100644
index 00000000..94ba47bc
Binary files /dev/null and b/data/Detail_FinalDemandCodeName_2017.rda differ
diff --git a/data/Detail_GrossOutput_IO.rda b/data/Detail_GrossOutput_IO_12sch.rda
similarity index 100%
rename from data/Detail_GrossOutput_IO.rda
rename to data/Detail_GrossOutput_IO_12sch.rda
diff --git a/data/Detail_GrossOutput_IO_17sch.rda b/data/Detail_GrossOutput_IO_17sch.rda
new file mode 100644
index 00000000..a9e43ebc
Binary files /dev/null and b/data/Detail_GrossOutput_IO_17sch.rda differ
diff --git a/data/Detail_Import_2012_BeforeRedef.rda b/data/Detail_Import_2012_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Detail_Import_2012_BeforeRedef.rda
rename to data/Detail_Import_2012_BeforeRedef_12sch.rda
diff --git a/data/Detail_Import_2017_BeforeRedef_17sch.rda b/data/Detail_Import_2017_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..a4783e03
Binary files /dev/null and b/data/Detail_Import_2017_BeforeRedef_17sch.rda differ
diff --git a/data/Detail_IndustryCodeName_2017.rda b/data/Detail_IndustryCodeName_2017.rda
new file mode 100644
index 00000000..3677bb88
Binary files /dev/null and b/data/Detail_IndustryCodeName_2017.rda differ
diff --git a/data/Detail_Make_2012_AfterRedef.rda b/data/Detail_Make_2012_AfterRedef_12sch.rda
similarity index 100%
rename from data/Detail_Make_2012_AfterRedef.rda
rename to data/Detail_Make_2012_AfterRedef_12sch.rda
diff --git a/data/Detail_Make_2012_BeforeRedef.rda b/data/Detail_Make_2012_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Detail_Make_2012_BeforeRedef.rda
rename to data/Detail_Make_2012_BeforeRedef_12sch.rda
diff --git a/data/Detail_Make_2017_AfterRedef_17sch.rda b/data/Detail_Make_2017_AfterRedef_17sch.rda
new file mode 100644
index 00000000..14a95653
Binary files /dev/null and b/data/Detail_Make_2017_AfterRedef_17sch.rda differ
diff --git a/data/Detail_Make_2017_BeforeRedef_17sch.rda b/data/Detail_Make_2017_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..e7c5dfd9
Binary files /dev/null and b/data/Detail_Make_2017_BeforeRedef_17sch.rda differ
diff --git a/data/Detail_Margins_2012_BeforeRedef.rda b/data/Detail_Margins_2012_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Detail_Margins_2012_BeforeRedef.rda
rename to data/Detail_Margins_2012_BeforeRedef_12sch.rda
diff --git a/data/Detail_Margins_2017_BeforeRedef_17sch.rda b/data/Detail_Margins_2017_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..d15f7590
Binary files /dev/null and b/data/Detail_Margins_2017_BeforeRedef_17sch.rda differ
diff --git a/data/Detail_Supply_2012.rda b/data/Detail_Supply_2012_12sch.rda
similarity index 100%
rename from data/Detail_Supply_2012.rda
rename to data/Detail_Supply_2012_12sch.rda
diff --git a/data/Detail_Supply_2017_17sch.rda b/data/Detail_Supply_2017_17sch.rda
new file mode 100644
index 00000000..4d6bf024
Binary files /dev/null and b/data/Detail_Supply_2017_17sch.rda differ
diff --git a/data/Detail_Use_2012_PRO_AfterRedef.rda b/data/Detail_Use_2012_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Detail_Use_2012_PRO_AfterRedef.rda
rename to data/Detail_Use_2012_PRO_AfterRedef_12sch.rda
diff --git a/data/Detail_Use_2012_PRO_BeforeRedef.rda b/data/Detail_Use_2012_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Detail_Use_2012_PRO_BeforeRedef.rda
rename to data/Detail_Use_2012_PRO_BeforeRedef_12sch.rda
diff --git a/data/Detail_Use_2012_PUR_AfterRedef.rda b/data/Detail_Use_2012_PUR_AfterRedef_12sch.rda
similarity index 100%
rename from data/Detail_Use_2012_PUR_AfterRedef.rda
rename to data/Detail_Use_2012_PUR_AfterRedef_12sch.rda
diff --git a/data/Detail_Use_2012_PUR_BeforeRedef.rda b/data/Detail_Use_2012_PUR_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Detail_Use_2012_PUR_BeforeRedef.rda
rename to data/Detail_Use_2012_PUR_BeforeRedef_12sch.rda
diff --git a/data/Detail_Use_2017_PRO_AfterRedef_17sch.rda b/data/Detail_Use_2017_PRO_AfterRedef_17sch.rda
new file mode 100644
index 00000000..7b3dedc7
Binary files /dev/null and b/data/Detail_Use_2017_PRO_AfterRedef_17sch.rda differ
diff --git a/data/Detail_Use_2017_PRO_BeforeRedef_17sch.rda b/data/Detail_Use_2017_PRO_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..9ca539f6
Binary files /dev/null and b/data/Detail_Use_2017_PRO_BeforeRedef_17sch.rda differ
diff --git a/data/Detail_Use_2017_PUR_AfterRedef_17sch.rda b/data/Detail_Use_2017_PUR_AfterRedef_17sch.rda
new file mode 100644
index 00000000..77e14d08
Binary files /dev/null and b/data/Detail_Use_2017_PUR_AfterRedef_17sch.rda differ
diff --git a/data/Detail_Use_2017_PUR_BeforeRedef_17sch.rda b/data/Detail_Use_2017_PUR_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..4fb2969a
Binary files /dev/null and b/data/Detail_Use_2017_PUR_BeforeRedef_17sch.rda differ
diff --git a/data/Detail_Use_SUT_2012.rda b/data/Detail_Use_SUT_2012_12sch.rda
similarity index 100%
rename from data/Detail_Use_SUT_2012.rda
rename to data/Detail_Use_SUT_2012_12sch.rda
diff --git a/data/Detail_Use_SUT_2017_17sch.rda b/data/Detail_Use_SUT_2017_17sch.rda
new file mode 100644
index 00000000..6559db1d
Binary files /dev/null and b/data/Detail_Use_SUT_2017_17sch.rda differ
diff --git a/data/Detail_ValueAddedCodeName_2017.rda b/data/Detail_ValueAddedCodeName_2017.rda
new file mode 100644
index 00000000..b6cfecbb
Binary files /dev/null and b/data/Detail_ValueAddedCodeName_2017.rda differ
diff --git a/data/MasterCrosswalk.rda b/data/MasterCrosswalk.rda
new file mode 100644
index 00000000..b5130d54
Binary files /dev/null and b/data/MasterCrosswalk.rda differ
diff --git a/data/MasterCrosswalk2017.rda b/data/MasterCrosswalk2017.rda
new file mode 100644
index 00000000..a0e7be45
Binary files /dev/null and b/data/MasterCrosswalk2017.rda differ
diff --git a/data/Sector_CPI_IO.rda b/data/Sector_CPI_IO_12sch.rda
similarity index 100%
rename from data/Sector_CPI_IO.rda
rename to data/Sector_CPI_IO_12sch.rda
diff --git a/data/Sector_CPI_IO_17sch.rda b/data/Sector_CPI_IO_17sch.rda
new file mode 100644
index 00000000..e624af4a
Binary files /dev/null and b/data/Sector_CPI_IO_17sch.rda differ
diff --git a/data/Sector_CommodityCodeName_2017.rda b/data/Sector_CommodityCodeName_2017.rda
new file mode 100644
index 00000000..acc3172a
Binary files /dev/null and b/data/Sector_CommodityCodeName_2017.rda differ
diff --git a/data/Sector_FinalDemandCodeName_2017.rda b/data/Sector_FinalDemandCodeName_2017.rda
new file mode 100644
index 00000000..08be7c92
Binary files /dev/null and b/data/Sector_FinalDemandCodeName_2017.rda differ
diff --git a/data/Sector_GrossOutput_IO.rda b/data/Sector_GrossOutput_IO_12sch.rda
similarity index 100%
rename from data/Sector_GrossOutput_IO.rda
rename to data/Sector_GrossOutput_IO_12sch.rda
diff --git a/data/Sector_GrossOutput_IO_17sch.rda b/data/Sector_GrossOutput_IO_17sch.rda
new file mode 100644
index 00000000..578c90c4
Binary files /dev/null and b/data/Sector_GrossOutput_IO_17sch.rda differ
diff --git a/data/Sector_IndustryCodeName_2017.rda b/data/Sector_IndustryCodeName_2017.rda
new file mode 100644
index 00000000..f75acfec
Binary files /dev/null and b/data/Sector_IndustryCodeName_2017.rda differ
diff --git a/data/Sector_Make_2010_AfterRedef.rda b/data/Sector_Make_2010_AfterRedef.rda
deleted file mode 100644
index a1773984..00000000
Binary files a/data/Sector_Make_2010_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2010_BeforeRedef.rda b/data/Sector_Make_2010_BeforeRedef.rda
deleted file mode 100644
index 26003269..00000000
Binary files a/data/Sector_Make_2010_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2011_AfterRedef.rda b/data/Sector_Make_2011_AfterRedef.rda
deleted file mode 100644
index cf56a4c5..00000000
Binary files a/data/Sector_Make_2011_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2011_BeforeRedef.rda b/data/Sector_Make_2011_BeforeRedef.rda
deleted file mode 100644
index 087428fe..00000000
Binary files a/data/Sector_Make_2011_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2012_AfterRedef.rda b/data/Sector_Make_2012_AfterRedef.rda
deleted file mode 100644
index a7a35f49..00000000
Binary files a/data/Sector_Make_2012_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2012_BeforeRedef.rda b/data/Sector_Make_2012_BeforeRedef.rda
deleted file mode 100644
index 9f8db1e4..00000000
Binary files a/data/Sector_Make_2012_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2013_AfterRedef.rda b/data/Sector_Make_2013_AfterRedef.rda
deleted file mode 100644
index e1c8cc7f..00000000
Binary files a/data/Sector_Make_2013_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2013_BeforeRedef.rda b/data/Sector_Make_2013_BeforeRedef.rda
deleted file mode 100644
index 5489beaf..00000000
Binary files a/data/Sector_Make_2013_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2014_AfterRedef.rda b/data/Sector_Make_2014_AfterRedef.rda
deleted file mode 100644
index eaba3163..00000000
Binary files a/data/Sector_Make_2014_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2014_BeforeRedef.rda b/data/Sector_Make_2014_BeforeRedef.rda
deleted file mode 100644
index 2aa220dd..00000000
Binary files a/data/Sector_Make_2014_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2015_AfterRedef.rda b/data/Sector_Make_2015_AfterRedef.rda
deleted file mode 100644
index cc5eff19..00000000
Binary files a/data/Sector_Make_2015_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2015_BeforeRedef.rda b/data/Sector_Make_2015_BeforeRedef.rda
deleted file mode 100644
index 25a8a770..00000000
Binary files a/data/Sector_Make_2015_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2016_AfterRedef.rda b/data/Sector_Make_2016_AfterRedef.rda
deleted file mode 100644
index 97c7bf70..00000000
Binary files a/data/Sector_Make_2016_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2016_BeforeRedef.rda b/data/Sector_Make_2016_BeforeRedef.rda
deleted file mode 100644
index f45681f4..00000000
Binary files a/data/Sector_Make_2016_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2017_AfterRedef.rda b/data/Sector_Make_2017_AfterRedef.rda
deleted file mode 100644
index f79be447..00000000
Binary files a/data/Sector_Make_2017_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2017_BeforeRedef.rda b/data/Sector_Make_2017_BeforeRedef.rda
deleted file mode 100644
index 5ac7f57f..00000000
Binary files a/data/Sector_Make_2017_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2018_AfterRedef.rda b/data/Sector_Make_2018_AfterRedef.rda
deleted file mode 100644
index 5523ece4..00000000
Binary files a/data/Sector_Make_2018_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2018_BeforeRedef.rda b/data/Sector_Make_2018_BeforeRedef.rda
deleted file mode 100644
index 89ef16f4..00000000
Binary files a/data/Sector_Make_2018_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2019_AfterRedef.rda b/data/Sector_Make_2019_AfterRedef.rda
deleted file mode 100644
index 00322236..00000000
Binary files a/data/Sector_Make_2019_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2019_BeforeRedef.rda b/data/Sector_Make_2019_BeforeRedef.rda
deleted file mode 100644
index 2be007ea..00000000
Binary files a/data/Sector_Make_2019_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2020_AfterRedef.rda b/data/Sector_Make_2020_AfterRedef.rda
deleted file mode 100644
index cc55787c..00000000
Binary files a/data/Sector_Make_2020_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2020_BeforeRedef.rda b/data/Sector_Make_2020_BeforeRedef.rda
deleted file mode 100644
index 61cd7bd8..00000000
Binary files a/data/Sector_Make_2020_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2021_AfterRedef.rda b/data/Sector_Make_2021_AfterRedef.rda
deleted file mode 100644
index 688e5939..00000000
Binary files a/data/Sector_Make_2021_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Make_2021_BeforeRedef.rda b/data/Sector_Make_2021_BeforeRedef.rda
deleted file mode 100644
index b2df9a5a..00000000
Binary files a/data/Sector_Make_2021_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Supply_2010.rda b/data/Sector_Supply_2010.rda
deleted file mode 100644
index 0744e0ee..00000000
Binary files a/data/Sector_Supply_2010.rda and /dev/null differ
diff --git a/data/Sector_Supply_2011.rda b/data/Sector_Supply_2011.rda
deleted file mode 100644
index bc5675a4..00000000
Binary files a/data/Sector_Supply_2011.rda and /dev/null differ
diff --git a/data/Sector_Supply_2012.rda b/data/Sector_Supply_2012.rda
deleted file mode 100644
index 207601e2..00000000
Binary files a/data/Sector_Supply_2012.rda and /dev/null differ
diff --git a/data/Sector_Supply_2013.rda b/data/Sector_Supply_2013.rda
deleted file mode 100644
index 3d400cb5..00000000
Binary files a/data/Sector_Supply_2013.rda and /dev/null differ
diff --git a/data/Sector_Supply_2014.rda b/data/Sector_Supply_2014.rda
deleted file mode 100644
index 57e4296b..00000000
Binary files a/data/Sector_Supply_2014.rda and /dev/null differ
diff --git a/data/Sector_Supply_2015.rda b/data/Sector_Supply_2015.rda
deleted file mode 100644
index 88690009..00000000
Binary files a/data/Sector_Supply_2015.rda and /dev/null differ
diff --git a/data/Sector_Supply_2016.rda b/data/Sector_Supply_2016.rda
deleted file mode 100644
index 2f4dff32..00000000
Binary files a/data/Sector_Supply_2016.rda and /dev/null differ
diff --git a/data/Sector_Supply_2017.rda b/data/Sector_Supply_2017.rda
deleted file mode 100644
index 10e6eb15..00000000
Binary files a/data/Sector_Supply_2017.rda and /dev/null differ
diff --git a/data/Sector_Supply_2018.rda b/data/Sector_Supply_2018.rda
deleted file mode 100644
index 712b2f57..00000000
Binary files a/data/Sector_Supply_2018.rda and /dev/null differ
diff --git a/data/Sector_Supply_2019.rda b/data/Sector_Supply_2019.rda
deleted file mode 100644
index ae47b131..00000000
Binary files a/data/Sector_Supply_2019.rda and /dev/null differ
diff --git a/data/Sector_Supply_2020.rda b/data/Sector_Supply_2020.rda
deleted file mode 100644
index 0bee6e20..00000000
Binary files a/data/Sector_Supply_2020.rda and /dev/null differ
diff --git a/data/Sector_Use_2010_PRO_AfterRedef.rda b/data/Sector_Use_2010_PRO_AfterRedef.rda
deleted file mode 100644
index 70d97fac..00000000
Binary files a/data/Sector_Use_2010_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2010_PRO_BeforeRedef.rda b/data/Sector_Use_2010_PRO_BeforeRedef.rda
deleted file mode 100644
index 72742f99..00000000
Binary files a/data/Sector_Use_2010_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2011_PRO_AfterRedef.rda b/data/Sector_Use_2011_PRO_AfterRedef.rda
deleted file mode 100644
index 9c2771fb..00000000
Binary files a/data/Sector_Use_2011_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2011_PRO_BeforeRedef.rda b/data/Sector_Use_2011_PRO_BeforeRedef.rda
deleted file mode 100644
index 914f494f..00000000
Binary files a/data/Sector_Use_2011_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2012_PRO_AfterRedef.rda b/data/Sector_Use_2012_PRO_AfterRedef.rda
deleted file mode 100644
index f8c36e3a..00000000
Binary files a/data/Sector_Use_2012_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2012_PRO_BeforeRedef.rda b/data/Sector_Use_2012_PRO_BeforeRedef.rda
deleted file mode 100644
index 67e543ea..00000000
Binary files a/data/Sector_Use_2012_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2012_PUR_BeforeRedef.rda b/data/Sector_Use_2012_PUR_BeforeRedef.rda
deleted file mode 100644
index 034a3d3b..00000000
Binary files a/data/Sector_Use_2012_PUR_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2013_PRO_AfterRedef.rda b/data/Sector_Use_2013_PRO_AfterRedef.rda
deleted file mode 100644
index 4050109b..00000000
Binary files a/data/Sector_Use_2013_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2013_PRO_BeforeRedef.rda b/data/Sector_Use_2013_PRO_BeforeRedef.rda
deleted file mode 100644
index b59f91ea..00000000
Binary files a/data/Sector_Use_2013_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2014_PRO_AfterRedef.rda b/data/Sector_Use_2014_PRO_AfterRedef.rda
deleted file mode 100644
index 29f767f4..00000000
Binary files a/data/Sector_Use_2014_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2014_PRO_BeforeRedef.rda b/data/Sector_Use_2014_PRO_BeforeRedef.rda
deleted file mode 100644
index ca1fb3e6..00000000
Binary files a/data/Sector_Use_2014_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2015_PRO_AfterRedef.rda b/data/Sector_Use_2015_PRO_AfterRedef.rda
deleted file mode 100644
index d6e307ca..00000000
Binary files a/data/Sector_Use_2015_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2015_PRO_BeforeRedef.rda b/data/Sector_Use_2015_PRO_BeforeRedef.rda
deleted file mode 100644
index f615d5b0..00000000
Binary files a/data/Sector_Use_2015_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2016_PRO_AfterRedef.rda b/data/Sector_Use_2016_PRO_AfterRedef.rda
deleted file mode 100644
index caf6154a..00000000
Binary files a/data/Sector_Use_2016_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2016_PRO_BeforeRedef.rda b/data/Sector_Use_2016_PRO_BeforeRedef.rda
deleted file mode 100644
index 6bda387d..00000000
Binary files a/data/Sector_Use_2016_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2017_PRO_AfterRedef.rda b/data/Sector_Use_2017_PRO_AfterRedef.rda
deleted file mode 100644
index 1978368f..00000000
Binary files a/data/Sector_Use_2017_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2017_PRO_BeforeRedef.rda b/data/Sector_Use_2017_PRO_BeforeRedef.rda
deleted file mode 100644
index 548109fd..00000000
Binary files a/data/Sector_Use_2017_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2018_PRO_AfterRedef.rda b/data/Sector_Use_2018_PRO_AfterRedef.rda
deleted file mode 100644
index d7af6dad..00000000
Binary files a/data/Sector_Use_2018_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2018_PRO_BeforeRedef.rda b/data/Sector_Use_2018_PRO_BeforeRedef.rda
deleted file mode 100644
index 306d6de4..00000000
Binary files a/data/Sector_Use_2018_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2019_PRO_AfterRedef.rda b/data/Sector_Use_2019_PRO_AfterRedef.rda
deleted file mode 100644
index 8453c88e..00000000
Binary files a/data/Sector_Use_2019_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2019_PRO_BeforeRedef.rda b/data/Sector_Use_2019_PRO_BeforeRedef.rda
deleted file mode 100644
index a0229c3d..00000000
Binary files a/data/Sector_Use_2019_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2020_PRO_AfterRedef.rda b/data/Sector_Use_2020_PRO_AfterRedef.rda
deleted file mode 100644
index e86bb141..00000000
Binary files a/data/Sector_Use_2020_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2020_PRO_BeforeRedef.rda b/data/Sector_Use_2020_PRO_BeforeRedef.rda
deleted file mode 100644
index 511ee2a2..00000000
Binary files a/data/Sector_Use_2020_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2021_PRO_AfterRedef.rda b/data/Sector_Use_2021_PRO_AfterRedef.rda
deleted file mode 100644
index 6e4c688f..00000000
Binary files a/data/Sector_Use_2021_PRO_AfterRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_2021_PRO_BeforeRedef.rda b/data/Sector_Use_2021_PRO_BeforeRedef.rda
deleted file mode 100644
index 7262adb8..00000000
Binary files a/data/Sector_Use_2021_PRO_BeforeRedef.rda and /dev/null differ
diff --git a/data/Sector_Use_SUT_2010.rda b/data/Sector_Use_SUT_2010.rda
deleted file mode 100644
index 48bcfa4a..00000000
Binary files a/data/Sector_Use_SUT_2010.rda and /dev/null differ
diff --git a/data/Sector_Use_SUT_2011.rda b/data/Sector_Use_SUT_2011.rda
deleted file mode 100644
index 560159e9..00000000
Binary files a/data/Sector_Use_SUT_2011.rda and /dev/null differ
diff --git a/data/Sector_Use_SUT_2012.rda b/data/Sector_Use_SUT_2012.rda
deleted file mode 100644
index cb9c6b3d..00000000
Binary files a/data/Sector_Use_SUT_2012.rda and /dev/null differ
diff --git a/data/Sector_Use_SUT_2013.rda b/data/Sector_Use_SUT_2013.rda
deleted file mode 100644
index f1ac7127..00000000
Binary files a/data/Sector_Use_SUT_2013.rda and /dev/null differ
diff --git a/data/Sector_Use_SUT_2014.rda b/data/Sector_Use_SUT_2014.rda
deleted file mode 100644
index f9bbada7..00000000
Binary files a/data/Sector_Use_SUT_2014.rda and /dev/null differ
diff --git a/data/Sector_Use_SUT_2015.rda b/data/Sector_Use_SUT_2015.rda
deleted file mode 100644
index ede987d2..00000000
Binary files a/data/Sector_Use_SUT_2015.rda and /dev/null differ
diff --git a/data/Sector_Use_SUT_2016.rda b/data/Sector_Use_SUT_2016.rda
deleted file mode 100644
index 751f567c..00000000
Binary files a/data/Sector_Use_SUT_2016.rda and /dev/null differ
diff --git a/data/Sector_Use_SUT_2017.rda b/data/Sector_Use_SUT_2017.rda
deleted file mode 100644
index 20236e2a..00000000
Binary files a/data/Sector_Use_SUT_2017.rda and /dev/null differ
diff --git a/data/Sector_Use_SUT_2018.rda b/data/Sector_Use_SUT_2018.rda
deleted file mode 100644
index b3e7fde3..00000000
Binary files a/data/Sector_Use_SUT_2018.rda and /dev/null differ
diff --git a/data/Sector_Use_SUT_2019.rda b/data/Sector_Use_SUT_2019.rda
deleted file mode 100644
index 245e604a..00000000
Binary files a/data/Sector_Use_SUT_2019.rda and /dev/null differ
diff --git a/data/Sector_Use_SUT_2020.rda b/data/Sector_Use_SUT_2020.rda
deleted file mode 100644
index e3d65df4..00000000
Binary files a/data/Sector_Use_SUT_2020.rda and /dev/null differ
diff --git a/data/Sector_ValueAddedCodeName_2017.rda b/data/Sector_ValueAddedCodeName_2017.rda
new file mode 100644
index 00000000..29076ab3
Binary files /dev/null and b/data/Sector_ValueAddedCodeName_2017.rda differ
diff --git a/data/Sector_ValueAdded_IO.rda b/data/Sector_ValueAdded_IO_12sch.rda
similarity index 100%
rename from data/Sector_ValueAdded_IO.rda
rename to data/Sector_ValueAdded_IO_12sch.rda
diff --git a/data/Sector_ValueAdded_IO_17sch.rda b/data/Sector_ValueAdded_IO_17sch.rda
new file mode 100644
index 00000000..83179173
Binary files /dev/null and b/data/Sector_ValueAdded_IO_17sch.rda differ
diff --git a/data/Summary_CPI_IO.rda b/data/Summary_CPI_IO_12sch.rda
similarity index 100%
rename from data/Summary_CPI_IO.rda
rename to data/Summary_CPI_IO_12sch.rda
diff --git a/data/Summary_CPI_IO_17sch.rda b/data/Summary_CPI_IO_17sch.rda
new file mode 100644
index 00000000..00dba5a6
Binary files /dev/null and b/data/Summary_CPI_IO_17sch.rda differ
diff --git a/data/Summary_CommodityCodeName_2017.rda b/data/Summary_CommodityCodeName_2017.rda
new file mode 100644
index 00000000..a0392335
Binary files /dev/null and b/data/Summary_CommodityCodeName_2017.rda differ
diff --git a/data/Summary_FinalDemandCodeName_2017.rda b/data/Summary_FinalDemandCodeName_2017.rda
new file mode 100644
index 00000000..a804a943
Binary files /dev/null and b/data/Summary_FinalDemandCodeName_2017.rda differ
diff --git a/data/Summary_GrossOutput_IO.rda b/data/Summary_GrossOutput_IO_12sch.rda
similarity index 100%
rename from data/Summary_GrossOutput_IO.rda
rename to data/Summary_GrossOutput_IO_12sch.rda
diff --git a/data/Summary_GrossOutput_IO_17sch.rda b/data/Summary_GrossOutput_IO_17sch.rda
new file mode 100644
index 00000000..ce8722a0
Binary files /dev/null and b/data/Summary_GrossOutput_IO_17sch.rda differ
diff --git a/data/Summary_Import_2010_BeforeRedef.rda b/data/Summary_Import_2010_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Import_2010_BeforeRedef.rda
rename to data/Summary_Import_2010_BeforeRedef_12sch.rda
diff --git a/data/Summary_Import_2011_BeforeRedef.rda b/data/Summary_Import_2011_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Import_2011_BeforeRedef.rda
rename to data/Summary_Import_2011_BeforeRedef_12sch.rda
diff --git a/data/Summary_Import_2012_BeforeRedef.rda b/data/Summary_Import_2012_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Import_2012_BeforeRedef.rda
rename to data/Summary_Import_2012_BeforeRedef_12sch.rda
diff --git a/data/Summary_Import_2013_BeforeRedef.rda b/data/Summary_Import_2013_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Import_2013_BeforeRedef.rda
rename to data/Summary_Import_2013_BeforeRedef_12sch.rda
diff --git a/data/Summary_Import_2014_BeforeRedef.rda b/data/Summary_Import_2014_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Import_2014_BeforeRedef.rda
rename to data/Summary_Import_2014_BeforeRedef_12sch.rda
diff --git a/data/Summary_Import_2015_BeforeRedef.rda b/data/Summary_Import_2015_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Import_2015_BeforeRedef.rda
rename to data/Summary_Import_2015_BeforeRedef_12sch.rda
diff --git a/data/Summary_Import_2016_BeforeRedef.rda b/data/Summary_Import_2016_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Import_2016_BeforeRedef.rda
rename to data/Summary_Import_2016_BeforeRedef_12sch.rda
diff --git a/data/Summary_Import_2017_BeforeRedef.rda b/data/Summary_Import_2017_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Import_2017_BeforeRedef.rda
rename to data/Summary_Import_2017_BeforeRedef_12sch.rda
diff --git a/data/Summary_Import_2017_BeforeRedef_17sch.rda b/data/Summary_Import_2017_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..3aebcc9e
Binary files /dev/null and b/data/Summary_Import_2017_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Import_2018_BeforeRedef.rda b/data/Summary_Import_2018_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Import_2018_BeforeRedef.rda
rename to data/Summary_Import_2018_BeforeRedef_12sch.rda
diff --git a/data/Summary_Import_2018_BeforeRedef_17sch.rda b/data/Summary_Import_2018_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..bcdf5ee7
Binary files /dev/null and b/data/Summary_Import_2018_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Import_2019_BeforeRedef.rda b/data/Summary_Import_2019_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Import_2019_BeforeRedef.rda
rename to data/Summary_Import_2019_BeforeRedef_12sch.rda
diff --git a/data/Summary_Import_2019_BeforeRedef_17sch.rda b/data/Summary_Import_2019_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..3d6acac8
Binary files /dev/null and b/data/Summary_Import_2019_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Import_2020_BeforeRedef.rda b/data/Summary_Import_2020_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Import_2020_BeforeRedef.rda
rename to data/Summary_Import_2020_BeforeRedef_12sch.rda
diff --git a/data/Summary_Import_2020_BeforeRedef_17sch.rda b/data/Summary_Import_2020_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..2a6277ff
Binary files /dev/null and b/data/Summary_Import_2020_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Import_2021_BeforeRedef_17sch.rda b/data/Summary_Import_2021_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..fb252c84
Binary files /dev/null and b/data/Summary_Import_2021_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Import_2022_BeforeRedef_17sch.rda b/data/Summary_Import_2022_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..3987ee36
Binary files /dev/null and b/data/Summary_Import_2022_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_IndustryCodeName_2017.rda b/data/Summary_IndustryCodeName_2017.rda
new file mode 100644
index 00000000..0b17fd70
Binary files /dev/null and b/data/Summary_IndustryCodeName_2017.rda differ
diff --git a/data/Summary_Make_2010_AfterRedef.rda b/data/Summary_Make_2010_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2010_AfterRedef.rda
rename to data/Summary_Make_2010_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2010_BeforeRedef.rda b/data/Summary_Make_2010_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2010_BeforeRedef.rda
rename to data/Summary_Make_2010_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2011_AfterRedef.rda b/data/Summary_Make_2011_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2011_AfterRedef.rda
rename to data/Summary_Make_2011_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2011_BeforeRedef.rda b/data/Summary_Make_2011_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2011_BeforeRedef.rda
rename to data/Summary_Make_2011_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2012_AfterRedef.rda b/data/Summary_Make_2012_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2012_AfterRedef.rda
rename to data/Summary_Make_2012_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2012_BeforeRedef.rda b/data/Summary_Make_2012_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2012_BeforeRedef.rda
rename to data/Summary_Make_2012_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2013_AfterRedef.rda b/data/Summary_Make_2013_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2013_AfterRedef.rda
rename to data/Summary_Make_2013_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2013_BeforeRedef.rda b/data/Summary_Make_2013_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2013_BeforeRedef.rda
rename to data/Summary_Make_2013_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2014_AfterRedef.rda b/data/Summary_Make_2014_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2014_AfterRedef.rda
rename to data/Summary_Make_2014_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2014_BeforeRedef.rda b/data/Summary_Make_2014_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2014_BeforeRedef.rda
rename to data/Summary_Make_2014_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2015_AfterRedef.rda b/data/Summary_Make_2015_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2015_AfterRedef.rda
rename to data/Summary_Make_2015_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2015_BeforeRedef.rda b/data/Summary_Make_2015_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2015_BeforeRedef.rda
rename to data/Summary_Make_2015_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2016_AfterRedef.rda b/data/Summary_Make_2016_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2016_AfterRedef.rda
rename to data/Summary_Make_2016_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2016_BeforeRedef.rda b/data/Summary_Make_2016_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2016_BeforeRedef.rda
rename to data/Summary_Make_2016_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2017_AfterRedef.rda b/data/Summary_Make_2017_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2017_AfterRedef.rda
rename to data/Summary_Make_2017_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2017_AfterRedef_17sch.rda b/data/Summary_Make_2017_AfterRedef_17sch.rda
new file mode 100644
index 00000000..a4260505
Binary files /dev/null and b/data/Summary_Make_2017_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Make_2017_BeforeRedef.rda b/data/Summary_Make_2017_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2017_BeforeRedef.rda
rename to data/Summary_Make_2017_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2017_BeforeRedef_17sch.rda b/data/Summary_Make_2017_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..5f59f631
Binary files /dev/null and b/data/Summary_Make_2017_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Make_2018_AfterRedef.rda b/data/Summary_Make_2018_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2018_AfterRedef.rda
rename to data/Summary_Make_2018_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2018_AfterRedef_17sch.rda b/data/Summary_Make_2018_AfterRedef_17sch.rda
new file mode 100644
index 00000000..365be966
Binary files /dev/null and b/data/Summary_Make_2018_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Make_2018_BeforeRedef.rda b/data/Summary_Make_2018_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2018_BeforeRedef.rda
rename to data/Summary_Make_2018_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2018_BeforeRedef_17sch.rda b/data/Summary_Make_2018_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..1858e0ec
Binary files /dev/null and b/data/Summary_Make_2018_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Make_2019_AfterRedef.rda b/data/Summary_Make_2019_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2019_AfterRedef.rda
rename to data/Summary_Make_2019_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2019_AfterRedef_17sch.rda b/data/Summary_Make_2019_AfterRedef_17sch.rda
new file mode 100644
index 00000000..ab454b55
Binary files /dev/null and b/data/Summary_Make_2019_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Make_2019_BeforeRedef.rda b/data/Summary_Make_2019_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2019_BeforeRedef.rda
rename to data/Summary_Make_2019_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2019_BeforeRedef_17sch.rda b/data/Summary_Make_2019_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..1d6927a7
Binary files /dev/null and b/data/Summary_Make_2019_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Make_2020_AfterRedef.rda b/data/Summary_Make_2020_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2020_AfterRedef.rda
rename to data/Summary_Make_2020_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2020_AfterRedef_17sch.rda b/data/Summary_Make_2020_AfterRedef_17sch.rda
new file mode 100644
index 00000000..6cbd695b
Binary files /dev/null and b/data/Summary_Make_2020_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Make_2020_BeforeRedef.rda b/data/Summary_Make_2020_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2020_BeforeRedef.rda
rename to data/Summary_Make_2020_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2020_BeforeRedef_17sch.rda b/data/Summary_Make_2020_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..e29d988b
Binary files /dev/null and b/data/Summary_Make_2020_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Make_2021_AfterRedef.rda b/data/Summary_Make_2021_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2021_AfterRedef.rda
rename to data/Summary_Make_2021_AfterRedef_12sch.rda
diff --git a/data/Summary_Make_2021_AfterRedef_17sch.rda b/data/Summary_Make_2021_AfterRedef_17sch.rda
new file mode 100644
index 00000000..b2058a11
Binary files /dev/null and b/data/Summary_Make_2021_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Make_2021_BeforeRedef.rda b/data/Summary_Make_2021_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Make_2021_BeforeRedef.rda
rename to data/Summary_Make_2021_BeforeRedef_12sch.rda
diff --git a/data/Summary_Make_2021_BeforeRedef_17sch.rda b/data/Summary_Make_2021_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..8a134b2e
Binary files /dev/null and b/data/Summary_Make_2021_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Make_2022_AfterRedef_17sch.rda b/data/Summary_Make_2022_AfterRedef_17sch.rda
new file mode 100644
index 00000000..a710c546
Binary files /dev/null and b/data/Summary_Make_2022_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Make_2022_BeforeRedef_17sch.rda b/data/Summary_Make_2022_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..214113fd
Binary files /dev/null and b/data/Summary_Make_2022_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Supply_2010.rda b/data/Summary_Supply_2010_12sch.rda
similarity index 100%
rename from data/Summary_Supply_2010.rda
rename to data/Summary_Supply_2010_12sch.rda
diff --git a/data/Summary_Supply_2011.rda b/data/Summary_Supply_2011_12sch.rda
similarity index 100%
rename from data/Summary_Supply_2011.rda
rename to data/Summary_Supply_2011_12sch.rda
diff --git a/data/Summary_Supply_2012.rda b/data/Summary_Supply_2012_12sch.rda
similarity index 100%
rename from data/Summary_Supply_2012.rda
rename to data/Summary_Supply_2012_12sch.rda
diff --git a/data/Summary_Supply_2013.rda b/data/Summary_Supply_2013_12sch.rda
similarity index 100%
rename from data/Summary_Supply_2013.rda
rename to data/Summary_Supply_2013_12sch.rda
diff --git a/data/Summary_Supply_2014.rda b/data/Summary_Supply_2014_12sch.rda
similarity index 100%
rename from data/Summary_Supply_2014.rda
rename to data/Summary_Supply_2014_12sch.rda
diff --git a/data/Summary_Supply_2015.rda b/data/Summary_Supply_2015_12sch.rda
similarity index 100%
rename from data/Summary_Supply_2015.rda
rename to data/Summary_Supply_2015_12sch.rda
diff --git a/data/Summary_Supply_2016.rda b/data/Summary_Supply_2016_12sch.rda
similarity index 100%
rename from data/Summary_Supply_2016.rda
rename to data/Summary_Supply_2016_12sch.rda
diff --git a/data/Summary_Supply_2017.rda b/data/Summary_Supply_2017.rda
deleted file mode 100644
index 12bca757..00000000
Binary files a/data/Summary_Supply_2017.rda and /dev/null differ
diff --git a/data/Summary_Supply_2017_17sch.rda b/data/Summary_Supply_2017_17sch.rda
new file mode 100644
index 00000000..283df951
Binary files /dev/null and b/data/Summary_Supply_2017_17sch.rda differ
diff --git a/data/Summary_Supply_2018.rda b/data/Summary_Supply_2018.rda
deleted file mode 100644
index 62e76643..00000000
Binary files a/data/Summary_Supply_2018.rda and /dev/null differ
diff --git a/data/Summary_Supply_2018_17sch.rda b/data/Summary_Supply_2018_17sch.rda
new file mode 100644
index 00000000..626ab823
Binary files /dev/null and b/data/Summary_Supply_2018_17sch.rda differ
diff --git a/data/Summary_Supply_2019.rda b/data/Summary_Supply_2019.rda
deleted file mode 100644
index deccbccf..00000000
Binary files a/data/Summary_Supply_2019.rda and /dev/null differ
diff --git a/data/Summary_Supply_2019_17sch.rda b/data/Summary_Supply_2019_17sch.rda
new file mode 100644
index 00000000..523aec7e
Binary files /dev/null and b/data/Summary_Supply_2019_17sch.rda differ
diff --git a/data/Summary_Supply_2020.rda b/data/Summary_Supply_2020.rda
deleted file mode 100644
index 4725179f..00000000
Binary files a/data/Summary_Supply_2020.rda and /dev/null differ
diff --git a/data/Summary_Supply_2020_17sch.rda b/data/Summary_Supply_2020_17sch.rda
new file mode 100644
index 00000000..1ccef62f
Binary files /dev/null and b/data/Summary_Supply_2020_17sch.rda differ
diff --git a/data/Summary_Supply_2021_17sch.rda b/data/Summary_Supply_2021_17sch.rda
new file mode 100644
index 00000000..70207e96
Binary files /dev/null and b/data/Summary_Supply_2021_17sch.rda differ
diff --git a/data/Summary_Supply_2022_17sch.rda b/data/Summary_Supply_2022_17sch.rda
new file mode 100644
index 00000000..c11ef198
Binary files /dev/null and b/data/Summary_Supply_2022_17sch.rda differ
diff --git a/data/Summary_Use_2010_PRO_AfterRedef.rda b/data/Summary_Use_2010_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2010_PRO_AfterRedef.rda
rename to data/Summary_Use_2010_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2010_PRO_BeforeRedef.rda b/data/Summary_Use_2010_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2010_PRO_BeforeRedef.rda
rename to data/Summary_Use_2010_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2011_PRO_AfterRedef.rda b/data/Summary_Use_2011_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2011_PRO_AfterRedef.rda
rename to data/Summary_Use_2011_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2011_PRO_BeforeRedef.rda b/data/Summary_Use_2011_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2011_PRO_BeforeRedef.rda
rename to data/Summary_Use_2011_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2012_PRO_AfterRedef.rda b/data/Summary_Use_2012_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2012_PRO_AfterRedef.rda
rename to data/Summary_Use_2012_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2012_PRO_BeforeRedef.rda b/data/Summary_Use_2012_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2012_PRO_BeforeRedef.rda
rename to data/Summary_Use_2012_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2012_PUR_BeforeRedef.rda b/data/Summary_Use_2012_PUR_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2012_PUR_BeforeRedef.rda
rename to data/Summary_Use_2012_PUR_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2013_PRO_AfterRedef.rda b/data/Summary_Use_2013_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2013_PRO_AfterRedef.rda
rename to data/Summary_Use_2013_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2013_PRO_BeforeRedef.rda b/data/Summary_Use_2013_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2013_PRO_BeforeRedef.rda
rename to data/Summary_Use_2013_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2014_PRO_AfterRedef.rda b/data/Summary_Use_2014_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2014_PRO_AfterRedef.rda
rename to data/Summary_Use_2014_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2014_PRO_BeforeRedef.rda b/data/Summary_Use_2014_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2014_PRO_BeforeRedef.rda
rename to data/Summary_Use_2014_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2015_PRO_AfterRedef.rda b/data/Summary_Use_2015_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2015_PRO_AfterRedef.rda
rename to data/Summary_Use_2015_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2015_PRO_BeforeRedef.rda b/data/Summary_Use_2015_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2015_PRO_BeforeRedef.rda
rename to data/Summary_Use_2015_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2016_PRO_AfterRedef.rda b/data/Summary_Use_2016_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2016_PRO_AfterRedef.rda
rename to data/Summary_Use_2016_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2016_PRO_BeforeRedef.rda b/data/Summary_Use_2016_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2016_PRO_BeforeRedef.rda
rename to data/Summary_Use_2016_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2017_PRO_AfterRedef.rda b/data/Summary_Use_2017_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2017_PRO_AfterRedef.rda
rename to data/Summary_Use_2017_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2017_PRO_AfterRedef_17sch.rda b/data/Summary_Use_2017_PRO_AfterRedef_17sch.rda
new file mode 100644
index 00000000..c0f83cec
Binary files /dev/null and b/data/Summary_Use_2017_PRO_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Use_2017_PRO_BeforeRedef.rda b/data/Summary_Use_2017_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2017_PRO_BeforeRedef.rda
rename to data/Summary_Use_2017_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2017_PRO_BeforeRedef_17sch.rda b/data/Summary_Use_2017_PRO_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..6253fdee
Binary files /dev/null and b/data/Summary_Use_2017_PRO_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Use_2017_PUR_BeforeRedef_17sch.rda b/data/Summary_Use_2017_PUR_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..202e31f7
Binary files /dev/null and b/data/Summary_Use_2017_PUR_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Use_2018_PRO_AfterRedef.rda b/data/Summary_Use_2018_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2018_PRO_AfterRedef.rda
rename to data/Summary_Use_2018_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2018_PRO_AfterRedef_17sch.rda b/data/Summary_Use_2018_PRO_AfterRedef_17sch.rda
new file mode 100644
index 00000000..218e915b
Binary files /dev/null and b/data/Summary_Use_2018_PRO_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Use_2018_PRO_BeforeRedef.rda b/data/Summary_Use_2018_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2018_PRO_BeforeRedef.rda
rename to data/Summary_Use_2018_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2018_PRO_BeforeRedef_17sch.rda b/data/Summary_Use_2018_PRO_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..062d8115
Binary files /dev/null and b/data/Summary_Use_2018_PRO_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Use_2019_PRO_AfterRedef.rda b/data/Summary_Use_2019_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2019_PRO_AfterRedef.rda
rename to data/Summary_Use_2019_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2019_PRO_AfterRedef_17sch.rda b/data/Summary_Use_2019_PRO_AfterRedef_17sch.rda
new file mode 100644
index 00000000..bc76f5a7
Binary files /dev/null and b/data/Summary_Use_2019_PRO_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Use_2019_PRO_BeforeRedef.rda b/data/Summary_Use_2019_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2019_PRO_BeforeRedef.rda
rename to data/Summary_Use_2019_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2019_PRO_BeforeRedef_17sch.rda b/data/Summary_Use_2019_PRO_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..ae8354f4
Binary files /dev/null and b/data/Summary_Use_2019_PRO_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Use_2020_PRO_AfterRedef.rda b/data/Summary_Use_2020_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2020_PRO_AfterRedef.rda
rename to data/Summary_Use_2020_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2020_PRO_AfterRedef_17sch.rda b/data/Summary_Use_2020_PRO_AfterRedef_17sch.rda
new file mode 100644
index 00000000..553d335a
Binary files /dev/null and b/data/Summary_Use_2020_PRO_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Use_2020_PRO_BeforeRedef.rda b/data/Summary_Use_2020_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2020_PRO_BeforeRedef.rda
rename to data/Summary_Use_2020_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2020_PRO_BeforeRedef_17sch.rda b/data/Summary_Use_2020_PRO_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..14d51833
Binary files /dev/null and b/data/Summary_Use_2020_PRO_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Use_2021_PRO_AfterRedef.rda b/data/Summary_Use_2021_PRO_AfterRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2021_PRO_AfterRedef.rda
rename to data/Summary_Use_2021_PRO_AfterRedef_12sch.rda
diff --git a/data/Summary_Use_2021_PRO_AfterRedef_17sch.rda b/data/Summary_Use_2021_PRO_AfterRedef_17sch.rda
new file mode 100644
index 00000000..497b7b11
Binary files /dev/null and b/data/Summary_Use_2021_PRO_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Use_2021_PRO_BeforeRedef.rda b/data/Summary_Use_2021_PRO_BeforeRedef_12sch.rda
similarity index 100%
rename from data/Summary_Use_2021_PRO_BeforeRedef.rda
rename to data/Summary_Use_2021_PRO_BeforeRedef_12sch.rda
diff --git a/data/Summary_Use_2021_PRO_BeforeRedef_17sch.rda b/data/Summary_Use_2021_PRO_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..b70d8f0a
Binary files /dev/null and b/data/Summary_Use_2021_PRO_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Use_2022_PRO_AfterRedef_17sch.rda b/data/Summary_Use_2022_PRO_AfterRedef_17sch.rda
new file mode 100644
index 00000000..5df5a9d1
Binary files /dev/null and b/data/Summary_Use_2022_PRO_AfterRedef_17sch.rda differ
diff --git a/data/Summary_Use_2022_PRO_BeforeRedef_17sch.rda b/data/Summary_Use_2022_PRO_BeforeRedef_17sch.rda
new file mode 100644
index 00000000..ab9f462d
Binary files /dev/null and b/data/Summary_Use_2022_PRO_BeforeRedef_17sch.rda differ
diff --git a/data/Summary_Use_SUT_2010.rda b/data/Summary_Use_SUT_2010_12sch.rda
similarity index 100%
rename from data/Summary_Use_SUT_2010.rda
rename to data/Summary_Use_SUT_2010_12sch.rda
diff --git a/data/Summary_Use_SUT_2011.rda b/data/Summary_Use_SUT_2011_12sch.rda
similarity index 100%
rename from data/Summary_Use_SUT_2011.rda
rename to data/Summary_Use_SUT_2011_12sch.rda
diff --git a/data/Summary_Use_SUT_2012.rda b/data/Summary_Use_SUT_2012_12sch.rda
similarity index 100%
rename from data/Summary_Use_SUT_2012.rda
rename to data/Summary_Use_SUT_2012_12sch.rda
diff --git a/data/Summary_Use_SUT_2013.rda b/data/Summary_Use_SUT_2013_12sch.rda
similarity index 100%
rename from data/Summary_Use_SUT_2013.rda
rename to data/Summary_Use_SUT_2013_12sch.rda
diff --git a/data/Summary_Use_SUT_2014.rda b/data/Summary_Use_SUT_2014_12sch.rda
similarity index 100%
rename from data/Summary_Use_SUT_2014.rda
rename to data/Summary_Use_SUT_2014_12sch.rda
diff --git a/data/Summary_Use_SUT_2015.rda b/data/Summary_Use_SUT_2015_12sch.rda
similarity index 100%
rename from data/Summary_Use_SUT_2015.rda
rename to data/Summary_Use_SUT_2015_12sch.rda
diff --git a/data/Summary_Use_SUT_2016.rda b/data/Summary_Use_SUT_2016_12sch.rda
similarity index 100%
rename from data/Summary_Use_SUT_2016.rda
rename to data/Summary_Use_SUT_2016_12sch.rda
diff --git a/data/Summary_Use_SUT_2017.rda b/data/Summary_Use_SUT_2017.rda
deleted file mode 100644
index 29bf0887..00000000
Binary files a/data/Summary_Use_SUT_2017.rda and /dev/null differ
diff --git a/data/Summary_Use_SUT_2017_17sch.rda b/data/Summary_Use_SUT_2017_17sch.rda
new file mode 100644
index 00000000..46e43186
Binary files /dev/null and b/data/Summary_Use_SUT_2017_17sch.rda differ
diff --git a/data/Summary_Use_SUT_2018.rda b/data/Summary_Use_SUT_2018.rda
deleted file mode 100644
index c97310cb..00000000
Binary files a/data/Summary_Use_SUT_2018.rda and /dev/null differ
diff --git a/data/Summary_Use_SUT_2018_17sch.rda b/data/Summary_Use_SUT_2018_17sch.rda
new file mode 100644
index 00000000..54ebc783
Binary files /dev/null and b/data/Summary_Use_SUT_2018_17sch.rda differ
diff --git a/data/Summary_Use_SUT_2019.rda b/data/Summary_Use_SUT_2019.rda
deleted file mode 100644
index edab7151..00000000
Binary files a/data/Summary_Use_SUT_2019.rda and /dev/null differ
diff --git a/data/Summary_Use_SUT_2019_17sch.rda b/data/Summary_Use_SUT_2019_17sch.rda
new file mode 100644
index 00000000..68f60311
Binary files /dev/null and b/data/Summary_Use_SUT_2019_17sch.rda differ
diff --git a/data/Summary_Use_SUT_2020.rda b/data/Summary_Use_SUT_2020.rda
deleted file mode 100644
index 9f5e0ed5..00000000
Binary files a/data/Summary_Use_SUT_2020.rda and /dev/null differ
diff --git a/data/Summary_Use_SUT_2020_17sch.rda b/data/Summary_Use_SUT_2020_17sch.rda
new file mode 100644
index 00000000..379f97ed
Binary files /dev/null and b/data/Summary_Use_SUT_2020_17sch.rda differ
diff --git a/data/Summary_Use_SUT_2021_17sch.rda b/data/Summary_Use_SUT_2021_17sch.rda
new file mode 100644
index 00000000..eeabc998
Binary files /dev/null and b/data/Summary_Use_SUT_2021_17sch.rda differ
diff --git a/data/Summary_Use_SUT_2022_17sch.rda b/data/Summary_Use_SUT_2022_17sch.rda
new file mode 100644
index 00000000..76c7a151
Binary files /dev/null and b/data/Summary_Use_SUT_2022_17sch.rda differ
diff --git a/data/Summary_ValueAddedCodeName_2017.rda b/data/Summary_ValueAddedCodeName_2017.rda
new file mode 100644
index 00000000..7938589d
Binary files /dev/null and b/data/Summary_ValueAddedCodeName_2017.rda differ
diff --git a/data/Summary_ValueAdded_IO.rda b/data/Summary_ValueAdded_IO_12sch.rda
similarity index 100%
rename from data/Summary_ValueAdded_IO.rda
rename to data/Summary_ValueAdded_IO_12sch.rda
diff --git a/data/Summary_ValueAdded_IO_17sch.rda b/data/Summary_ValueAdded_IO_17sch.rda
new file mode 100644
index 00000000..fac764a0
Binary files /dev/null and b/data/Summary_ValueAdded_IO_17sch.rda differ
diff --git a/format_specs/Model.md b/format_specs/Model.md
index 70e80242..21ffc879 100644
--- a/format_specs/Model.md
+++ b/format_specs/Model.md
@@ -4,16 +4,16 @@ A fully constructed USEEIO model is an R named list that contains the following
  
 ## Notes 
  
- A _sector_ is either a commodity or industry, depending on the [model CommodityorIndustry Type](https://github.com/USEPA/useeior/blob/master/format_specs/ModelSpecification.md#model-specifications). The _sector_ will be synononmous for that same CommodityorIndustryType for all tables in a given model in which _sector_ is used. 
+ A _sector_ is either a commodity or industry, depending on the [model CommodityorIndustry Type](ModelSpecification.md#model-specifications). The _sector_ will be synononmous for that same CommodityorIndustryType for all tables in a given model in which _sector_ is used. 
 
-Unless another year is specifically called out, all economic values are given in US dollars (USD) in the value the [model IOyear](https://github.com/USEPA/useeior/blob/master/format_specs/ModelSpecification.md#model-specifications). 
+Unless another year is specifically called out, all economic values are given in US dollars (USD) in the value the [model IOyear](ModelSpecification.md#model-specifications). 
 
 ## Model
 Items are listed in the order in which they appear in a built Model object in R.
 
 | Item | Data Structure | Category | Description |
 | --- | --- | --------- | ------ |
-| specs | list | metadata | [Model specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md) |
+| specs | list | metadata | [Model specifications](ModelSpecification.md) |
 | crosswalk | data.frame | metadata | Sector [crosswalk](#crosswalk) |
 | Commodities | data.frame | metadata | Commodity metadata in [sector meta format](#sector-meta) |
 | Industries | data.frame | metadata | Industry metadata in [sector meta format](#sector-meta) |
@@ -27,9 +27,12 @@ Items are listed in the order in which they appear in a built Model object in R.
 | TaxLessSubsidies | data.frame | supporting data | [Total product supply in basic price and tax less subsidies](#taxlesssubsidies) |
 | MultiYearIndustryCPI | data.frame | supporting data | Multi-year industry CPI<sup>1</sup> in [sector-by-year format](#sector-by-year) |
 | MultiYearCommodityCPI | data.frame |   supporting data | Multi-year commodity CPI<sup>1</sup> in [sector-by-year format](#sector-by-year) |
-| AggregationSpecs | list | metadata | Specifications for one or more aggregations
-| DisaggregationSpecs | list | metadata | Specifications for one or more [disaggregation](https://github.com/USEPA/useeior/tree/master/format_specs/ModelCustomization.md#disaggreation-and-aggregation-yml-file-specification) |
-| HybridizationSpecs | list | metadata | Specifications for [model hybridization](https://github.com/USEPA/useeior/tree/master/format_specs/ModelCustomization.md#hybridization-file-specification) |
+| AggregationSpecs | list | metadata | (Optional) Specifications for one or more aggregations
+| DisaggregationSpecs | list | metadata | (Optional) Specifications for one or more [disaggregation](ModelCustomization.md#disaggreation-and-aggregation-yml-file-specification) |
+| HybridizationSpecs | list | metadata | (Optional) Specifications for [model hybridization](ModelCustomization.md#hybridization-file-specification) |
+| MUIOSpecs | list | metadata | (Optional) Specifications for converting one or more sectors to [physical units](ModelCustomization.md#mixed-unit-file-specification) |
+| WIOSpecs | list | metadata | (Optional) Specifications for tracking [waste flows as unique sectors](ModelCustomization.md#waste-input-output-file-specification) |
+| MUIOSectors | data.frame | metadata | (Optional) Metadata associated with new setors representing physical flows |
 | SatelliteTables | list | component data | [Satellite tables](#satellitetables) |
 | Indicators | list | component data | [Indicators](#indicators) |
 | DemandVectors | list | component data | [Demand vectors](#demandvectors) |
@@ -177,19 +180,19 @@ The Indicators object contains meta and factors dataframes.
 
 | Item | Type | Description |
 | --- | --- | --------- |
-| Name | str | See [Indicator Specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#indicator-specifications) |
-| Code | str | See [Indicator Specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#indicator-specifications) |
-| Group | str | See [Indicator Specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#indicator-specifications) |
-| Unit | str | See [Indicator Specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#indicator-specifications) |
-| SimpleUnit | str | See [Indicator Specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#indicator-specifications) |
-| SimpleName | str | See [Indicator Specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#indicator-specifications) |
+| Name | str | See [Indicator Specifications](ModelSpecification.md#indicator-specifications) |
+| Code | str | See [Indicator Specifications](ModelSpecification.md#indicator-specifications) |
+| Group | str | See [Indicator Specifications](ModelSpecification.md#indicator-specifications) |
+| Unit | str | See [Indicator Specifications](ModelSpecification.md#indicator-specifications) |
+| SimpleUnit | str | See [Indicator Specifications](ModelSpecification.md#indicator-specifications) |
+| SimpleName | str | See [Indicator Specifications](ModelSpecification.md#indicator-specifications) |
 
 #### factors
  A data table of the characterization factors for indicators included in the model
 
 | Item | Type | Description |
 | --- | --- | --------- |
-| Indicator | str | Matches the [Name](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#indicator-specifications) of the indicator |
+| Indicator | str | Matches the [Name](ModelSpecification.md#indicator-specifications) of the indicator |
 | Flowable | str | See [FlowList](https://github.com/USEPA/Federal-LCA-Commons-Elementary-Flow-List/blob/master/format%20specs/FlowList.md) |
 | Context | str | See [FlowList](https://github.com/USEPA/Federal-LCA-Commons-Elementary-Flow-List/blob/master/format%20specs/FlowList.md) |
 | Unit | str | See [FlowList](https://github.com/USEPA/Federal-LCA-Commons-Elementary-Flow-List/blob/master/format%20specs/FlowList.md) |
@@ -207,11 +210,11 @@ The DemandVector object contains the demand vectors and a metadata table.
 
 | Item | Type | Description |
 | --- | --- | --------- |
-| Type | str | See [Demand Vector Specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#demand-vector-specifications) |
-| Year | int | See [Demand Vector Specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#demand-vector-specifications) |
-| System | str | See [Demand Vector Specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#demand-vector-specifications) |
-| Location | str | See [Demand Vector Specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#demand-vector-specifications) |
-| Name | str | See [Demand Vector Specifications](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#demand-vector-specifications) |
+| Type | str | See [Demand Vector Specifications](ModelSpecification.md#demand-vector-specifications) |
+| Year | int | See [Demand Vector Specifications](ModelSpecification.md#demand-vector-specifications) |
+| System | str | See [Demand Vector Specifications](ModelSpecification.md#demand-vector-specifications) |
+| Location | str | See [Demand Vector Specifications](ModelSpecification.md#demand-vector-specifications) |
+| Name | str | See [Demand Vector Specifications](ModelSpecification.md#demand-vector-specifications) |
 | ID | str | A unique ID for that demand vector|
 
 ### Model Component Matrices
@@ -222,7 +225,7 @@ When used in matrix indices, items below take the following format:
 | --- | --------- |
 | sector (commodity or industry) | [Code_Loc](#sector-meta) (e.g. `1111A0/US`) |
 | flow | [Flowable/Context/Unit](#satellite-tables) (e.g. `Carbon dioxide/emission/air/kg`) |
-| indicator | [Name](https://github.com/USEPA/useeior/tree/master/format_specs/ModelSpecification.md#indicator-specifications) (e.g. `Greenhouse Gases`) |
+| indicator | [Name](ModelSpecification.md#indicator-specifications) (e.g. `Greenhouse Gases`) |
 
 
 #### Output vectors
diff --git a/format_specs/ModelCustomization.md b/format_specs/ModelCustomization.md
index 88a3201c..a286aa22 100644
--- a/format_specs/ModelCustomization.md
+++ b/format_specs/ModelCustomization.md
@@ -1,10 +1,11 @@
 # Model Customization File Specifications
-This page describes the file formats needed to customize models in useeior, e.g., model aggregation and disaggregation. 
+This page describes the file formats needed to customize models in useeior.
+This includes models with aggregation and/or disaggregation of target sectors, integrated hybrid models hybridized with process LCI data, mixed unit models (which contain physical flow data), and waste input-output models.
 
 
 # Disaggreation and Aggregation .yml File Specification
-Aggregating a sector requires only one .yml input file, while disaggregation requires a .yml input file and several .csv files to specifiy the disaggregation parameters. 
-The disaggregation and aggregation files are assigned in a yml file based on the parameters shown below. Each file is a list, named based on the [Code/location](https://github.com/USEPA/useeior/blob/master/format_specs/Model.md#sector-meta) of the sector to be disaggregated or aggregated to (e.g. `221100/US`)
+Aggregating a sector requires only one .yml input file, while disaggregation requires a .yml input file and several .csv files to specify the disaggregation parameters. 
+The disaggregation and aggregation files are assigned in a yml file based on the parameters shown below. Each file is a list, named based on the [Code/location](Model.md#sector-meta) of the sector to be disaggregated or aggregated to (e.g. `221100/US`)
 
 
 ## Disaggregation 
@@ -54,12 +55,13 @@ PercentAllocation | numeric | Y | Percent of sector output dedicated to the newl
 Note | string | N |  This column contains short text strings describing the allocation performed in each row. The text is intended to describe how the allocation value is used in the disaggregation. |
 
 ## Disaggregated Satellite Table Format
-Matches [totals-by-sector](https://github.com/USEPA/useeior/blob/master/format_specs/Model.md#totals_by_sector) but includes an additional field `SatelliteTable` indicating the satellite table to which each record applies.
+Matches [totals-by-sector](Model.md#totals_by_sector) but includes an additional field `SatelliteTable` indicating the satellite table to which each record applies.
 
 
 # Hybridization File Specification
-Model hybridization, e.g., with LCA data from unit processes is available via [Model Type: EEIO-IH](https://github.com/USEPA/useeior/blob/hybridization/format_specs/ModelSpecification.md#model-types).
+Model hybridization, e.g., with LCA data from unit processes is available via [Model Type: EEIO-IH](ModelSpecification.md#model-types).
 This hybrid model type requires as input data normalized environmental and technical (i.e., supply chain) data.
+Additional examples of integrated hybrid models can be found in the [Hybrid Input-Output (HIO) data repository](https://github.com/USEPA/HIO/tree/main/useeior).
 
 | Item | Type | Required? | Description |
 | ---  | ---  | ---       | ---------   |
@@ -81,7 +83,7 @@ ProcessName | str | Y |
 ProcessUnit | str | Y | Reference flow
 Location | str | Y | two-digit code, e.g., `US`
 Amount | float | Y | Normalized per unit of reference flow
-FlowID | str | Y | ProcessID of the flow being consumed, use [code_loc format](https://github.com/USEPA/useeior/blob/master/format_specs/Model.md#sector-meta)
+FlowID | str | Y | ProcessID of the flow being consumed, use [code_loc format](Model.md#sector-meta)
 Flow | str | N | ProcessName of the flow being consumed
 FlowUnit | str | N | FEDEFL nomenclature
 
@@ -105,3 +107,50 @@ Context | str | Y | FEDEFL nomenclature
 Unit | str | Y | FEDEFL nomenclature
 FlowUUID | str| Y | FEDEFL nomenclature
 
+# Mixed Unit File Specification
+Model hybridization which converts economic flows for target sectors into physical flows is available via [Model Type: MUIO](ModelSpecification.md#model-types).
+This hybridization approach requires one .yml input file with one or more csv files that label specific sectors as mixed unit (using the MUIO tag) and price conversation data. 
+Additional examples of mixed unit models can be found in the [Hybrid Input-Output (HIO) data repository](https://github.com/USEPA/HIO/tree/main/useeior).
+
+|  Field             |  Type   |  Required? |  Description                                 |
+| ------------------ | ------- | ---------- | ---------------------------------------------|
+|  SectorType        |  string |  Y         |  e.g., `MUIO`                                |
+|  Tag               |  string |  Y         |  Str tag used to identify the physical sector|
+|  NAICS_2012_Code   |  string |  Y         |  NAICS 2012 6-digit code                     |
+|  USEEIO_Code       |  string |  Y         |  Code for new sector in the form of Code/location |
+|  USEEIO_Name       |  string |  Y         |  Name for new sector                         |
+|  Category          |  string |  Y         |  2-digit NAICS Code:Description combination  |
+|  Subcategory       |  string |  N         |  3- or 4-digit NAICS Code:Description combination  |
+|  Description       |  string |  N         |  Description of the sector                   |
+|  Price             |  numeric|  Y         |  Price conversion to target unit             |
+|  Unit              |  string |  Y         |  Physical target unit                        |
+
+# Waste Input Output File Specification
+Model hybridization which appends physical waste flows and waste treatment processes via [Model Type: WIO](ModelSpecification.md#model-types).
+This hybridization approach requires one .yml input file with one or more csv files that label specific sectors as: Waste Treatment Industries and Waste Treatment Commodities (economic sectors); as well as Waste Generation by Mass and Waste Generation by Treatment (physical sectors). 
+Additional examples of mixed unit models can be found in the [Hybrid Input-Output (HIO) data repository](https://github.com/USEPA/HIO/tree/main/useeior).
+
+## Waste Sectors Format
+
+|  Field             |  Type   |  Required? |  Description                                 |
+| ------------------ | ------- | ---------- | ---------------------------------------------|
+|  SectorType        |  string |  Y         |  e.g., `WIO`                                |
+|  USEEIO_Code       |  string |  Y         |  Code for new sector in the form of Code/location |
+|  USEEIO_Name       |  string |  Y         |  Name for new sector                         |
+|  Category          |  string |  Y         |  2-digit NAICS Code:Description combination  |
+|  Subcategory       |  string |  N         |  3- or 4-digit NAICS Code:Description combination  |
+|  Description       |  string |  N         |  Description of the sector                   |
+|  Location          |  string |  N         |  two-digit code, e.g., `US`                  |
+|  Unit              |  string |  Y         |  Physical target unit                        |
+
+## Waste Make and Use Table Format
+
+Field | Type | Required? | Description |
+-- | -- | -- | -- |
+IndustryCode | string | Y | in the form of Code/location |
+CommodityCode | string | Y | in the form of Code/location |
+Amount | numeric | Y |  |
+Unit   | str | Y |  |
+WIO Section | str | N |  |
+Note | string | N |   |
+
diff --git a/format_specs/ModelSpecification.md b/format_specs/ModelSpecification.md
index 51cbfe60..3324a24c 100644
--- a/format_specs/ModelSpecification.md
+++ b/format_specs/ModelSpecification.md
@@ -7,24 +7,27 @@ Model specifications are assigned in a yml file based on the parameters shown be
 | BaseIOSchema | int | Y | The base IO schema (e.g. 2012) |
 | BaseIOLevel | str | Y | The base IO level of detail (e.g. `Detail`) |
 | IOYear | int | Y | The base IO year |
-| PrimaryRegionAcronym | str | Y | The primary region acronym |
 | ModelRegionAcronyms | list | Y | The model region acronyms |
 | ModelType | str | Y | The [model type](#Model-Types) (e.g. `EEIO`) |
-| ModelSource | str | Y | The model source |
-| BasePriceType | str | Y | The model base price type (producer or purchaser) |
+| IODataSource | str | Y | The model source (e.g. `BEA` or `stateior`) |
+| IODataVersion | str | N | Required if IODataSource is `stateior`, [stateior model version number](https://github.com/USEPA/stateior/wiki/Planned-Package-Releases) |
+| BasePriceType | str | Y | The model base price type (`PRO`: producer or `PUR`: purchaser) |
 | BasewithRedefinitions | bool | Y | Whether the model is based with redefinitions (TRUE or FALSE) |
 | CommodityorIndustryType | str | Y | Define if this is a commodity x commodity (`Commodity`) or industry x industry (`Industry`) model |
 | ScrapIncluded | bool | Y | Whether the model includes scrap (TRUE or FALSE) |
 | DisaggregationSpecs | str | N | The [disaggregation specifications](ModelCustomization.md#disaggregation) |
 | HybridizationSpecs | str | N | The [hybridization specifications](ModelCustomization.md#hybridization-file-specification) |
+| MUIOSpecs | str | N | The [mixed unit hybridization specifications](ModelCustomization.md#mixed-unit-file-specification) |
+| WIOSpecs | str | N | The [waste input output specifications](ModelCustomization.md#waste-input-output-file-specification) |
 | SatelliteTable | list |  | The [satellite table specifications](#Satellite-Table-Specifications) |
-| Indicators | list |  | The [indicator specifications](#Indicator-Specifications) |
+| Indicators | list | N | The [indicator specifications](#Indicator-Specifications) |
 | DemandVectors | list |  | The [demand vector specifications](#Demand-Vector-Specifications) |
 
 ## Model Types
-- EEIO: (default) Environmentally Extended Input Output
-- EEIO-IH: Integrated hybrid model
-
+- `EEIO`: (default) Environmentally Extended Input Output
+- `EEIO-IH`: Integrated Hybrid model
+- `MUIO`: Mixed Unit Input-Output
+- `WIO`: Waste Input-Output
 
 ## Satellite Table Specifications
 | Item | Type | Required? | Description |
diff --git a/inst/extdata/2017_Detail_Schema_Info.csv b/inst/extdata/2017_Detail_Schema_Info.csv
new file mode 100644
index 00000000..5718188b
--- /dev/null
+++ b/inst/extdata/2017_Detail_Schema_Info.csv
@@ -0,0 +1,445 @@
+Code,Commodity,Industry,Scrap,UsedGoods,NonComparableImport,RoWAdjustment,ValueAdded,CommodityTotalOutput,IndustryTotalOutput,CommodityIntermediateOutput,HouseholdDemand,InvestmentDemand,ChangeInventories,Export,Import,GovernmentDemand,NaturalGas,Water,Electricity,Petroleum,PersonalTransportRelated,Wholesale,Retail,Transportation,InternationalTradeAdjustment,TaxLessSubsidies
+1111A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+1111B0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+111200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+111300,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+111400,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+111900,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+112120,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+1121A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+112300,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+112A00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+113000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+114000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+115000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+211000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+212100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+212230,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+2122A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+212310,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+2123A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+213111,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+21311A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+221100,1,1,,,,,,,,,,,,,,,,,1,,,,,,,
+221200,1,1,,,,,,,,,,,,,,,1,,,,,,,,,
+221300,1,1,,,,,,,,,,,,,,,,1,,,,,,,,
+233210,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+233262,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+230301,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+230302,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+2332A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+233412,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+2334A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+233230,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+2332D0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+233240,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+233411,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+2332C0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+321100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+321200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+321910,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+3219A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327310,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327320,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327330,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327390,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327400,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327910,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327991,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327992,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327993,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+327999,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+331110,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+331200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+331314,,1,,,,,,,,,,,,,,,,,,,,,,,,
+331313,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33131B,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+331410,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+331420,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+331490,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+331510,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+331520,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332114,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33211A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332119,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332310,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332320,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332410,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332420,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332430,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332500,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332600,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332710,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332720,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332800,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332913,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33291A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332991,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332996,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33299A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+332999,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333111,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333112,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333120,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333130,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333242,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33329A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333314,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333316,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333318,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333414,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333415,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333413,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333511,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333514,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333517,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33351B,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333611,1,1,,,,,,,,,,,,,,,,,,,1,,,,,
+333612,1,1,,,,,,,,,,,,,,,,,,,1,,,,,
+333613,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333618,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333912,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333914,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333920,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333991,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333993,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+333994,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33399A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33399B,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334111,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334112,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334118,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334210,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334220,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334290,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334413,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334418,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33441A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334510,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334511,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334512,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334513,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334514,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334515,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334516,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334517,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33451A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334300,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+334610,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335110,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335120,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335210,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335220,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335311,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335312,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335313,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335314,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335911,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335912,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335920,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335930,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335991,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+335999,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336111,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336112,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336120,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336211,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336212,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336213,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336214,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336310,1,1,,,,,,,,,,,,,,,,,,,1,,,,,
+336320,1,1,,,,,,,,,,,,,,,,,,,1,,,,,
+336350,1,1,,,,,,,,,,,,,,,,,,,1,,,,,
+336360,1,1,,,,,,,,,,,,,,,,,,,1,,,,,
+336370,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336390,1,1,,,,,,,,,,,,,,,,,,,1,,,,,
+3363A0,1,1,,,,,,,,,,,,,,,,,,,1,,,,,
+336411,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336412,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336413,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336414,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33641A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336500,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336611,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336612,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336991,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336992,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+336999,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+337110,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+337121,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+337122,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+337127,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33712N,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+337215,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+33721A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+337900,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+339112,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+339113,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+339114,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+339115,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+339116,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+339910,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+339920,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+339930,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+339940,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+339950,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+339990,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311111,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311119,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311210,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311221,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311225,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311224,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311230,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311300,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311410,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311420,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311513,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311514,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+31151A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311520,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311615,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+31161A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311700,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311810,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+3118A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311910,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311920,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311930,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311940,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+311990,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+312110,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+312120,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+312130,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+312140,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+312200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+313100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+313200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+313300,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+314110,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+314120,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+314900,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+315000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+316000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+322110,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+322120,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+322130,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+322210,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+322220,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+322230,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+322291,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+322299,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+323110,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+323120,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+324110,1,1,,,,,,,,,,,,,,,,,,1,1,,,,,
+324121,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+324122,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+324190,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325110,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325120,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325130,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325180,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325190,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325211,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+3252A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325411,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325412,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325413,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325414,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325310,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325320,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325510,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325520,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325610,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325620,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+325910,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+3259A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+326110,1,1,,,,,,,,,,,,,,,,,,,1,,,,,
+326120,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+326130,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+326140,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+326150,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+326160,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+326190,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+326210,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+326220,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+326290,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+423100,1,1,,,,,,,,,,,,,,,,,,,,1,,,,
+423400,1,1,,,,,,,,,,,,,,,,,,,,1,,,,
+423600,1,1,,,,,,,,,,,,,,,,,,,,1,,,,
+423800,1,1,,,,,,,,,,,,,,,,,,,,1,,,,
+423A00,1,1,,,,,,,,,,,,,,,,,,,,1,,,,
+424200,1,1,,,,,,,,,,,,,,,,,,,,1,,,,
+424400,1,1,,,,,,,,,,,,,,,,,,,,1,,,,
+424700,1,1,,,,,,,,,,,,,,,,,,,1,1,,,,
+424A00,1,1,,,,,,,,,,,,,,,,,,,,1,,,,
+425000,1,1,,,,,,,,,,,,,,,,,,,,1,,,,
+4200ID,1,1,,,,,,,,,,,,,,,,,,,,1,,,,
+441000,1,1,,,,,,,,,,,,,,,,,,,1,,1,,,
+445000,1,1,,,,,,,,,,,,,,,,,,,,,1,,,
+452000,1,1,,,,,,,,,,,,,,,,,,,,,1,,,
+444000,1,1,,,,,,,,,,,,,,,,,,,,,1,,,
+446000,1,1,,,,,,,,,,,,,,,,,,,,,1,,,
+447000,1,1,,,,,,,,,,,,,,,,,,,,,1,,,
+448000,1,1,,,,,,,,,,,,,,,,,,,,,1,,,
+454000,1,1,,,,,,,,,,,,,,,,,,,,,1,,,
+4B0000,1,1,,,,,,,,,,,,,,,,,,,,,1,,,
+481000,1,1,,,,,,,,,,,,,,,,,,,,,,1,,
+482000,1,1,,,,,,,,,,,,,,,,,,,,,,1,,
+483000,1,1,,,,,,,,,,,,,,,,,,,,,,1,,
+484000,1,1,,,,,,,,,,,,,,,,,,,,,,1,,
+485000,1,1,,,,,,,,,,,,,,,,,,,,,,1,,
+486000,1,1,,,,,,,,,,,,,,,,,,,,,,1,,
+48A000,1,1,,,,,,,,,,,,,,,,,,,,,,1,,
+492000,1,1,,,,,,,,,,,,,,,,,,,,,,1,,
+493000,1,1,,,,,,,,,,,,,,,,,,,,,,1,,
+511110,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+511120,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+511130,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+5111A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+511200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+512100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+512200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+515100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+515200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+517110,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+517210,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+517A00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+518200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+519130,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+5191A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+522A00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+52A000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+523900,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+523A00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+524113,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+5241XX,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+524200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+525000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+531HSO,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+531HST,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+531ORE,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+532100,1,1,,,,,,,,,,,,,,,,,,,1,,,,,
+532400,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+532A00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+533000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+541100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+541511,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+541512,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+54151A,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+541200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+541300,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+541610,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+5416A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+541700,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+541800,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+541400,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+541920,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+541940,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+5419A0,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+550000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+561300,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+561700,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+561100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+561200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+561400,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+561500,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+561600,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+561900,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+562000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+611100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+611A00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+611B00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+621100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+621200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+621300,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+621400,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+621500,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+621600,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+621900,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+622000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+623A00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+623B00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+624100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+624400,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+624A00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+711100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+711200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+711500,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+711A00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+712000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+713100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+713200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+713900,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+721000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+722110,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+722211,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+722A00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+811100,1,1,,,,,,,,,,,,,,,,,,,1,,,,,
+811200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+811300,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+811400,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+812100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+812200,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+812300,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+812900,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+813100,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+813A00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+813B00,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+814000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+S00500,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+S00600,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+491000,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+S00101,,1,,,,,,,,,,,,,,,,,,,,,,,,
+S00102,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+GSLGE,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+GSLGH,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+GSLGO,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+S00201,,1,,,,,,,,,,,,,,,,,,,,,,,,
+S00202,,1,,,,,,,,,,,,,,,,,,,,,,,,
+S00203,1,1,,,,,,,,,,,,,,,,,,,,,,,,
+S00401,1,,1,,,,,,,,,,,,,,,,,,,,,,,
+S00402,1,,,1,,,,,,,,,,,,,,,,,,,,,,
+S00300,1,,,,1,,,,,,,,,,,,,,,,,,,,,
+S00900,1,,,,,1,,,,,,,,,,,,,,,,,,,,
+T005,,,,,,,,,,1,,,,,,,,,,,,,,,,
+V00100,,,,,,,1,,,,,,,,,,,,,,,,,,,
+V00200,,,,,,,1,,,,,,,,,,,,,,,,,,,
+V00300,,,,,,,1,,,,,,,,,,,,,,,,,,,
+T006,,,,,,,,,,,,,,,,,,,,,,,,,,
+T008,,,,,,,,,1,,,,,,,,,,,,,,,,,
+T001,,,,,,,,,,,,,,,,,,,,,,,,,,
+F01000,,,,,,,,,,,1,,,,,,,,,,,,,,,
+F02E00,,,,,,,,,,,,1,,,,,,,,,,,,,,
+F02N00,,,,,,,,,,,,1,,,,,,,,,,,,,,
+F02R00,,,,,,,,,,,,1,,,,,,,,,,,,,,
+F02S00,,,,,,,,,,,,1,,,,,,,,,,,,,,
+F03000,,,,,,,,,,,,,1,,,,,,,,,,,,,
+F04000,,,,,,,,,,,,,,1,,,,,,,,,,,,
+F05000,,,,,,,,,,,,,,,1,,,,,,,,,,,
+F06C00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+F06E00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+F06N00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+F06S00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+F07C00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+F07E00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+F07N00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+F07S00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+F10C00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+F10E00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+F10N00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+F10S00,,,,,,,,,,,,,,,,1,,,,,,,,,,
+T004,,,,,,,,,,,,,,,,,,,,,,,,,,
+T007,,,,,,,,1,,,,,,,,,,,,,,,,,,
+F05100,,,,,,,,,,,,,,,,,,,,,,,,,1,
+MDTY,,,,,,,,,,,,,,,,,,,,,,,,,,1
+TOP,,,,,,,,,,,,,,,,,,,,,,,,,,1
+SUB,,,,,,,,,,,,,,,,,,,,,,,,,,1
+T00OTOP,,,,,,,1,,,,,,,,,,,,,,,,,,,
+T00TOP,,,,,,,1,,,,,,,,,,,,,,,,,,,
+T00SUB,,,,,,,1,,,,,,,,,,,,,,,,,,,
+MCIF,,,,,,,,,,,,,,,1,,,,,,,,,,,
+MADJ,,,,,,,,,,,,,,,1,,,,,,,,,,,
diff --git a/inst/extdata/2017_Summary_Schema_Info.csv b/inst/extdata/2017_Summary_Schema_Info.csv
new file mode 100644
index 00000000..627871fb
--- /dev/null
+++ b/inst/extdata/2017_Summary_Schema_Info.csv
@@ -0,0 +1,117 @@
+Code,Commodity,Industry,Scrap,UsedGoods,NonComparableImport,RoWAdjustment,ValueAdded,CommodityTotalOutput,IndustryTotalOutput,CommodityIntermediateOutput,HouseholdDemand,InvestmentDemand,ChangeInventories,Export,Import,GovernmentDemand,Wholesale,Retail,Transportation,InternationalTradeAdjustment,TaxLessSubsidies
+111CA,1,1,,,,,,,,,,,,,,,,,,,
+113FF,1,1,,,,,,,,,,,,,,,,,,,
+211,1,1,,,,,,,,,,,,,,,,,,,
+212,1,1,,,,,,,,,,,,,,,,,,,
+213,1,1,,,,,,,,,,,,,,,,,,,
+22,1,1,,,,,,,,,,,,,,,,,,,
+23,1,1,,,,,,,,,,,,,,,,,,,
+321,1,1,,,,,,,,,,,,,,,,,,,
+327,1,1,,,,,,,,,,,,,,,,,,,
+331,1,1,,,,,,,,,,,,,,,,,,,
+332,1,1,,,,,,,,,,,,,,,,,,,
+333,1,1,,,,,,,,,,,,,,,,,,,
+334,1,1,,,,,,,,,,,,,,,,,,,
+335,1,1,,,,,,,,,,,,,,,,,,,
+3361MV,1,1,,,,,,,,,,,,,,,,,,,
+3364OT,1,1,,,,,,,,,,,,,,,,,,,
+337,1,1,,,,,,,,,,,,,,,,,,,
+339,1,1,,,,,,,,,,,,,,,,,,,
+311FT,1,1,,,,,,,,,,,,,,,,,,,
+313TT,1,1,,,,,,,,,,,,,,,,,,,
+315AL,1,1,,,,,,,,,,,,,,,,,,,
+322,1,1,,,,,,,,,,,,,,,,,,,
+323,1,1,,,,,,,,,,,,,,,,,,,
+324,1,1,,,,,,,,,,,,,,,,,,,
+325,1,1,,,,,,,,,,,,,,,,,,,
+326,1,1,,,,,,,,,,,,,,,,,,,
+42,1,1,,,,,,,,,,,,,,,1,,,,
+441,1,1,,,,,,,,,,,,,,,,1,,,
+445,1,1,,,,,,,,,,,,,,,,1,,,
+452,1,1,,,,,,,,,,,,,,,,1,,,
+4A0,1,1,,,,,,,,,,,,,,,,1,,,
+481,1,1,,,,,,,,,,,,,,,,,1,,
+482,1,1,,,,,,,,,,,,,,,,,1,,
+483,1,1,,,,,,,,,,,,,,,,,1,,
+484,1,1,,,,,,,,,,,,,,,,,1,,
+485,1,1,,,,,,,,,,,,,,,,,1,,
+486,1,1,,,,,,,,,,,,,,,,,1,,
+487OS,1,1,,,,,,,,,,,,,,,,,1,,
+493,1,1,,,,,,,,,,,,,,,,,1,,
+511,1,1,,,,,,,,,,,,,,,,,,,
+512,1,1,,,,,,,,,,,,,,,,,,,
+513,1,1,,,,,,,,,,,,,,,,,,,
+514,1,1,,,,,,,,,,,,,,,,,,,
+521CI,1,1,,,,,,,,,,,,,,,,,,,
+523,1,1,,,,,,,,,,,,,,,,,,,
+524,1,1,,,,,,,,,,,,,,,,,,,
+525,1,1,,,,,,,,,,,,,,,,,,,
+HS,1,1,,,,,,,,,,,,,,,,,,,
+ORE,1,1,,,,,,,,,,,,,,,,,,,
+532RL,1,1,,,,,,,,,,,,,,,,,,,
+5411,1,1,,,,,,,,,,,,,,,,,,,
+5415,1,1,,,,,,,,,,,,,,,,,,,
+5412OP,1,1,,,,,,,,,,,,,,,,,,,
+55,1,1,,,,,,,,,,,,,,,,,,,
+561,1,1,,,,,,,,,,,,,,,,,,,
+562,1,1,,,,,,,,,,,,,,,,,,,
+61,1,1,,,,,,,,,,,,,,,,,,,
+621,1,1,,,,,,,,,,,,,,,,,,,
+622,1,1,,,,,,,,,,,,,,,,,,,
+623,1,1,,,,,,,,,,,,,,,,,,,
+624,1,1,,,,,,,,,,,,,,,,,,,
+711AS,1,1,,,,,,,,,,,,,,,,,,,
+713,1,1,,,,,,,,,,,,,,,,,,,
+721,1,1,,,,,,,,,,,,,,,,,,,
+722,1,1,,,,,,,,,,,,,,,,,,,
+81,1,1,,,,,,,,,,,,,,,,,,,
+GFGD,1,1,,,,,,,,,,,,,,,,,,,
+GFGN,1,1,,,,,,,,,,,,,,,,,,,
+GFE,1,1,,,,,,,,,,,,,,,,,,,
+GSLG,1,1,,,,,,,,,,,,,,,,,,,
+GSLE,1,1,,,,,,,,,,,,,,,,,,,
+Used,1,,1,1,,,,,,,,,,,,,,,,,
+Other,1,,,,1,1,,,,,,,,,,,,,,,
+Sum of Intermediate Selected,,,,,,,,,,,,,,,,,,,,,
+Intermediate Not Selected,,,,,,,,,,,,,,,,,,,,,
+Total Intermediate,,,,,,,,,,1,,,,,,,,,,,
+V001,,,,,,,1,,,,,,,,,,,,,,
+V002,,,,,,,1,,,,,,,,,,,,,,
+V003,,,,,,,1,,,,,,,,,,,,,,
+Sum of Value Added Selected,,,,,,,,,,,,,,,,,,,,,
+Sum of Value Added Not Selected,,,,,,,,,,,,,,,,,,,,,
+Total Value Added,,,,,,,,,,,,,,,,,,,,,
+Total Industry Output,,,,,,,,,1,,,,,,,,,,,,
+F010,,,,,,,,,,,1,,,,,,,,,,
+F02S,,,,,,,,,,,,1,,,,,,,,,
+F02E,,,,,,,,,,,,1,,,,,,,,,
+F02N,,,,,,,,,,,,1,,,,,,,,,
+F02R,,,,,,,,,,,,1,,,,,,,,,
+F030,,,,,,,,,,,,,1,,,,,,,,
+F040,,,,,,,,,,,,,,1,,,,,,,
+F050,,,,,,,,,,,,,,,1,,,,,,
+F06C,,,,,,,,,,,,,,,,1,,,,,
+F06S,,,,,,,,,,,,,,,,1,,,,,
+F06E,,,,,,,,,,,,,,,,1,,,,,
+F06N,,,,,,,,,,,,,,,,1,,,,,
+F07C,,,,,,,,,,,,,,,,1,,,,,
+F07S,,,,,,,,,,,,,,,,1,,,,,
+F07E,,,,,,,,,,,,,,,,1,,,,,
+F07N,,,,,,,,,,,,,,,,1,,,,,
+F10C,,,,,,,,,,,,,,,,1,,,,,
+F10S,,,,,,,,,,,,,,,,1,,,,,
+F10E,,,,,,,,,,,,,,,,1,,,,,
+F10N,,,,,,,,,,,,,,,,1,,,,,
+Sum of Final Uses (GDP) Selected,,,,,,,,,,,,,,,,,,,,,
+Sum of Final Uses (GDP) Not Selected,,,,,,,,,,,,,,,,,,,,,
+Total Final Uses (GDP),,,,,,,,,,,,,,,,,,,,,
+Total Commodity Output,,,,,,,,1,,,,,,,,,,,,,
+F051,,,,,,,,,,,,,,,,,,,,1,
+MDTY,,,,,,,,,,,,,,,,,,,,,1
+TOP,,,,,,,,,,,,,,,,,,,,,1
+SUB,,,,,,,,,,,,,,,,,,,,,1
+T00OTOP,,,,,,,1,,,,,,,,,,,,,,
+T00TOP,,,,,,,1,,,,,,,,,,,,,,
+T00SUB,,,,,,,1,,,,,,,,,,,,,,
+MCIF,,,,,,,,,,,,,,,1,,,,,,
+MADJ,,,,,,,,,,,,,,,1,,,,,,
\ No newline at end of file
diff --git a/inst/extdata/23_BEAtoUSEEIOtoNAICS_2017.csv b/inst/extdata/23_BEAtoUSEEIOtoNAICS_2017.csv
new file mode 100644
index 00000000..7dc625de
--- /dev/null
+++ b/inst/extdata/23_BEAtoUSEEIOtoNAICS_2017.csv
@@ -0,0 +1,617 @@
+BEA_2017_Sector_Code,BEA_2017_Sector_Name,BEA_2017_Summary_Code,BEA_2017_Summary_Name,BEA_2017_Detail_Code,BEA_2017_Detail_Name,USEEIO_Code,USEEIO_Industry,NAICS_2017_Code,NAICS_2017_Name
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23,Construction
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23,Construction
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23,Construction
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23,Construction
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23,Construction
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23,Construction
+23,Construction,23,Construction,2332C0,Transportation structures and highways and streets,2332C0,Transportation structures and highways and streets,23,Construction
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23,Construction
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23,Construction
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23,Construction
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23,Construction
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23,Construction
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,236,Construction of Buildings
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,236,Construction of Buildings
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,236,Construction of Buildings
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,236,Construction of Buildings
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,236,Construction of Buildings
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",236,Construction of Buildings
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,236,Construction of Buildings
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,236,Construction of Buildings
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,236,Construction of Buildings
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,236,Construction of Buildings
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,2361,Residential Building Construction
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,2361,Residential Building Construction
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,2361,Residential Building Construction
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,2361,Residential Building Construction
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23611,Residential Building Construction
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23611,Residential Building Construction
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23611,Residential Building Construction
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23611,Residential Building Construction
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,236115,New Single-Family Housing Construction (except For-Sale Builders) 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,236116,New Multifamily Housing Construction (except For-Sale Builders) 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,236117,New Housing For-Sale Builders 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,236117,New Housing For-Sale Builders 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,236117,New Housing For-Sale Builders 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,236118,Residential Remodelers 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,2362,Nonresidential Building Construction
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",2362,Nonresidential Building Construction
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,2362,Nonresidential Building Construction
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,2362,Nonresidential Building Construction
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,2362,Nonresidential Building Construction
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,2362,Nonresidential Building Construction
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23621,Industrial Building Construction
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23621,Industrial Building Construction
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,236210,Industrial Building Construction 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,236210,Industrial Building Construction 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23622,Commercial and Institutional Building Construction
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23622,Commercial and Institutional Building Construction
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23622,Commercial and Institutional Building Construction
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23622,Commercial and Institutional Building Construction
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,236220,Commercial and Institutional Building Construction 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,236220,Commercial and Institutional Building Construction 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",236220,Commercial and Institutional Building Construction 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,236220,Commercial and Institutional Building Construction 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,237,Heavy and Civil Engineering Construction
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,237,Heavy and Civil Engineering Construction
+23,Construction,23,Construction,2332C0,Transportation structures and highways and streets,2332C0,Transportation structures and highways and streets,237,Heavy and Civil Engineering Construction
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,2371,Utility System Construction
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23711,Water and Sewer Line and Related Structures Construction
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,237110,Water and Sewer Line and Related Structures Construction 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23712,Oil and Gas Pipeline and Related Structures Construction
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,237120,Oil and Gas Pipeline and Related Structures Construction 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23713,Power and Communication Line and Related Structures Construction
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,237130,Power and Communication Line and Related Structures Construction 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,2372,Land Subdivision
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,2372,Land Subdivision
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,2372,Land Subdivision
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,2372,Land Subdivision
+23,Construction,23,Construction,2332C0,Transportation structures and highways and streets,2332C0,Transportation structures and highways and streets,2372,Land Subdivision
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",2372,Land Subdivision
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,2372,Land Subdivision
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,2372,Land Subdivision
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,2372,Land Subdivision
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,2372,Land Subdivision
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23721,Land Subdivision
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23721,Land Subdivision
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23721,Land Subdivision
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23721,Land Subdivision
+23,Construction,23,Construction,2332C0,Transportation structures and highways and streets,2332C0,Transportation structures and highways and streets,23721,Land Subdivision
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23721,Land Subdivision
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23721,Land Subdivision
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23721,Land Subdivision
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23721,Land Subdivision
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23721,Land Subdivision
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,237210,Land Subdivision 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,237210,Land Subdivision 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,237210,Land Subdivision 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,237210,Land Subdivision 
+23,Construction,23,Construction,2332C0,Transportation structures and highways and streets,2332C0,Transportation structures and highways and streets,237210,Land Subdivision 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",237210,Land Subdivision 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,237210,Land Subdivision 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,237210,Land Subdivision 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,237210,Land Subdivision 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,237210,Land Subdivision 
+23,Construction,23,Construction,2332C0,Transportation structures and highways and streets,2332C0,Transportation structures and highways and streets,2373,"Highway, Street, and Bridge Construction"
+23,Construction,23,Construction,2332C0,Transportation structures and highways and streets,2332C0,Transportation structures and highways and streets,23731,"Highway, Street, and Bridge Construction"
+23,Construction,23,Construction,2332C0,Transportation structures and highways and streets,2332C0,Transportation structures and highways and streets,237310,"Highway, Street, and Bridge Construction "
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,2379,Other Heavy and Civil Engineering Construction
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23799,Other Heavy and Civil Engineering Construction
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,237990,Other Heavy and Civil Engineering Construction 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238,Specialty Trade Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238,Specialty Trade Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238,Specialty Trade Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238,Specialty Trade Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238,Specialty Trade Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238,Specialty Trade Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238,Specialty Trade Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238,Specialty Trade Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238,Specialty Trade Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238,Specialty Trade Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238,Specialty Trade Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238,Specialty Trade Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,2381,"Foundation, Structure, and Building Exterior Contractors"
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23811,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238110,Poured Concrete Foundation and Structure Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23812,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238120,Structural Steel and Precast Concrete Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23813,Framing Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23813,Framing Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23813,Framing Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23813,Framing Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23813,Framing Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23813,Framing Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23813,Framing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23813,Framing Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23813,Framing Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23813,Framing Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23813,Framing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23813,Framing Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238130,Framing Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238130,Framing Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238130,Framing Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238130,Framing Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238130,Framing Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238130,Framing Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238130,Framing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238130,Framing Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238130,Framing Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238130,Framing Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238130,Framing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238130,Framing Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23814,Masonry Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23814,Masonry Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23814,Masonry Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23814,Masonry Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23814,Masonry Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23814,Masonry Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23814,Masonry Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23814,Masonry Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23814,Masonry Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23814,Masonry Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23814,Masonry Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23814,Masonry Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238140,Masonry Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238140,Masonry Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238140,Masonry Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238140,Masonry Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238140,Masonry Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238140,Masonry Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238140,Masonry Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238140,Masonry Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238140,Masonry Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238140,Masonry Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238140,Masonry Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238140,Masonry Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23815,Glass and Glazing Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238150,Glass and Glazing Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23816,Roofing Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23816,Roofing Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23816,Roofing Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23816,Roofing Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23816,Roofing Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23816,Roofing Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23816,Roofing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23816,Roofing Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23816,Roofing Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23816,Roofing Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23816,Roofing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23816,Roofing Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238160,Roofing Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238160,Roofing Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238160,Roofing Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238160,Roofing Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238160,Roofing Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238160,Roofing Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238160,Roofing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238160,Roofing Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238160,Roofing Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238160,Roofing Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238160,Roofing Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238160,Roofing Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23817,Siding Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23817,Siding Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23817,Siding Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23817,Siding Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23817,Siding Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23817,Siding Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23817,Siding Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23817,Siding Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23817,Siding Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23817,Siding Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23817,Siding Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23817,Siding Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238170,Siding Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238170,Siding Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238170,Siding Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238170,Siding Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238170,Siding Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238170,Siding Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238170,Siding Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238170,Siding Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238170,Siding Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238170,Siding Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238170,Siding Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238170,Siding Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23819,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238190,"Other Foundation, Structure, and Building Exterior Contractors "
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,2382,Building Equipment Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,2382,Building Equipment Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,2382,Building Equipment Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,2382,Building Equipment Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,2382,Building Equipment Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,2382,Building Equipment Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",2382,Building Equipment Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,2382,Building Equipment Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,2382,Building Equipment Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,2382,Building Equipment Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,2382,Building Equipment Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,2382,Building Equipment Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23821,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238210,Electrical Contractors and Other Wiring Installation Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23822,"Plumbing, Heating, and Air-Conditioning Contractors"
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238220,"Plumbing, Heating, and Air-Conditioning Contractors "
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23829,Other Building Equipment Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23829,Other Building Equipment Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23829,Other Building Equipment Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23829,Other Building Equipment Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23829,Other Building Equipment Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23829,Other Building Equipment Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23829,Other Building Equipment Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23829,Other Building Equipment Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23829,Other Building Equipment Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23829,Other Building Equipment Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23829,Other Building Equipment Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23829,Other Building Equipment Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238290,Other Building Equipment Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,2383,Building Finishing Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,2383,Building Finishing Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,2383,Building Finishing Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,2383,Building Finishing Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,2383,Building Finishing Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,2383,Building Finishing Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",2383,Building Finishing Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,2383,Building Finishing Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,2383,Building Finishing Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,2383,Building Finishing Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,2383,Building Finishing Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,2383,Building Finishing Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23831,Drywall and Insulation Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238310,Drywall and Insulation Contractors 
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23832,Painting and Wall Covering Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238320,Painting and Wall Covering Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23833,Flooring Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23833,Flooring Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23833,Flooring Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23833,Flooring Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23833,Flooring Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23833,Flooring Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23833,Flooring Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23833,Flooring Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23833,Flooring Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23833,Flooring Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23833,Flooring Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23833,Flooring Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238330,Flooring Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238330,Flooring Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238330,Flooring Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238330,Flooring Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238330,Flooring Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238330,Flooring Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238330,Flooring Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238330,Flooring Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238330,Flooring Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238330,Flooring Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238330,Flooring Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238330,Flooring Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23834,Tile and Terrazzo Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238340,Tile and Terrazzo Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23835,Finish Carpentry Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23835,Finish Carpentry Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23835,Finish Carpentry Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23835,Finish Carpentry Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23835,Finish Carpentry Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23835,Finish Carpentry Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23835,Finish Carpentry Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23835,Finish Carpentry Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23835,Finish Carpentry Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23835,Finish Carpentry Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23835,Finish Carpentry Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23835,Finish Carpentry Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238350,Finish Carpentry Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238350,Finish Carpentry Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238350,Finish Carpentry Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238350,Finish Carpentry Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238350,Finish Carpentry Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238350,Finish Carpentry Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238350,Finish Carpentry Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238350,Finish Carpentry Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238350,Finish Carpentry Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238350,Finish Carpentry Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238350,Finish Carpentry Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238350,Finish Carpentry Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23839,Other Building Finishing Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23839,Other Building Finishing Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23839,Other Building Finishing Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23839,Other Building Finishing Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23839,Other Building Finishing Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23839,Other Building Finishing Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23839,Other Building Finishing Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23839,Other Building Finishing Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23839,Other Building Finishing Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23839,Other Building Finishing Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23839,Other Building Finishing Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23839,Other Building Finishing Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238390,Other Building Finishing Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238390,Other Building Finishing Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238390,Other Building Finishing Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238390,Other Building Finishing Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238390,Other Building Finishing Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238390,Other Building Finishing Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238390,Other Building Finishing Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238390,Other Building Finishing Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238390,Other Building Finishing Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238390,Other Building Finishing Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238390,Other Building Finishing Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238390,Other Building Finishing Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,2389,Other Specialty Trade Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23891,Site Preparation Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23891,Site Preparation Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23891,Site Preparation Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23891,Site Preparation Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23891,Site Preparation Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23891,Site Preparation Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23891,Site Preparation Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23891,Site Preparation Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23891,Site Preparation Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23891,Site Preparation Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23891,Site Preparation Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23891,Site Preparation Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238910,Site Preparation Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238910,Site Preparation Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238910,Site Preparation Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238910,Site Preparation Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238910,Site Preparation Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238910,Site Preparation Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238910,Site Preparation Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238910,Site Preparation Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238910,Site Preparation Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238910,Site Preparation Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238910,Site Preparation Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238910,Site Preparation Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,23899,All Other Specialty Trade Contractors
+23,Construction,23,Construction,230301,Nonresidential maintenance and repair,230301,Nonresidential maintenance and repair,238990,All Other Specialty Trade Contractors
+23,Construction,23,Construction,230302,Residential maintenance and repair,230302,Residential maintenance and repair,238990,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233210,Health care structures,233210,Health care structures,238990,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233230,Manufacturing structures,233230,Manufacturing structures,238990,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233240,Power and communication structures,233240,Power and communication structures,238990,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233262,Educational and vocational structures,233262,Educational and vocational structures,238990,All Other Specialty Trade Contractors
+23,Construction,23,Construction,2332A0,"Commercial structures, including farm structures",2332A0,"Commercial structures, including farm structures",238990,All Other Specialty Trade Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238990,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233411,Single-family residential structures,233411,Single-family residential structures,238990,All Other Specialty Trade Contractors
+23,Construction,23,Construction,233412,Multifamily residential structures,233412,Multifamily residential structures,238990,All Other Specialty Trade Contractors
+23,Construction,23,Construction,2334A0,Other residential structures,2334A0,Other residential structures,238990,All Other Specialty Trade Contractors
+23,Construction,23,Construction,2332D0,Other nonresidential structures,2332D0,Other nonresidential structures,238990,All Other Specialty Trade Contractors
diff --git a/inst/extdata/BEA_2017_Sector_CodeName_mapping.csv b/inst/extdata/BEA_2017_Sector_CodeName_mapping.csv
new file mode 100644
index 00000000..273e463f
--- /dev/null
+++ b/inst/extdata/BEA_2017_Sector_CodeName_mapping.csv
@@ -0,0 +1,33 @@
+BEA_2017_Sector_Code,BEA_2017_Sector_Name,BEA_2017_Sector_Code_agg,BEA_2017_Sector_Name_agg
+11,"AGRICULTURE, FORESTRY, FISHING, AND HUNTING",11,"Agriculture, forestry, fishing, and hunting"
+21,MINING,21,Mining
+22,UTILITIES,22,Utilities
+23,Construction,23,Construction
+31ND,NONDURABLE GOODS,31G,Manufacturing
+33DG,DURABLE GOODS,31G,Manufacturing
+42,WHOLESALE TRADE,42,Wholesale trade
+44RT,RETAIL TRADE,44RT,Retail trade
+48TW,"TRANSPORTATION AND WAREHOUSING, EXCLUDING POSTAL SERVICE",48TW,Transportation and warehousing
+G,Government,G,Government
+51,INFORMATION,51,Information
+52,FINANCE AND INSURANCE,FIRE,"Finance, insurance, real estate, rental, and leasing"
+53,REAL ESTATE AND RENTAL AND LEASING,FIRE,"Finance, insurance, real estate, rental, and leasing"
+54,PROFESSIONAL AND TECHNICAL SERVICES,PROF,Professional and business services
+55,MANAGEMENT OF COMPANIES AND ENTREPRISES,PROF,Professional and business services
+56,ADMINISTRATIVE AND WASTE SERVICES,PROF,Professional and business services
+61,EDUCATIONAL SERVICES,6,"Educational services, health care, and social assistance"
+62,HEALTH CARE AND SOCIAL ASSISTANCE,6,"Educational services, health care, and social assistance"
+71,"ARTS, ENTERTAINMENT, AND RECREATION",7,"Arts, entertainment, recreation, accommodation, and food services"
+72,ACCOMMODATION AND FOOD SERVICES,7,"Arts, entertainment, recreation, accommodation, and food services"
+81,"OTHER SERVICES, EXCEPT GOVERNMENT",81,"Other services, except government"
+Used,"SCRAP, USED AND SECONDHAND GOODS",Used,"Scrap, used and secondhand goods"
+Other,NONCOMPARABLE IMPORTS AND REST-OF-THE-WORLD ADJUSTMENT,Other,Noncomparable imports and rest-of-the-world adjustment
+F010,Personal consumption expenditures,F010,Personal consumption expenditures
+F020,Private fixed investment,F020,Private fixed investment
+F030,Change in private inventories,F030,Change in private inventories
+F040,Exports of goods and services,F040,Exports of goods and services
+F050,Imports of goods and services,F050,Imports of goods and services
+F100,Government consumption expenditures and gross investment,F100,Government consumption expenditures and gross investment
+V001,Compensation of employees,V001,Compensation of employees
+V002,"Taxes on production and imports, less subsidies",V002,"Taxes on production and imports, less subsidies"
+V003,Gross operating surplus,V003,Gross operating surplus
diff --git a/inst/extdata/Crosswalk_DetailGDPIndustrytoIO.csv b/inst/extdata/Crosswalk_DetailGDPIndustrytoIO.csv
new file mode 100644
index 00000000..75c9f954
--- /dev/null
+++ b/inst/extdata/Crosswalk_DetailGDPIndustrytoIO.csv
@@ -0,0 +1,431 @@
+Gross_Output_Detail_Industry,BEA_2012_Detail_Code,BEA_2017_Detail_Code
+Oilseed farming,1111A0,1111A0
+Grain farming,1111B0,1111B0
+Vegetable and melon farming,111200,111200
+Fruit and tree nut farming,111300,111300
+"Greenhouse, nursery, and floriculture production",111400,111400
+Other crop farming,111900,111900
+Dairy cattle and milk production,112120,112120
+"Beef cattle ranching and farming, including feedlots and dual-purpose ranching and farming",1121A0,1121A0
+Poultry and egg production,112300,112300
+"Animal production, except cattle and poultry and eggs",112A00,112A00
+Forestry and logging,113000,113000
+"Fishing, hunting and trapping",114000,114000
+Support activities for agriculture and forestry,115000,115000
+Oil and gas extraction,211000,211000
+Coal mining,212100,212100
+"Copper, nickel, lead, and zinc mining",212230,212230
+"Iron, gold, silver, and other metal ore mining",2122A0,2122A0
+Stone mining and quarrying,212310,212310
+Other nonmetallic mineral mining and quarrying,2123A0,2123A0
+Drilling oil and gas wells,213111,213111
+Other support activities for mining,21311A,21311A
+"Electric power generation, transmission, and distribution",221100,
+Natural gas distribution,221200,221200
+"Water, sewage and other systems",221300,221300
+Nonresidential maintenance and repair,230301,230301
+Residential maintenance and repair,230302,230302
+Health care structures,233210,233210
+Manufacturing structures,233230,233230
+Power and communication structures,233240,233240
+Educational and vocational structures,233262,233262
+Office and commercial structures,2332A0,2332A0
+Transportation structures and highways and streets,2332C0,2332C0
+Other nonresidential structures,2332D0,2332D0
+Single-family residential structures,233411,233411
+Multifamily residential structures,233412,233412
+Other residential structures,2334A0,2334A0
+Dog and cat food manufacturing,311111,311111
+Other animal food manufacturing,311119,311119
+Flour milling and malt manufacturing,311210,311210
+Wet corn milling,311221,311221
+Soybean and other oilseed processing,311224,311224
+Fats and oils refining and blending,311225,311225
+Breakfast cereal manufacturing,311230,311230
+Sugar and confectionery product manufacturing,311300,311300
+Frozen food manufacturing,311410,311410
+"Fruit and vegetable canning, pickling, and drying",311420,311420
+Cheese manufacturing,311513,311513
+"Dry, condensed, and evaporated dairy product manufacturing",311514,311514
+Fluid milk and butter manufacturing,31151A,31151A
+Ice cream and frozen dessert manufacturing,311520,311520
+Poultry processing,311615,311615
+"Animal (except poultry) slaughtering, rendering, and processing",31161A,31161A
+Seafood product preparation and packaging,311700,311700
+Bread and bakery product manufacturing,311810,311810
+"Cookie, cracker, pasta, and tortilla manufacturing",3118A0,3118A0
+Snack food manufacturing,311910,311910
+Coffee and tea manufacturing,311920,311920
+Flavoring syrup and concentrate manufacturing,311930,311930
+Seasoning and dressing manufacturing,311940,311940
+All other food manufacturing,311990,311990
+Soft drink and ice manufacturing,312110,312110
+Breweries,312120,312120
+Wineries,312130,312130
+Distilleries,312140,312140
+Tobacco manufacturing,,312200
+Tobacco product manufacturing,312200,
+"Fiber, yarn, and thread mills",313100,313100
+Fabric mills,313200,313200
+Textile and fabric finishing and fabric coating mills,313300,313300
+Carpet and rug mills,314110,314110
+Curtain and linen mills,314120,314120
+Other textile product mills,314900,314900
+Apparel manufacturing,315000,315000
+Leather and allied product manufacturing,316000,316000
+Sawmills and wood preservation,321100,321100
+"Veneer, plywood, and engineered wood product manufacturing",321200,321200
+Millwork,321910,321910
+All other wood product manufacturing,3219A0,3219A0
+Pulp mills,322110,322110
+Paper mills,322120,322120
+Paperboard mills,322130,322130
+Paperboard container manufacturing,322210,322210
+Paper Bag and Coated and Treated Paper Manufacturing,322220,
+Paper bag and coated and treated paper manufacturing,,322220
+Stationery product manufacturing,322230,322230
+Sanitary paper product manufacturing,322291,322291
+All other converted paper product manufacturing,322299,322299
+Printing,323110,323110
+Support activities for printing,323120,323120
+Petroleum refineries,324110,324110
+Asphalt paving mixture and block manufacturing,324121,324121
+Asphalt shingle and coating materials manufacturing,324122,324122
+Other petroleum and coal products manufacturing,324190,324190
+Petrochemical manufacturing,325110,325110
+Industrial gas manufacturing,325120,325120
+Synthetic dye and pigment manufacturing,325130,325130
+Other Basic Inorganic Chemical Manufacturing,325180,
+Other basic inorganic chemical manufacturing,,325180
+Other basic organic chemical manufacturing,325190,325190
+Plastics material and resin manufacturing,325211,325211
+Synthetic rubber and artificial and synthetic fibers and filaments manufacturing,3252A0,3252A0
+Fertilizer manufacturing,325310,325310
+Pesticide and other agricultural chemical manufacturing,325320,325320
+Medicinal and botanical manufacturing,325411,325411
+Pharmaceutical preparation manufacturing,325412,325412
+In-vitro diagnostic substance manufacturing,325413,325413
+Biological product (except diagnostic) manufacturing,325414,325414
+Paint and coating manufacturing,325510,325510
+Adhesive manufacturing,325520,325520
+Soap and cleaning compound manufacturing,325610,325610
+Toilet preparation manufacturing,325620,325620
+Printing ink manufacturing,325910,325910
+All other chemical product and preparation manufacturing,3259A0,3259A0
+Plastics packaging materials and unlaminated film and sheet manufacturing,326110,326110
+"Plastics pipe, pipe fitting, and unlaminated profile shape manufacturing",326120,326120
+"Laminated plastics plate, sheet (except packaging), and shape manufacturing",326130,326130
+Polystyrene foam product manufacturing,326140,326140
+Urethane and other foam product (except polystyrene) manufacturing,326150,326150
+Plastics bottle manufacturing,326160,326160
+Other plastics product manufacturing,326190,326190
+Tire manufacturing,326210,326210
+Rubber and plastics hoses and belting manufacturing,326220,326220
+Other rubber product manufacturing,326290,326290
+Clay product and refractory manufacturing,327100,327100
+Glass and glass product manufacturing,327200,327200
+Cement manufacturing,327310,327310
+Ready-mix concrete manufacturing,327320,327320
+"Concrete pipe, brick, and block manufacturing",327330,327330
+Other concrete product manufacturing,327390,327390
+Lime and gypsum product manufacturing,327400,327400
+Abrasive product manufacturing,327910,327910
+Cut stone and stone product manufacturing,327991,327991
+Ground or treated mineral and earth manufacturing,327992,327992
+Mineral wool manufacturing,327993,327993
+Miscellaneous nonmetallic mineral products,327999,327999
+Iron and steel mills and ferroalloy manufacturing,331110,331110
+Steel product manufacturing from purchased steel,331200,331200
+Alumina refining and primary aluminum production,331313,331313
+Secondary smelting and alloying of aluminum,331314,331314
+Aluminum product manufacturing from purchased aluminum,33131B,33131B
+Nonferrous Metal (except Aluminum) Smelting and Refining,331410,
+Nonferrous metal (except aluminum) smelting and refining,,331410
+"Copper rolling, drawing, extruding and alloying",331420,331420
+"Nonferrous metal (except copper and aluminum) rolling, drawing, extruding and alloying",331490,331490
+Ferrous metal foundries,331510,331510
+Nonferrous metal foundries,331520,331520
+Custom roll forming,332114,332114
+"Metal crown, closure, and other metal stamping (except automotive)",332119,332119
+"All other forging, stamping, and sintering",33211A,33211A
+Cutlery and handtool manufacturing,332200,332200
+Plate work and fabricated structural product manufacturing,332310,332310
+Ornamental and architectural metal products manufacturing,332320,332320
+Power boiler and heat exchanger manufacturing,332410,332410
+Metal tank (heavy gauge) manufacturing,332420,332420
+"Metal can, box, and other metal container (light gauge) manufacturing",332430,332430
+Hardware manufacturing,332500,332500
+Spring and wire product manufacturing,332600,332600
+Machine shops,332710,332710
+"Turned product and screw, nut, and bolt manufacturing",332720,332720
+"Coating, engraving, heat treating and allied activities",332800,332800
+Plumbing fixture fitting and trim manufacturing,332913,332913
+Valve and fittings other than plumbing,33291A,33291A
+Ball and roller bearing manufacturing,332991,332991
+Fabricated pipe and pipe fitting manufacturing,332996,332996
+Other fabricated metal manufacturing,332999,332999
+"Ammunition, arms, ordnance, and accessories manufacturing",33299A,33299A
+Farm machinery and equipment manufacturing,333111,333111
+Lawn and garden equipment manufacturing,333112,333112
+Construction machinery manufacturing,333120,333120
+Mining and oil and gas field machinery manufacturing,333130,333130
+Semiconductor machinery manufacturing,333242,333242
+Other industrial machinery manufacturing,33329A,33329A
+Optical instrument and lens manufacturing,333314,333314
+Photographic and photocopying equipment manufacturing,333316,333316
+Other commercial and service industry machinery manufacturing,333318,333318
+Industrial and commercial fan and blower and air purification equipment manufacturing,333413,333413
+Heating equipment (except warm air furnaces) manufacturing,333414,333414
+"Air conditioning, refrigeration, and warm air heating equipment manufacturing",333415,333415
+Industrial mold manufacturing,333511,333511
+"Special tool, die, jig, and fixture manufacturing",333514,333514
+Machine tool manufacturing,333517,333517
+"Cutting and machine tool accessory, rolling mill, and other metalworking machinery manufacturing",33351B,33351B
+Turbine and turbine generator set units manufacturing,333611,333611
+"Speed changer, industrial high-speed drive, and gear manufacturing",333612,333612
+Mechanical power transmission equipment manufacturing,333613,333613
+Other engine equipment manufacturing,333618,333618
+Air and gas compressor manufacturing,333912,333912
+"Measuring, dispensing, and other pumping equipment manufacturing",,333914
+Pump and pumping equipment manufacturing,33391A,
+Material handling equipment manufacturing,333920,333920
+Power-driven handtool manufacturing,333991,333991
+Packaging machinery manufacturing,333993,333993
+Industrial process furnace and oven manufacturing,333994,333994
+Other general purpose machinery manufacturing,33399A,33399A
+Fluid power process machinery,33399B,33399B
+Electronic computer manufacturing,334111,334111
+Computer storage device manufacturing,334112,334112
+Computer terminals and other computer peripheral equipment manufacturing,334118,334118
+Telephone apparatus manufacturing,334210,334210
+Broadcast and wireless communications equipment,334220,334220
+Other communications equipment manufacturing,334290,334290
+Audio and video equipment manufacturing,334300,334300
+Semiconductor and related device manufacturing,334413,334413
+Printed circuit assembly (electronic assembly) manufacturing,334418,334418
+Other electronic component manufacturing,33441A,33441A
+Electromedical and electrotherapeutic apparatus manufacturing,334510,334510
+"Search, detection, and navigation instruments manufacturing",334511,334511
+Automatic environmental control manufacturing,334512,334512
+Industrial process variable instruments manufacturing,334513,334513
+Totalizing fluid meter and counting device manufacturing,334514,334514
+Electricity and signal testing instruments manufacturing,334515,334515
+Analytical laboratory instrument manufacturing,334516,334516
+Irradiation apparatus manufacturing,334517,334517
+"Watch, clock, and other measuring and controlling device manufacturing",33451A,33451A
+Manufacturing and reproducing magnetic and optical media,334610,334610
+Electric lamp bulb and part manufacturing,335110,335110
+Lighting fixture manufacturing,335120,335120
+Small electrical appliance manufacturing,335210,335210
+Major household appliance manufacturing,,335220
+Household cooking appliance manufacturing,335221,
+Household refrigerator and home freezer manufacturing,335222,
+Household laundry equipment manufacturing,335224,
+Other major household appliance manufacturing,335228,
+"Power, distribution, and specialty transformer manufacturing",335311,335311
+Motor and generator manufacturing,335312,335312
+Switchgear and switchboard apparatus manufacturing,335313,335313
+Relay and industrial control manufacturing,335314,335314
+Storage battery manufacturing,335911,335911
+Primary battery manufacturing,335912,335912
+Communication and energy wire and cable manufacturing,335920,335920
+Wiring device manufacturing,335930,335930
+Carbon and graphite product manufacturing,335991,335991
+All other miscellaneous electrical equipment and component manufacturing,335999,335999
+Automobile manufacturing,336111,336111
+Light truck and utility vehicle manufacturing,336112,336112
+Heavy duty truck manufacturing,336120,336120
+Motor vehicle body manufacturing,336211,336211
+Truck trailer manufacturing,336212,336212
+Motor home manufacturing,336213,336213
+Travel trailer and camper manufacturing,336214,336214
+Motor vehicle gasoline engine and engine parts manufacturing,336310,336310
+Motor vehicle electrical and electronic equipment manufacturing,336320,336320
+Motor vehicle transmission and power train parts manufacturing,336350,336350
+Motor vehicle seating and interior trim manufacturing,336360,336360
+Motor vehicle metal stamping,336370,336370
+Other Motor Vehicle Parts Manufacturing,336390,
+Other motor vehicle parts manufacturing,,336390
+"Motor vehicle steering, suspension component (except spring), and brake systems manufacturing",3363A0,3363A0
+Aircraft manufacturing,336411,336411
+Aircraft engine and engine parts manufacturing,336412,336412
+Other aircraft parts and auxiliary equipment manufacturing,336413,336413
+Guided missile and space vehicle manufacturing,336414,336414
+Propulsion units and parts for space vehicles and guided missiles,33641A,33641A
+Railroad rolling stock manufacturing,336500,336500
+Ship building and repairing,336611,336611
+Boat building,336612,336612
+"Motorcycle, bicycle, and parts manufacturing",336991,336991
+"Military armored vehicle, tank, and tank component manufacturing",336992,336992
+All other transportation equipment manufacturing,336999,336999
+Wood kitchen cabinet and countertop manufacturing,337110,337110
+Upholstered household furniture manufacturing,337121,337121
+Nonupholstered wood household furniture manufacturing,337122,337122
+Institutional furniture manufacturing,337127,337127
+Other household nonupholstered furniture,33712N,33712N
+"Showcase, partition, shelving, and locker manufacturing",337215,337215
+Office furniture and custom architectural woodwork and millwork manufacturing,33721A,33721A
+Other furniture related product manufacturing,337900,337900
+Surgical and medical instrument manufacturing,339112,339112
+Surgical appliance and supplies manufacturing,339113,339113
+Dental equipment and supplies manufacturing,339114,339114
+Ophthalmic goods manufacturing,339115,339115
+Dental laboratories,339116,339116
+Jewelry and silverware manufacturing,339910,339910
+Sporting and athletic goods manufacturing,339920,339920
+"Doll, toy, and game manufacturing",339930,339930
+Office supplies (except paper) manufacturing,339940,339940
+Sign manufacturing,339950,339950
+All other miscellaneous manufacturing,339990,339990
+Customs duties,4200ID,4200ID
+Motor vehicle and motor vehicle parts and supplies,423100,423100
+Professional and commercial equipment and supplies,423400,423400
+Household appliances and electrical and electronic goods,423600,423600
+"Machinery, equipment, and supplies",423800,423800
+Other durable goods merchant wholesalers,423A00,423A00
+Drugs and druggists' sundries,424200,424200
+Grocery and related product wholesalers,424400,424400
+Petroleum and petroleum products,424700,424700
+Other nondurable goods merchant wholesalers,424A00,424A00
+Wholesale electronic markets and agents and brokers,425000,425000
+Motor vehicle and parts dealers,441000,441000
+Building material and garden equipment and supplies dealers,444000,444000
+Food and beverage stores,445000,445000
+Health and personal care stores,446000,446000
+Gasoline stations,447000,447000
+Clothing and clothing accessories stores,448000,448000
+General merchandise stores,452000,452000
+Nonstore retailers,454000,454000
+Air transportation,481000,481000
+Rail transportation,482000,482000
+Water transportation,483000,483000
+Truck transportation,484000,484000
+Transit and ground passenger transportation,485000,485000
+Pipeline transportation,486000,486000
+Scenic and sightseeing transportation and support activities for transportation,48A000,48A000
+Postal service,491000,491000
+Couriers and messengers,492000,492000
+Warehousing and storage,493000,493000
+All other retail,4B0000,4B0000
+Newspaper publishers,511110,511110
+Periodical Publishers,511120,511120
+Book publishers,511130,511130
+"Directory, mailing list, and other publishers",5111A0,5111A0
+Software publishers,511200,511200
+Motion picture and video industries,512100,512100
+Sound recording industries,512200,512200
+Radio and television broadcasting,515100,515100
+Cable and other subscription programming,515200,515200
+Wired telecommunications carriers,517110,517110
+Wireless telecommunications carriers (except satellite),517210,517210
+"Satellite, telecommunications resellers, and all other telecommunications",517A00,517A00
+"Data processing, hosting, and related services",518200,518200
+Internet publishing and broadcasting and Web search portals,519130,519130
+"News syndicates, libraries, archives and all other information services",5191A0,5191A0
+Nondepository credit intermediation and related activities,522A00,522A00
+Other financial investment activities,523900,523900
+Securities and commodity contracts intermediation and brokerage,523A00,523A00
+Direct life insurance carriers,524113,524113
+"Insurance carriers, except direct life",5241XX,
+"Insurance carriers, except direct life insurance",5241XX,5241XX
+"Insurance agencies, brokerages, and related activities",524200,524200
+"Funds, trusts, and other financial vehicles",525000,525000
+Monetary authorities and depository credit intermediation,52A000,52A000
+Owner-occupied housing,531HSO,531HSO
+Tenant-occupied housing,531HST,531HST
+Other real estate,531ORE,531ORE
+Automotive equipment rental and leasing,532100,532100
+Commercial and industrial machinery and equipment rental and leasing,532400,532400
+General and consumer goods rental,532A00,532A00
+Lessors of nonfinancial intangible assets,533000,533000
+Legal services,541100,541100
+"Accounting, tax preparation, bookkeeping, and payroll services",541200,541200
+"Architectural, engineering, and related services",541300,541300
+Specialized design services,541400,541400
+Custom computer programming services,541511,541511
+Computer systems design services,541512,541512
+"Other computer related services, including facilities management",54151A,54151A
+Management consulting services,541610,541610
+Environmental and other technical consulting services,5416A0,5416A0
+Scientific research and development services,541700,541700
+"Advertising, public relations, and related services",541800,541800
+Photographic services,541920,541920
+Veterinary services,541940,541940
+"All other miscellaneous professional, scientific, and technical services",5419A0,5419A0
+Management of companies and enterprises,550000,550000
+Office administrative services,561100,561100
+Facilities support services,561200,561200
+Employment services,561300,561300
+Business support services,561400,561400
+Travel arrangement and reservation services,561500,561500
+Investigation and security services,561600,561600
+Services to buildings and dwellings,561700,561700
+Other support services,561900,561900
+Waste management and remediation services,562000,562000
+Elementary and secondary schools,611100,611100
+"Junior colleges, colleges, universities, and professional schools",611A00,611A00
+Other educational services,611B00,611B00
+Offices of physicians,621100,621100
+Offices of dentists,621200,621200
+Offices of other health practitioners,621300,621300
+Outpatient care centers,621400,621400
+Medical and diagnostic laboratories,621500,621500
+Home health care services,621600,621600
+Other ambulatory health care services,621900,621900
+Hospitals,622000,622000
+Nursing and community care facilities,623A00,623A00
+"Residential mental health, substance abuse, and other residential care facilities",623B00,623B00
+Individual and family services,624100,624100
+Child day care services,624400,624400
+"Community food, housing, and other relief services, including rehabilitation services",624A00,624A00
+Performing arts companies,711100,711100
+Spectator sports,711200,711200
+"Independent artists, writers, and performers",711500,711500
+Promoters of performing arts and sports and agents for public figures,711A00,711A00
+"Museums, historical sites, zoos, and parks",712000,712000
+Amusement parks and arcades,713100,713100
+Gambling industries (except casino hotels),713200,713200
+Other amusement and recreation industries,713900,713900
+Accommodation,721000,721000
+Full-service restaurants,722110,722110
+Limited-service restaurants,722211,722211
+All other food and drinking places,722A00,722A00
+Automotive repair and maintenance,811100,811100
+Electronic and precision equipment repair and maintenance,811200,811200
+Commercial and industrial machinery and equipment repair and maintenance,811300,811300
+Personal and household goods repair and maintenance,811400,811400
+Personal care services,812100,812100
+Death care services,812200,812200
+Dry-cleaning and laundry services,812300,812300
+Other personal services,812900,812900
+Religious organizations,813100,813100
+"Grantmaking, giving, and social advocacy organizations",813A00,813A00
+"Civic, social, professional, and similar organizations",813B00,813B00
+Private households,814000,814000
+State and local government educational services,GSLGE,
+State and local government hospitals and health services,GSLGH,
+State and local government other services,GSLGO,
+State and local government (educational services),,GSLGE
+State and local government (hospitals and health services),,GSLGH
+State and local government (other services),,GSLGO
+Federal electric utilities,S00101,S00101
+Other federal government enterprises,S00102,S00102
+State and local government passenger transit,S00201,S00201
+State and local government electric utilities,S00202,S00202
+Other state and local government enterprises,S00203,S00203
+Federal general government (defense),S00500,S00500
+Federal general government (nondefense),S00600,S00600
+Geothermal electric power generation,221100,221100
+Biomass electric power generation,221100,221100
+Other electric power generation,221100,221100
+Electric bulk power transmission and control,221100,221100
+Furniture and home furnishings stores,4B0000,4B0000
+Electronics and appliance stores,4B0000,4B0000
+"Sporting goods, hobby, book, and music stores",4B0000,4B0000
+Miscellaneous store retailers,4B0000,4B0000
+Hydroelectric power generation,221100,221100
+Fossil fuel electric power generation,221100,221100
+Nuclear electric power generation,221100,221100
+Solar electric power generation,221100,221100
+Wind electric power generation,221100,221100
+Electric power distribution,221100,221100
diff --git a/inst/extdata/Crosswalk_DetailGDPIndustrytoIO2012Schema.csv b/inst/extdata/Crosswalk_DetailGDPIndustrytoIO2012Schema.csv
deleted file mode 100644
index d53cb859..00000000
--- a/inst/extdata/Crosswalk_DetailGDPIndustrytoIO2012Schema.csv
+++ /dev/null
@@ -1,421 +0,0 @@
-Gross_Output_Detail_Industry,BEA_2012_Detail_Code
-Oilseed farming,1111A0
-Grain farming,1111B0
-Vegetable and melon farming,111200
-Fruit and tree nut farming,111300
-"Greenhouse, nursery, and floriculture production",111400
-Other crop farming,111900
-Dairy cattle and milk production,112120
-"Beef cattle ranching and farming, including feedlots and dual-purpose ranching and farming",1121A0
-Poultry and egg production,112300
-"Animal production, except cattle and poultry and eggs",112A00
-Forestry and logging,113000
-"Fishing, hunting and trapping",114000
-Support activities for agriculture and forestry,115000
-Oil and gas extraction,211000
-Coal mining,212100
-"Copper, nickel, lead, and zinc mining",212230
-"Iron, gold, silver, and other metal ore mining",2122A0
-Stone mining and quarrying,212310
-Other nonmetallic mineral mining and quarrying,2123A0
-Drilling oil and gas wells,213111
-Other support activities for mining,21311A
-"Electric power generation, transmission, and distribution",221100
-Natural gas distribution,221200
-"Water, sewage and other systems",221300
-Nonresidential maintenance and repair,230301
-Residential maintenance and repair,230302
-Health care structures,233210
-Manufacturing structures,233230
-Power and communication structures,233240
-Educational and vocational structures,233262
-Office and commercial structures,2332A0
-Transportation structures and highways and streets,2332C0
-Other nonresidential structures,2332D0
-Single-family residential structures,233411
-Multifamily residential structures,233412
-Other residential structures,2334A0
-Dog and cat food manufacturing,311111
-Other animal food manufacturing,311119
-Flour milling and malt manufacturing,311210
-Wet corn milling,311221
-Soybean and other oilseed processing,311224
-Fats and oils refining and blending,311225
-Breakfast cereal manufacturing,311230
-Sugar and confectionery product manufacturing,311300
-Frozen food manufacturing,311410
-"Fruit and vegetable canning, pickling, and drying",311420
-Cheese manufacturing,311513
-"Dry, condensed, and evaporated dairy product manufacturing",311514
-Fluid milk and butter manufacturing,31151A
-Ice cream and frozen dessert manufacturing,311520
-Poultry processing,311615
-"Animal (except poultry) slaughtering, rendering, and processing",31161A
-Seafood product preparation and packaging,311700
-Bread and bakery product manufacturing,311810
-"Cookie, cracker, pasta, and tortilla manufacturing",3118A0
-Snack food manufacturing,311910
-Coffee and tea manufacturing,311920
-Flavoring syrup and concentrate manufacturing,311930
-Seasoning and dressing manufacturing,311940
-All other food manufacturing,311990
-Soft drink and ice manufacturing,312110
-Breweries,312120
-Wineries,312130
-Distilleries,312140
-Tobacco product manufacturing,312200
-"Fiber, yarn, and thread mills",313100
-Fabric mills,313200
-Textile and fabric finishing and fabric coating mills,313300
-Carpet and rug mills,314110
-Curtain and linen mills,314120
-Other textile product mills,314900
-Apparel manufacturing,315000
-Leather and allied product manufacturing,316000
-Sawmills and wood preservation,321100
-"Veneer, plywood, and engineered wood product manufacturing",321200
-Millwork,321910
-All other wood product manufacturing,3219A0
-Pulp mills,322110
-Paper mills,322120
-Paperboard mills,322130
-Paperboard container manufacturing,322210
-Paper Bag and Coated and Treated Paper Manufacturing,322220
-Stationery product manufacturing,322230
-Sanitary paper product manufacturing,322291
-All other converted paper product manufacturing,322299
-Printing,323110
-Support activities for printing,323120
-Petroleum refineries,324110
-Asphalt paving mixture and block manufacturing,324121
-Asphalt shingle and coating materials manufacturing,324122
-Other petroleum and coal products manufacturing,324190
-Petrochemical manufacturing,325110
-Industrial gas manufacturing,325120
-Synthetic dye and pigment manufacturing,325130
-Other Basic Inorganic Chemical Manufacturing,325180
-Other basic organic chemical manufacturing,325190
-Plastics material and resin manufacturing,325211
-Synthetic rubber and artificial and synthetic fibers and filaments manufacturing,3252A0
-Fertilizer manufacturing,325310
-Pesticide and other agricultural chemical manufacturing,325320
-Medicinal and botanical manufacturing,325411
-Pharmaceutical preparation manufacturing,325412
-In-vitro diagnostic substance manufacturing,325413
-Biological product (except diagnostic) manufacturing,325414
-Paint and coating manufacturing,325510
-Adhesive manufacturing,325520
-Soap and cleaning compound manufacturing,325610
-Toilet preparation manufacturing,325620
-Printing ink manufacturing,325910
-All other chemical product and preparation manufacturing,3259A0
-Plastics packaging materials and unlaminated film and sheet manufacturing,326110
-"Plastics pipe, pipe fitting, and unlaminated profile shape manufacturing",326120
-"Laminated plastics plate, sheet (except packaging), and shape manufacturing",326130
-Polystyrene foam product manufacturing,326140
-Urethane and other foam product (except polystyrene) manufacturing,326150
-Plastics bottle manufacturing,326160
-Other plastics product manufacturing,326190
-Tire manufacturing,326210
-Rubber and plastics hoses and belting manufacturing,326220
-Other rubber product manufacturing,326290
-Clay product and refractory manufacturing,327100
-Glass and glass product manufacturing,327200
-Cement manufacturing,327310
-Ready-mix concrete manufacturing,327320
-"Concrete pipe, brick, and block manufacturing",327330
-Other concrete product manufacturing,327390
-Lime and gypsum product manufacturing,327400
-Abrasive product manufacturing,327910
-Cut stone and stone product manufacturing,327991
-Ground or treated mineral and earth manufacturing,327992
-Mineral wool manufacturing,327993
-Miscellaneous nonmetallic mineral products,327999
-Iron and steel mills and ferroalloy manufacturing,331110
-Steel product manufacturing from purchased steel,331200
-Alumina refining and primary aluminum production,331313
-Secondary smelting and alloying of aluminum,331314
-Aluminum product manufacturing from purchased aluminum,33131B
-Nonferrous Metal (except Aluminum) Smelting and Refining,331410
-"Copper rolling, drawing, extruding and alloying",331420
-"Nonferrous metal (except copper and aluminum) rolling, drawing, extruding and alloying",331490
-Ferrous metal foundries,331510
-Nonferrous metal foundries,331520
-Custom roll forming,332114
-"Metal crown, closure, and other metal stamping (except automotive)",332119
-"All other forging, stamping, and sintering",33211A
-Cutlery and handtool manufacturing,332200
-Plate work and fabricated structural product manufacturing,332310
-Ornamental and architectural metal products manufacturing,332320
-Power boiler and heat exchanger manufacturing,332410
-Metal tank (heavy gauge) manufacturing,332420
-"Metal can, box, and other metal container (light gauge) manufacturing",332430
-Hardware manufacturing,332500
-Spring and wire product manufacturing,332600
-Machine shops,332710
-"Turned product and screw, nut, and bolt manufacturing",332720
-"Coating, engraving, heat treating and allied activities",332800
-Plumbing fixture fitting and trim manufacturing,332913
-Valve and fittings other than plumbing,33291A
-Ball and roller bearing manufacturing,332991
-Fabricated pipe and pipe fitting manufacturing,332996
-Other fabricated metal manufacturing,332999
-"Ammunition, arms, ordnance, and accessories manufacturing",33299A
-Farm machinery and equipment manufacturing,333111
-Lawn and garden equipment manufacturing,333112
-Construction machinery manufacturing,333120
-Mining and oil and gas field machinery manufacturing,333130
-Semiconductor machinery manufacturing,333242
-Other industrial machinery manufacturing,33329A
-Optical instrument and lens manufacturing,333314
-Photographic and photocopying equipment manufacturing,333316
-Other commercial and service industry machinery manufacturing,333318
-Industrial and commercial fan and blower and air purification equipment manufacturing,333413
-Heating equipment (except warm air furnaces) manufacturing,333414
-"Air conditioning, refrigeration, and warm air heating equipment manufacturing",333415
-Industrial mold manufacturing,333511
-"Special tool, die, jig, and fixture manufacturing",333514
-Machine tool manufacturing,333517
-"Cutting and machine tool accessory, rolling mill, and other metalworking machinery manufacturing",33351B
-Turbine and turbine generator set units manufacturing,333611
-"Speed changer, industrial high-speed drive, and gear manufacturing",333612
-Mechanical power transmission equipment manufacturing,333613
-Other engine equipment manufacturing,333618
-Air and gas compressor manufacturing,333912
-Pump and pumping equipment manufacturing,33391A
-Material handling equipment manufacturing,333920
-Power-driven handtool manufacturing,333991
-Packaging machinery manufacturing,333993
-Industrial process furnace and oven manufacturing,333994
-Other general purpose machinery manufacturing,33399A
-Fluid power process machinery,33399B
-Electronic computer manufacturing,334111
-Computer storage device manufacturing,334112
-Computer terminals and other computer peripheral equipment manufacturing,334118
-Telephone apparatus manufacturing,334210
-Broadcast and wireless communications equipment,334220
-Other communications equipment manufacturing,334290
-Audio and video equipment manufacturing,334300
-Semiconductor and related device manufacturing,334413
-Printed circuit assembly (electronic assembly) manufacturing,334418
-Other electronic component manufacturing,33441A
-Electromedical and electrotherapeutic apparatus manufacturing,334510
-"Search, detection, and navigation instruments manufacturing",334511
-Automatic environmental control manufacturing,334512
-Industrial process variable instruments manufacturing,334513
-Totalizing fluid meter and counting device manufacturing,334514
-Electricity and signal testing instruments manufacturing,334515
-Analytical laboratory instrument manufacturing,334516
-Irradiation apparatus manufacturing,334517
-"Watch, clock, and other measuring and controlling device manufacturing",33451A
-Manufacturing and reproducing magnetic and optical media,334610
-Electric lamp bulb and part manufacturing,335110
-Lighting fixture manufacturing,335120
-Small electrical appliance manufacturing,335210
-Household cooking appliance manufacturing,335221
-Household refrigerator and home freezer manufacturing,335222
-Household laundry equipment manufacturing,335224
-Other major household appliance manufacturing,335228
-"Power, distribution, and specialty transformer manufacturing",335311
-Motor and generator manufacturing,335312
-Switchgear and switchboard apparatus manufacturing,335313
-Relay and industrial control manufacturing,335314
-Storage battery manufacturing,335911
-Primary battery manufacturing,335912
-Communication and energy wire and cable manufacturing,335920
-Wiring device manufacturing,335930
-Carbon and graphite product manufacturing,335991
-All other miscellaneous electrical equipment and component manufacturing,335999
-Automobile manufacturing,336111
-Light truck and utility vehicle manufacturing,336112
-Heavy duty truck manufacturing,336120
-Motor vehicle body manufacturing,336211
-Truck trailer manufacturing,336212
-Motor home manufacturing,336213
-Travel trailer and camper manufacturing,336214
-Motor vehicle gasoline engine and engine parts manufacturing,336310
-Motor vehicle electrical and electronic equipment manufacturing,336320
-Motor vehicle transmission and power train parts manufacturing,336350
-Motor vehicle seating and interior trim manufacturing,336360
-Motor vehicle metal stamping,336370
-Other Motor Vehicle Parts Manufacturing,336390
-"Motor vehicle steering, suspension component (except spring), and brake systems manufacturing",3363A0
-Aircraft manufacturing,336411
-Aircraft engine and engine parts manufacturing,336412
-Other aircraft parts and auxiliary equipment manufacturing,336413
-Guided missile and space vehicle manufacturing,336414
-Propulsion units and parts for space vehicles and guided missiles,33641A
-Railroad rolling stock manufacturing,336500
-Ship building and repairing,336611
-Boat building,336612
-"Motorcycle, bicycle, and parts manufacturing",336991
-"Military armored vehicle, tank, and tank component manufacturing",336992
-All other transportation equipment manufacturing,336999
-Wood kitchen cabinet and countertop manufacturing,337110
-Upholstered household furniture manufacturing,337121
-Nonupholstered wood household furniture manufacturing,337122
-Institutional furniture manufacturing,337127
-Other household nonupholstered furniture,33712N
-"Showcase, partition, shelving, and locker manufacturing",337215
-Office furniture and custom architectural woodwork and millwork manufacturing,33721A
-Other furniture related product manufacturing,337900
-Surgical and medical instrument manufacturing,339112
-Surgical appliance and supplies manufacturing,339113
-Dental equipment and supplies manufacturing,339114
-Ophthalmic goods manufacturing,339115
-Dental laboratories,339116
-Jewelry and silverware manufacturing,339910
-Sporting and athletic goods manufacturing,339920
-"Doll, toy, and game manufacturing",339930
-Office supplies (except paper) manufacturing,339940
-Sign manufacturing,339950
-All other miscellaneous manufacturing,339990
-Customs duties,4200ID
-Motor vehicle and motor vehicle parts and supplies,423100
-Professional and commercial equipment and supplies,423400
-Household appliances and electrical and electronic goods,423600
-"Machinery, equipment, and supplies",423800
-Other durable goods merchant wholesalers,423A00
-Drugs and druggists' sundries,424200
-Grocery and related product wholesalers,424400
-Petroleum and petroleum products,424700
-Other nondurable goods merchant wholesalers,424A00
-Wholesale electronic markets and agents and brokers,425000
-Motor vehicle and parts dealers,441000
-Building material and garden equipment and supplies dealers,444000
-Food and beverage stores,445000
-Health and personal care stores,446000
-Gasoline stations,447000
-Clothing and clothing accessories stores,448000
-General merchandise stores,452000
-Nonstore retailers,454000
-Air transportation,481000
-Rail transportation,482000
-Water transportation,483000
-Truck transportation,484000
-Transit and ground passenger transportation,485000
-Pipeline transportation,486000
-Scenic and sightseeing transportation and support activities for transportation,48A000
-Postal service,491000
-Couriers and messengers,492000
-Warehousing and storage,493000
-All other retail,4B0000
-Newspaper publishers,511110
-Periodical Publishers,511120
-Book publishers,511130
-"Directory, mailing list, and other publishers",5111A0
-Software publishers,511200
-Motion picture and video industries,512100
-Sound recording industries,512200
-Radio and television broadcasting,515100
-Cable and other subscription programming,515200
-Wired telecommunications carriers,517110
-Wireless telecommunications carriers (except satellite),517210
-"Satellite, telecommunications resellers, and all other telecommunications",517A00
-"Data processing, hosting, and related services",518200
-Internet publishing and broadcasting and Web search portals,519130
-"News syndicates, libraries, archives and all other information services",5191A0
-Nondepository credit intermediation and related activities,522A00
-Other financial investment activities,523900
-Securities and commodity contracts intermediation and brokerage,523A00
-Direct life insurance carriers,524113
-"Insurance carriers, except direct life",5241XX
-"Insurance carriers, except direct life insurance",5241XX
-"Insurance agencies, brokerages, and related activities",524200
-"Funds, trusts, and other financial vehicles",525000
-Monetary authorities and depository credit intermediation,52A000
-Owner-occupied housing,531HSO
-Tenant-occupied housing,531HST
-Other real estate,531ORE
-Automotive equipment rental and leasing,532100
-Commercial and industrial machinery and equipment rental and leasing,532400
-General and consumer goods rental,532A00
-Lessors of nonfinancial intangible assets,533000
-Legal services,541100
-"Accounting, tax preparation, bookkeeping, and payroll services",541200
-"Architectural, engineering, and related services",541300
-Specialized design services,541400
-Custom computer programming services,541511
-Computer systems design services,541512
-"Other computer related services, including facilities management",54151A
-Management consulting services,541610
-Environmental and other technical consulting services,5416A0
-Scientific research and development services,541700
-"Advertising, public relations, and related services",541800
-Photographic services,541920
-Veterinary services,541940
-"All other miscellaneous professional, scientific, and technical services",5419A0
-Management of companies and enterprises,550000
-Office administrative services,561100
-Facilities support services,561200
-Employment services,561300
-Business support services,561400
-Travel arrangement and reservation services,561500
-Investigation and security services,561600
-Services to buildings and dwellings,561700
-Other support services,561900
-Waste management and remediation services,562000
-Elementary and secondary schools,611100
-"Junior colleges, colleges, universities, and professional schools",611A00
-Other educational services,611B00
-Offices of physicians,621100
-Offices of dentists,621200
-Offices of other health practitioners,621300
-Outpatient care centers,621400
-Medical and diagnostic laboratories,621500
-Home health care services,621600
-Other ambulatory health care services,621900
-Hospitals,622000
-Nursing and community care facilities,623A00
-"Residential mental health, substance abuse, and other residential care facilities",623B00
-Individual and family services,624100
-Child day care services,624400
-"Community food, housing, and other relief services, including rehabilitation services",624A00
-Performing arts companies,711100
-Spectator sports,711200
-"Independent artists, writers, and performers",711500
-Promoters of performing arts and sports and agents for public figures,711A00
-"Museums, historical sites, zoos, and parks",712000
-Amusement parks and arcades,713100
-Gambling industries (except casino hotels),713200
-Other amusement and recreation industries,713900
-Accommodation,721000
-Full-service restaurants,722110
-Limited-service restaurants,722211
-All other food and drinking places,722A00
-Automotive repair and maintenance,811100
-Electronic and precision equipment repair and maintenance,811200
-Commercial and industrial machinery and equipment repair and maintenance,811300
-Personal and household goods repair and maintenance,811400
-Personal care services,812100
-Death care services,812200
-Dry-cleaning and laundry services,812300
-Other personal services,812900
-Religious organizations,813100
-"Grantmaking, giving, and social advocacy organizations",813A00
-"Civic, social, professional, and similar organizations",813B00
-Private households,814000
-State and local government educational services,GSLGE
-State and local government hospitals and health services,GSLGH
-State and local government other services,GSLGO
-Federal electric utilities,S00101
-Other federal government enterprises,S00102
-State and local government passenger transit,S00201
-State and local government electric utilities,S00202
-Other state and local government enterprises,S00203
-Federal general government (defense),S00500
-Federal general government (nondefense),S00600
-Geothermal electric power generation,221100
-Biomass electric power generation,221100
-Other electric power generation,221100
-Electric bulk power transmission and control,221100
-Furniture and home furnishings stores,4B0000
-Electronics and appliance stores,4B0000
-"Sporting goods, hobby, book, and music stores",4B0000
-Miscellaneous store retailers,4B0000
-Hydroelectric power generation,221100
-Fossil fuel electric power generation,221100
-Nuclear electric power generation,221100
-Solar electric power generation,221100
-Wind electric power generation,221100
-Electric power distribution,221100
\ No newline at end of file
diff --git a/inst/extdata/Crosswalk_DetailIndustrytoCommodityName2012Schema.csv b/inst/extdata/Crosswalk_DetailIndustrytoCommodityNameSchema.csv
similarity index 99%
rename from inst/extdata/Crosswalk_DetailIndustrytoCommodityName2012Schema.csv
rename to inst/extdata/Crosswalk_DetailIndustrytoCommodityNameSchema.csv
index 6f307519..1666dbed 100644
--- a/inst/extdata/Crosswalk_DetailIndustrytoCommodityName2012Schema.csv
+++ b/inst/extdata/Crosswalk_DetailIndustrytoCommodityNameSchema.csv
@@ -1,4 +1,4 @@
-BEA_2012_Detail_Code,BEA_2012_Detail_Name,USEEIO_Name
+BEA_Detail_Code,BEA_Detail_Name,USEEIO_Name
 1111A0,Oilseed farming,"Fresh soybeans, canola, flaxseeds, and other oilseeds"
 1111B0,Grain farming,"Fresh wheat, corn, rice, and other grains"
 111200,Vegetable and melon farming,"Fresh vegetables, melons, and potatoes"
@@ -183,6 +183,7 @@ BEA_2012_Detail_Code,BEA_2012_Detail_Name,USEEIO_Name
 333618,Other engine equipment manufacturing,Other engine equipment
 333912,Air and gas compressor manufacturing,Air and gas compressors
 33391A,Pump and pumping equipment manufacturing,Pumps and pumping equipment
+333914,Pump and pumping equipment manufacturing,Pumps and pumping equipment
 333920,Material handling equipment manufacturing,Material handling equipment
 333991,Power-driven handtool manufacturing,Power tools
 333993,Packaging machinery manufacturing,Packaging machinery
@@ -212,6 +213,7 @@ BEA_2012_Detail_Code,BEA_2012_Detail_Name,USEEIO_Name
 335110,Electric lamp bulb and part manufacturing,Light bulbs
 335120,Lighting fixture manufacturing,Light fixtures
 335210,Small electrical appliance manufacturing,Small electrical appliances
+335220,Major household appliance manufacturing,Household appliances
 335221,Household cooking appliance manufacturing,Home cooking appliances
 335222,Household refrigerator and home freezer manufacturing,Home refrigerators and freezers
 335224,Household laundry equipment manufacturing,Home laundry machines
@@ -407,4 +409,4 @@ S00401,Scrap,
 S00402,Used and secondhand goods,Used and secondhand goods
 S00500,Federal general government (defense),Federal government (defense)
 S00600,Federal general government (nondefense),Federal government (nondefense)
-S00900,Rest of the world adjustment,Rest of the world adjustment
\ No newline at end of file
+S00900,Rest of the world adjustment,Rest of the world adjustment
diff --git a/inst/extdata/Crosswalk_SummaryIndustrytoCommodityName2012Schema.csv b/inst/extdata/Crosswalk_SummaryIndustrytoCommodityName2012Schema.csv
index 65bc50f6..df6f70db 100644
--- a/inst/extdata/Crosswalk_SummaryIndustrytoCommodityName2012Schema.csv
+++ b/inst/extdata/Crosswalk_SummaryIndustrytoCommodityName2012Schema.csv
@@ -23,7 +23,7 @@
 322,Paper products,Paper products and paper production facilities
 323,Printing and related support activities,Print media and printing support
 324,Petroleum and coal products,"Petroleum fuels, asphalt, and other petroleum and coal products"
-325,Chemical products,"Agricultural, pharamceutical, industrial, and commercial chemicals"
+325,Chemical products,"Agricultural, pharmaceutical, industrial, and commercial chemicals"
 326,Plastics and rubber products,Plastics and rubber products
 42,Wholesale trade,Wholesale trade
 441,Motor vehicle and parts dealers,Vehicles and parts sales
diff --git a/inst/extdata/Crosswalk_USEEIO_FlowMapping.csv b/inst/extdata/Crosswalk_USEEIO_FlowMapping.csv
index adc7f781..c2b8622d 100644
--- a/inst/extdata/Crosswalk_USEEIO_FlowMapping.csv
+++ b/inst/extdata/Crosswalk_USEEIO_FlowMapping.csv
@@ -614,3 +614,6 @@ EPA,RCRAInfo,OVEN RESIDUE FROM THE PRODUCTION OF CHROME OXIDE GREEN PIGMENTS.,,,
 EPA,RCRAInfo,"SLAG FROM THE PRODUCTION OF ANTIMONY OXIDE THAT IS SPECULATIVELY ACCUMULATED OR DISPOSED,INCLUDING SLAG FROM THE PRODUCTION OF INTERMEDIATES (E.G.,ANTIMONY METAL OR CRUDE ANTIMONY OXIDE)",,,Mass,=,"SLAG FROM THE PRODUCTION OF ANTIMONY OXIDE THAT IS SPECULATIVELY ACCUMULATED OR DISPOSED,INCLUDING SLAG FROM THE PRODUCTION OF INTERMEDIATES (E.G.,ANTIMONY METAL OR CRUDE ANTIMONY OXIDE)",,Waste Flows,Hazardous Waste,kg,,,,,,,,,,,,,,,,
 EPA,RCRAInfo,STRIPPING STILL TAILS FROM THE PRODUCTION OF METHYL ETHYL PYRIDINES.,,,Mass,=,STRIPPING STILL TAILS FROM THE PRODUCTION OF METHYL ETHYL PYRIDINES.,,Waste Flows,Hazardous Waste,kg,,,,,,,,,,,,,,,,
 EPA,RCRAInfo,"WASTEWATER TREATMENT SLUDGES, EXCLUDING NEUTRALIZATION AND BIOLOGICAL SLUDGES, GENERATED DURING THE TREATMENT OF WASTEWATERS FROM THE PRODUCTION OF ALPHA (OR METHYL-) CHLORINATED TOLUNES, BENZOYL CHLORIDES, AND COMPOUNDS WITH MIXTURES OF THESE FUNCTIONAL GROUPS.",,,Mass,=,"WASTEWATER TREATMENT SLUDGES, EXCLUDING NEUTRALIZATION AND BIOLOGICAL SLUDGES, GENERATED DURING THE TREATMENT OF WASTEWATERS FROM THE PRODUCTION OF ALPHA (OR METHYL-) CHLORINATED TOLUNES, BENZOYL CHLORIDES, AND COMPOUNDS WITH MIXTURES OF THESE FUNCTIONAL ",,Waste Flows,Hazardous Waste,kg,,,,,,,,,,,,,,,,
+EPA,REI,Employment,,,Persons,=,Jobs,,,,p,None,,,,,,,,,,,,,,,
+EPA,REI,Wage,,,Currency,=,Compensation of employees,,,,USD,None,,,,,,,,,,,,,,,
+EPA,REI,Tax,,,Currency,=,"Taxes on production and imports, less subsidies",,,,USD,None,,,,,,,,,,,,,,,
diff --git a/inst/extdata/F_BEAtoUSEEIOtoNAICS_2012.csv b/inst/extdata/F_BEAtoUSEEIOtoNAICS.csv
similarity index 94%
rename from inst/extdata/F_BEAtoUSEEIOtoNAICS_2012.csv
rename to inst/extdata/F_BEAtoUSEEIOtoNAICS.csv
index 1ae6b023..36e566cb 100644
--- a/inst/extdata/F_BEAtoUSEEIOtoNAICS_2012.csv
+++ b/inst/extdata/F_BEAtoUSEEIOtoNAICS.csv
@@ -1,22 +1,22 @@
-BEA_2012_Sector_Code,BEA_2012_Sector_Name,BEA_2012_Summary_Code,BEA_2012_Summary_Name,BEA_2012_Detail_Code,BEA_2012_Detail_Name,USEEIO_Code,USEEIO_Industry,NAICS_2012_Code,NAICS_2012_Name
-F010,Personal consumption expenditures,F010,Personal consumption expenditures,F01000,Personal consumption expenditures,F01000,Personal consumption expenditures,F01000,Households
-F010,Personal consumption expenditures,F010,Personal consumption expenditures,F01000,Personal consumption expenditures,F01000,Personal consumption expenditures,F010,Households
-F020,Private fixed investment,F02E,Nonresidential private fixed investment in structures,F02E00,Nonresidential private fixed investment in equipment,F02E00,Nonresidential private fixed investment in equipment,,
-F020,Private fixed investment,F02N,Nonresidential private fixed investment in equipment,F02N00,Nonresidential private fixed investment in intellectual property products,F02N00,Nonresidential private fixed investment in intellectual property products,,
-F020,Private fixed investment,F02R,Nonresidential private fixed investment in intellectual property products,F02R00,Residential private fixed investment,F02R00,Residential private fixed investment,,
-F020,Private fixed investment,F02S,Residential private fixed investment,F02S00,Nonresidential private fixed investment in structures,F02S00,Nonresidential private fixed investment in structures,,
-F030,Change in private inventories,F030,Change in private inventories,F03000,Change in private inventories,F03000,Change in private inventories,,
-F040,Exports of goods and services,F040,Exports of goods and services,F04000,Exports of goods and services,F04000,Exports of goods and services,,
-F050,Imports of goods and services,F050,Imports of goods and services,F05000,Imports of goods and services,F05000,Imports of goods and services,,
-F100,Government consumption expenditures and gross investment,F06C,Federal national defense: Consumption expenditures,F06C00,Federal Government defense: Consumption expenditures,F06C00,Federal Government defense: Consumption expenditures,,
-F100,Government consumption expenditures and gross investment,F06E,Federal national defense: Gross investment in structures,F06E00,Federal national defense: Gross investment in equipment,F06E00,Federal national defense: Gross investment in equipment,,
-F100,Government consumption expenditures and gross investment,F06N,Federal national defense: Gross investment in equipment,F06N00,Federal national defense: Gross investment in intellectual property products,F06N00,Federal national defense: Gross investment in intellectual property products,,
-F100,Government consumption expenditures and gross investment,F06S,Federal national defense: Gross investment in intellectual property products,F06S00,Federal national defense: Gross investment in structures,F06S00,Federal national defense: Gross investment in structures,,
-F100,Government consumption expenditures and gross investment,F07C,Federal national nondefense: Consumption expenditures,F07C00,Federal Government nondefense: Consumption expenditures,F07C00,Federal Government nondefense: Consumption expenditures,,
-F100,Government consumption expenditures and gross investment,F07E,Federal national nondefense: Gross investment in structures,F07E00,Federal nondefense: Gross investment in equipment,F07E00,Federal nondefense: Gross investment in equipment,,
-F100,Government consumption expenditures and gross investment,F07N,Federal national nondefense: Gross investment in equipment,F07N00,Federal nondefense: Gross investment in intellectual property products,F07N00,Federal nondefense: Gross investment in intellectual property products,,
-F100,Government consumption expenditures and gross investment,F07S,Federal national nondefense: Gross investment in intellectual property products,F07S00,Federal nondefense: Gross investment in structures,F07S00,Federal nondefense: Gross investment in structures,,
-F100,Government consumption expenditures and gross investment,F10C,State and local: Consumption expenditures,F10C00,State and local government consumption expenditures,F10C00,State and local government consumption expenditures,,
-F100,Government consumption expenditures and gross investment,F10E,State and local: Gross investment in structures,F10E00,State and local: Gross investment in equipment,F10E00,State and local: Gross investment in equipment,,
-F100,Government consumption expenditures and gross investment,F10N,State and local: Gross investment in equipment,F10N00,State and local: Gross investment in intellectual property products,F10N00,State and local: Gross investment in intellectual property products,,
-F100,Government consumption expenditures and gross investment,F10S,State and local: Gross investment in intellectual property products,F10S00,State and local: Gross investment in structures,F10S00,State and local: Gross investment in structures,,
\ No newline at end of file
+BEA_Sector_Code,BEA_Sector_Name,BEA_Summary_Code,BEA_Summary_Name,BEA_Detail_Code,BEA_Detail_Name,USEEIO_Code,USEEIO_Industry,NAICS_Code,NAICS_Name
+F010,Personal consumption expenditures,F010,Personal consumption expenditures,F01000,Personal consumption expenditures,F01000,Personal consumption expenditures,F01000,Households
+F010,Personal consumption expenditures,F010,Personal consumption expenditures,F01000,Personal consumption expenditures,F01000,Personal consumption expenditures,F010,Households
+F020,Private fixed investment,F02E,Nonresidential private fixed investment in structures,F02E00,Nonresidential private fixed investment in equipment,F02E00,Nonresidential private fixed investment in equipment,,
+F020,Private fixed investment,F02N,Nonresidential private fixed investment in equipment,F02N00,Nonresidential private fixed investment in intellectual property products,F02N00,Nonresidential private fixed investment in intellectual property products,,
+F020,Private fixed investment,F02R,Nonresidential private fixed investment in intellectual property products,F02R00,Residential private fixed investment,F02R00,Residential private fixed investment,,
+F020,Private fixed investment,F02S,Residential private fixed investment,F02S00,Nonresidential private fixed investment in structures,F02S00,Nonresidential private fixed investment in structures,,
+F030,Change in private inventories,F030,Change in private inventories,F03000,Change in private inventories,F03000,Change in private inventories,,
+F040,Exports of goods and services,F040,Exports of goods and services,F04000,Exports of goods and services,F04000,Exports of goods and services,,
+F050,Imports of goods and services,F050,Imports of goods and services,F05000,Imports of goods and services,F05000,Imports of goods and services,,
+F100,Government consumption expenditures and gross investment,F06C,Federal national defense: Consumption expenditures,F06C00,Federal Government defense: Consumption expenditures,F06C00,Federal Government defense: Consumption expenditures,,
+F100,Government consumption expenditures and gross investment,F06E,Federal national defense: Gross investment in structures,F06E00,Federal national defense: Gross investment in equipment,F06E00,Federal national defense: Gross investment in equipment,,
+F100,Government consumption expenditures and gross investment,F06N,Federal national defense: Gross investment in equipment,F06N00,Federal national defense: Gross investment in intellectual property products,F06N00,Federal national defense: Gross investment in intellectual property products,,
+F100,Government consumption expenditures and gross investment,F06S,Federal national defense: Gross investment in intellectual property products,F06S00,Federal national defense: Gross investment in structures,F06S00,Federal national defense: Gross investment in structures,,
+F100,Government consumption expenditures and gross investment,F07C,Federal national nondefense: Consumption expenditures,F07C00,Federal Government nondefense: Consumption expenditures,F07C00,Federal Government nondefense: Consumption expenditures,,
+F100,Government consumption expenditures and gross investment,F07E,Federal national nondefense: Gross investment in structures,F07E00,Federal nondefense: Gross investment in equipment,F07E00,Federal nondefense: Gross investment in equipment,,
+F100,Government consumption expenditures and gross investment,F07N,Federal national nondefense: Gross investment in equipment,F07N00,Federal nondefense: Gross investment in intellectual property products,F07N00,Federal nondefense: Gross investment in intellectual property products,,
+F100,Government consumption expenditures and gross investment,F07S,Federal national nondefense: Gross investment in intellectual property products,F07S00,Federal nondefense: Gross investment in structures,F07S00,Federal nondefense: Gross investment in structures,,
+F100,Government consumption expenditures and gross investment,F10C,State and local: Consumption expenditures,F10C00,State and local government consumption expenditures,F10C00,State and local government consumption expenditures,,
+F100,Government consumption expenditures and gross investment,F10E,State and local: Gross investment in structures,F10E00,State and local: Gross investment in equipment,F10E00,State and local: Gross investment in equipment,,
+F100,Government consumption expenditures and gross investment,F10N,State and local: Gross investment in equipment,F10N00,State and local: Gross investment in intellectual property products,F10N00,State and local: Gross investment in intellectual property products,,
+F100,Government consumption expenditures and gross investment,F10S,State and local: Gross investment in intellectual property products,F10S00,State and local: Gross investment in structures,F10S00,State and local: Gross investment in structures,,
diff --git a/inst/extdata/F_BEAtoUSEEIOtoNAICS_2007.csv b/inst/extdata/F_BEAtoUSEEIOtoNAICS_2007.csv
deleted file mode 100644
index b751808d..00000000
--- a/inst/extdata/F_BEAtoUSEEIOtoNAICS_2007.csv
+++ /dev/null
@@ -1,21 +0,0 @@
-BEA_2007_Sector_Code,BEA_2007_Sector_Name,BEA_2007_Summary_Code,BEA_2007_Summary_Name,BEA_2007_Detail_Code,BEA_2007_Detail_Name,USEEIO_Code,USEEIO_Industry,NAICS_2007_Code,NAICS_2007_Name
-F010,Personal consumption expenditures,F010,Personal consumption expenditures,F01000,Personal consumption expenditures,F01000,Personal consumption expenditures,,
-F020,Private fixed investment,F02E,Nonresidential private fixed investment in structures,F02E00,Nonresidential private fixed investment in equipment,F02E00,Nonresidential private fixed investment in equipment,,
-F020,Private fixed investment,F02N,Nonresidential private fixed investment in equipment,F02N00,Nonresidential private fixed investment in intellectual property products,F02N00,Nonresidential private fixed investment in intellectual property products,,
-F020,Private fixed investment,F02R,Nonresidential private fixed investment in intellectual property products,F02R00,Residential private fixed investment,F02R00,Residential private fixed investment,,
-F020,Private fixed investment,F02S,Residential private fixed investment,F02S00,Nonresidential private fixed investment in structures,F02S00,Nonresidential private fixed investment in structures,,
-F030,Change in private inventories,F030,Change in private inventories,F03000,Change in private inventories,F03000,Change in private inventories,,
-F040,Exports of goods and services,F040,Exports of goods and services,F04000,Exports of goods and services,F04000,Exports of goods and services,,
-F050,Imports of goods and services,F050,Imports of goods and services,F05000,Imports of goods and services,F05000,Imports of goods and services,,
-F100,Government consumption expenditures and gross investment,F06C,Federal national defense: Consumption expenditures,F06C00,Federal Government defense: Consumption expenditures,F06C00,Federal Government defense: Consumption expenditures,,
-F100,Government consumption expenditures and gross investment,F06E,Federal national defense: Gross investment in structures,F06E00,Federal national defense: Gross investment in equipment,F06E00,Federal national defense: Gross investment in equipment,,
-F100,Government consumption expenditures and gross investment,F06N,Federal national defense: Gross investment in equipment,F06N00,Federal national defense: Gross investment in intellectual property products,F06N00,Federal national defense: Gross investment in intellectual property products,,
-F100,Government consumption expenditures and gross investment,F06S,Federal national defense: Gross investment in intellectual property products,F06S00,Federal national defense: Gross investment in structures,F06S00,Federal national defense: Gross investment in structures,,
-F100,Government consumption expenditures and gross investment,F07C,Federal national nondefense: Consumption expenditures,F07C00,Federal Government nondefense: Consumption expenditures,F07C00,Federal Government nondefense: Consumption expenditures,,
-F100,Government consumption expenditures and gross investment,F07E,Federal national nondefense: Gross investment in structures,F07E00,Federal nondefense: Gross investment in equipment,F07E00,Federal nondefense: Gross investment in equipment,,
-F100,Government consumption expenditures and gross investment,F07N,Federal national nondefense: Gross investment in equipment,F07N00,Federal nondefense: Gross investment in intellectual property products,F07N00,Federal nondefense: Gross investment in intellectual property products,,
-F100,Government consumption expenditures and gross investment,F07S,Federal national nondefense: Gross investment in intellectual property products,F07S00,Federal nondefense: Gross investment in structures,F07S00,Federal nondefense: Gross investment in structures,,
-F100,Government consumption expenditures and gross investment,F10C,State and local: Consumption expenditures,F10C00,State and local government consumption expenditures,F10C00,State and local government consumption expenditures,,
-F100,Government consumption expenditures and gross investment,F10E,State and local: Gross investment in structures,F10E00,State and local: Gross investment in equipment,F10E00,State and local: Gross investment in equipment,,
-F100,Government consumption expenditures and gross investment,F10N,State and local: Gross investment in equipment,F10N00,State and local: Gross investment in intellectual property products,F10N00,State and local: Gross investment in intellectual property products,,
-F100,Government consumption expenditures and gross investment,F10S,State and local: Gross investment in intellectual property products,F10S00,State and local: Gross investment in structures,F10S00,State and local: Gross investment in structures,,
\ No newline at end of file
diff --git a/inst/extdata/G_BEAtoUSEEIOtoNAICS_2017.csv b/inst/extdata/G_BEAtoUSEEIOtoNAICS_2017.csv
new file mode 100644
index 00000000..fc57f867
--- /dev/null
+++ b/inst/extdata/G_BEAtoUSEEIOtoNAICS_2017.csv
@@ -0,0 +1,169 @@
+BEA_2017_Sector_Code,BEA_2017_Sector_Name,BEA_2017_Summary_Code,BEA_2017_Summary_Name,BEA_2017_Detail_Code,BEA_2017_Detail_Name,USEEIO_Code,USEEIO_Industry,NAICS_2017_Code,NAICS_2017_Name
+G,Government,GFE,Federal government enterprises,491000,Postal service,491000,Postal service,49,Transportation and Warehousing
+G,Government,GFE,Federal government enterprises,491000,Postal service,491000,Postal service,491,Postal Service
+G,Government,GFE,Federal government enterprises,491000,Postal service,491000,Postal service,4911,Postal Service
+G,Government,GFE,Federal government enterprises,491000,Postal service,491000,Postal service,49111,Postal Service
+G,Government,GFE,Federal government enterprises,491000,Postal service,491000,Postal service,491110,Postal Service
+G,Government,GFGD,Federal general government,S00500,Federal general government (defense),S00500,Federal general government (defense),92,Public Administration
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92,Public Administration
+G,Government,GFE,Federal government enterprises,S00102,Other federal government enterprises,S00102,Other federal government enterprises,92,Public Administration
+G,Government,GSLG,State and local general government,GSLGE,State and local government (educational services),GSLGE,State and local government (educational services),92,Public Administration
+G,Government,GSLG,State and local general government,GSLGH,State and local government (hospitals and health services),GSLGH,State and local government (hospitals and health services),92,Public Administration
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92,Public Administration
+G,Government,GSLE,State and local government enterprises,S00203,Other state and local government enterprises,S00203,Other state and local government enterprises,92,Public Administration
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),921,"Executive, Legislative, and Other General Government Support "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),921,"Executive, Legislative, and Other General Government Support "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),9211,"Executive, Legislative, and Other General Government Support "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),9211,"Executive, Legislative, and Other General Government Support "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92111,Executive Offices 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92111,Executive Offices 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92112,Legislative Bodies 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92112,Legislative Bodies 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92113,Public Finance Activities 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92113,Public Finance Activities 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92114,"Executive and Legislative Offices, Combined "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92114,"Executive and Legislative Offices, Combined "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92115,American Indian and Alaska Native Tribal Governments 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92119,Other General Government Support 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92119,Other General Government Support 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),921110,Executive Offices 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),921110,Executive Offices 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),921120,Legislative Bodies 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),921120,Legislative Bodies 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),921130,Public Finance Activities 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),921130,Public Finance Activities 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),921140,"Executive and Legislative Offices, Combined "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),921140,"Executive and Legislative Offices, Combined "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),921150,American Indian and Alaska Native Tribal Governments 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),921190,Other General Government Support 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),921190,Other General Government Support 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),922,"Justice, Public Order, and Safety Activities "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),922,"Justice, Public Order, and Safety Activities "
+G,Government,GSLE,State and local government enterprises,S00203,Other state and local government enterprises,S00203,Other state and local government enterprises,922,"Justice, Public Order, and Safety Activities "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),923,Administration of Human Resource Programs 
+G,Government,GSLG,State and local general government,GSLGE,State and local government (educational services),GSLGE,State and local government (educational services),923,Administration of Human Resource Programs 
+G,Government,GSLG,State and local general government,GSLGH,State and local government (hospitals and health services),GSLGH,State and local government (hospitals and health services),923,Administration of Human Resource Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),923,Administration of Human Resource Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),924,Administration of Environmental Quality Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),924,Administration of Environmental Quality Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),925,"Administration of Housing Programs, Urban Planning, and Community Development "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),925,"Administration of Housing Programs, Urban Planning, and Community Development "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),9221,"Justice, Public Order, and Safety Activities "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),9221,"Justice, Public Order, and Safety Activities "
+G,Government,GFE,Federal government enterprises,S00102,Other federal government enterprises,S00102,Other federal government enterprises,9221,"Justice, Public Order, and Safety Activities "
+G,Government,GSLE,State and local government enterprises,S00203,Other state and local government enterprises,S00203,Other state and local government enterprises,9221,"Justice, Public Order, and Safety Activities "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),9231,Administration of Human Resource Programs 
+G,Government,GSLG,State and local general government,GSLGE,State and local government (educational services),GSLGE,State and local government (educational services),9231,Administration of Human Resource Programs 
+G,Government,GSLG,State and local general government,GSLGH,State and local government (hospitals and health services),GSLGH,State and local government (hospitals and health services),9231,Administration of Human Resource Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),9231,Administration of Human Resource Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),9241,Administration of Environmental Quality Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),9241,Administration of Environmental Quality Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),9251,"Administration of Housing Programs, Urban Planning, and Community Development "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),9251,"Administration of Housing Programs, Urban Planning, and Community Development "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92211,Courts 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92211,Courts 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92212,Police Protection 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92212,Police Protection 
+G,Government,GFE,Federal government enterprises,S00102,Other federal government enterprises,S00102,Other federal government enterprises,92212,Police Protection 
+G,Government,GSLE,State and local government enterprises,S00203,Other state and local government enterprises,S00203,Other state and local government enterprises,92212,Police Protection 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92213,Legal Counsel and Prosecution 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92213,Legal Counsel and Prosecution 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92214,Correctional Institutions 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92214,Correctional Institutions 
+G,Government,GFE,Federal government enterprises,S00102,Other federal government enterprises,S00102,Other federal government enterprises,92214,Correctional Institutions 
+G,Government,GSLE,State and local government enterprises,S00203,Other state and local government enterprises,S00203,Other state and local government enterprises,92214,Correctional Institutions 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92215,Parole Offices and Probation Offices 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92215,Parole Offices and Probation Offices 
+G,Government,GSLE,State and local government enterprises,S00203,Other state and local government enterprises,S00203,Other state and local government enterprises,92216,Fire Protection 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92216,Fire Protection 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92219,"Other Justice, Public Order, and Safety Activities "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92219,"Other Justice, Public Order, and Safety Activities "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92311,Administration of Education Programs 
+G,Government,GSLG,State and local general government,GSLGE,State and local government (educational services),GSLGE,State and local government (educational services),92311,Administration of Education Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92312,Administration of Public Health Programs 
+G,Government,GSLG,State and local general government,GSLGH,State and local government (hospitals and health services),GSLGH,State and local government (hospitals and health services),92312,Administration of Public Health Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92313,"Administration of Human Resource Programs (except Education, Public Health, and Veterans' Affairs Programs) "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92313,"Administration of Human Resource Programs (except Education, Public Health, and Veterans' Affairs Programs) "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92314,Administration of Veterans' Affairs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92314,Administration of Veterans' Affairs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92411,Administration of Air and Water Resource and Solid Waste Management Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92411,Administration of Air and Water Resource and Solid Waste Management Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92412,Administration of Conservation Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92412,Administration of Conservation Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92511,Administration of Housing Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92511,Administration of Housing Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92512,Administration of Urban Planning and Community and Rural Development 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92512,Administration of Urban Planning and Community and Rural Development 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),922110,Courts 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),922110,Courts 
+G,Government,GFE,Federal government enterprises,S00102,Other federal government enterprises,S00102,Other federal government enterprises,922120,Police Protection 
+G,Government,GSLE,State and local government enterprises,S00203,Other state and local government enterprises,S00203,Other state and local government enterprises,922120,Police Protection 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),922120,Police Protection 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),922120,Police Protection 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),922130,Legal Counsel and Prosecution 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),922130,Legal Counsel and Prosecution 
+G,Government,GFE,Federal government enterprises,S00102,Other federal government enterprises,S00102,Other federal government enterprises,922140,Correctional Institutions 
+G,Government,GSLE,State and local government enterprises,S00203,Other state and local government enterprises,S00203,Other state and local government enterprises,922140,Correctional Institutions 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),922140,Correctional Institutions 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),922140,Correctional Institutions 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),922150,Parole Offices and Probation Offices 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),922150,Parole Offices and Probation Offices 
+G,Government,GSLE,State and local government enterprises,S00203,Other state and local government enterprises,S00203,Other state and local government enterprises,922160,Fire Protection 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),922160,Fire Protection 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),922160,Fire Protection 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),922190,"Other Justice, Public Order, and Safety Activities "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),922190,"Other Justice, Public Order, and Safety Activities "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),923110,Administration of Education Programs 
+G,Government,GSLG,State and local general government,GSLGE,State and local government (educational services),GSLGE,State and local government (educational services),923110,Administration of Education Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),923120,Administration of Public Health Programs 
+G,Government,GSLG,State and local general government,GSLGH,State and local government (hospitals and health services),GSLGH,State and local government (hospitals and health services),923120,Administration of Public Health Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),923130,"Administration of Human Resource Programs (except Education, Public Health, and Veterans' Affairs Programs) "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),923130,"Administration of Human Resource Programs (except Education, Public Health, and Veterans' Affairs Programs) "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),923140,Administration of Veterans' Affairs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),923140,Administration of Veterans' Affairs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),924110,Administration of Air and Water Resource and Solid Waste Management Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),924110,Administration of Air and Water Resource and Solid Waste Management Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),924120,Administration of Conservation Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),924120,Administration of Conservation Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),925110,Administration of Housing Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),925110,Administration of Housing Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),925120,Administration of Urban Planning and Community and Rural Development 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),925120,Administration of Urban Planning and Community and Rural Development 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),926,Administration of Economic Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),926,Administration of Economic Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),9261,Administration of Economic Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),9261,Administration of Economic Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92611,Administration of General Economic Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92611,Administration of General Economic Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),926110,Administration of General Economic Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),926110,Administration of General Economic Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92612,Regulation and Administration of Transportation Programs 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),926120,Regulation and Administration of Transportation Programs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92613,"Regulation and Administration of Communications, Electric, Gas, and Other Utilities "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92613,"Regulation and Administration of Communications, Electric, Gas, and Other Utilities "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),926120,Regulation and Administration of Transportation Programs
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),926130,"Regulation and Administration of Communications, Electric, Gas, and Other Utilities "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),926130,"Regulation and Administration of Communications, Electric, Gas, and Other Utilities "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92614,Regulation of Agricultural Marketing and Commodities 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92614,Regulation of Agricultural Marketing and Commodities 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92615,"Regulation, Licensing, and Inspection of Miscellaneous Commercial Sectors "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),92615,"Regulation, Licensing, and Inspection of Miscellaneous Commercial Sectors "
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),926140,Regulation of Agricultural Marketing and Commodities 
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),926140,Regulation of Agricultural Marketing and Commodities 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),926150,"Regulation, Licensing, and Inspection of Miscellaneous Commercial Sectors "
+G,Government,GSLG,State and local general government,GSLGO,State and local government (other services),GSLGO,State and local government (other services),926150,"Regulation, Licensing, and Inspection of Miscellaneous Commercial Sectors "
+G,Government,GFE,Federal government enterprises,S00102,Other federal government enterprises,S00102,Other federal government enterprises,927,Space Research and Technology 
+G,Government,GFE,Federal government enterprises,S00102,Other federal government enterprises,S00102,Other federal government enterprises,9271,Space Research and Technology 
+G,Government,GFE,Federal government enterprises,S00102,Other federal government enterprises,S00102,Other federal government enterprises,92711,Space Research and Technology 
+G,Government,GFE,Federal government enterprises,S00102,Other federal government enterprises,S00102,Other federal government enterprises,927110,Space Research and Technology 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),928,National Security and International Affairs 
+G,Government,GFGD,Federal general government,S00500,Federal general government (defense),S00500,Federal general government (defense),928,National Security and International Affairs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),9281,National Security and International Affairs 
+G,Government,GFGD,Federal general government,S00500,Federal general government (defense),S00500,Federal general government (defense),9281,National Security and International Affairs 
+G,Government,GFGD,Federal general government,S00500,Federal general government (defense),S00500,Federal general government (defense),92811,National Security 
+G,Government,GFGD,Federal general government,S00500,Federal general government (defense),S00500,Federal general government (defense),928110,National Security 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),92812,International Affairs 
+G,Government,GFGN,Federal general government,S00600,Federal general government (nondefense),S00600,Federal general government (nondefense),928120,International Affairs 
+G,Government,GFE,Federal government enterprises,S00101,Federal electric utilities,S00101,Federal electric utilities,S00101,Federal electric utilities
+G,Government,GSLE,State and local government enterprises,S00201,State and local government passenger transit,S00201,State and local government passenger transit,S00201,State and local government passenger transit
+G,Government,GSLE,State and local government enterprises,S00202,State and local government electric utilities,S00202,State and local government electric utilities,S00202,State and local government electric utilities
diff --git a/inst/extdata/HS&ORE_BEAtoUSEEIOtoNAICS_2017.csv b/inst/extdata/HS&ORE_BEAtoUSEEIOtoNAICS_2017.csv
new file mode 100644
index 00000000..c8ee2010
--- /dev/null
+++ b/inst/extdata/HS&ORE_BEAtoUSEEIOtoNAICS_2017.csv
@@ -0,0 +1,31 @@
+BEA_2017_Sector_Code,BEA_2017_Sector_Name,BEA_2017_Summary_Code,BEA_2017_Summary_Name,BEA_2017_Detail_Code,BEA_2017_Detail_Name,USEEIO_Code,USEEIO_Industry,NAICS_2017_Code,NAICS_2017_Name
+53,REAL ESTATE AND RENTAL AND LEASING,HS,Housing,531HSO,Owner-occupied housing,531HSO,Owner-occupied housing,53,Real Estate and Rental and Leasing
+53,REAL ESTATE AND RENTAL AND LEASING,HS,Housing,531HST,Tenant-occupied housing,531HST,Tenant-occupied housing,53,Real Estate and Rental and Leasing
+53,REAL ESTATE AND RENTAL AND LEASING,HS,Housing,531HSO,Owner-occupied housing,531HSO,Owner-occupied housing,531,Real Estate
+53,REAL ESTATE AND RENTAL AND LEASING,HS,Housing,531HST,Tenant-occupied housing,531HST,Tenant-occupied housing,531,Real Estate
+53,REAL ESTATE AND RENTAL AND LEASING,HS,Housing,531HSO,Owner-occupied housing,531HSO,Owner-occupied housing,5311,Lessors of Real Estate
+53,REAL ESTATE AND RENTAL AND LEASING,HS,Housing,531HST,Tenant-occupied housing,531HST,Tenant-occupied housing,5311,Lessors of Real Estate
+53,REAL ESTATE AND RENTAL AND LEASING,HS,Housing,531HSO,Owner-occupied housing,531HSO,Owner-occupied housing,53111,Lessors of Residential Buildings and Dwellings
+53,REAL ESTATE AND RENTAL AND LEASING,HS,Housing,531HST,Tenant-occupied housing,531HST,Tenant-occupied housing,53111,Lessors of Residential Buildings and Dwellings
+53,REAL ESTATE AND RENTAL AND LEASING,HS,Housing,531HSO,Owner-occupied housing,531HSO,Owner-occupied housing,531110,Lessors of Residential Buildings and Dwellings
+53,REAL ESTATE AND RENTAL AND LEASING,HS,Housing,531HST,Tenant-occupied housing,531HST,Tenant-occupied housing,531110,Lessors of Residential Buildings and Dwellings
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,53,Real Estate and Rental and Leasing
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,531,Real Estate
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,5311,Lessors of Real Estate
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,5312,Offices of Real Estate Agents and Brokers
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,5313,Activities Related to Real Estate
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,53112,Lessors of Nonresidential Buildings (except Miniwarehouses)
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,53113,Lessors of Miniwarehouses and Self-Storage Units
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,53119,Lessors of Other Real Estate Property
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,53121,Offices of Real Estate Agents and Brokers
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,53131,Real Estate Property Managers
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,53132,Offices of Real Estate Appraisers
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,53139,Other Activities Related to Real Estate
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,531120,Lessors of Nonresidential Buildings (except Miniwarehouses)
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,531130,Lessors of Miniwarehouses and Self-Storage Units
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,531190,Lessors of Other Real Estate Property
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,531210,Offices of Real Estate Agents and Brokers
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,531311,Residential Property Managers
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,531312,Nonresidential Property Managers
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,531320,Offices of Real Estate Appraisers
+53,REAL ESTATE AND RENTAL AND LEASING,ORE,Other real estate,531ORE,Other real estate,531ORE,Other real estate,531390,Other Activities Related to Real Estate
diff --git a/inst/extdata/USEEIO_Commodity_Meta.csv b/inst/extdata/USEEIO_Commodity_Meta.csv
index 5b846ba3..4f0f7c27 100644
--- a/inst/extdata/USEEIO_Commodity_Meta.csv
+++ b/inst/extdata/USEEIO_Commodity_Meta.csv
@@ -520,3 +520,5 @@ G,Government,,,
 2332B0,,23: Construction,2362: Nonresidential Building Construction,BEA Code & Name is '2332B0:Other nonresidential structures'. This industry comprises construction of other nonresidential structures Related NAICS codes are: 23
 333295,,31-33: Manufacturing,3332: Industrial Machinery Manufacturing,"BEA Code & Name is '333295:Semiconductor machinery manufacturing'. This U.S. industry comprises establishments primarily engaged in manufacturing wafer processing equipment, semiconductor assembly and packaging equipment, and other semiconductor making machinery."
 333315,,31-33: Manufacturing,3333: Commercial and Service Industry Machinery Manufacturing,"BEA Code & Name is '333315:Photographic and photocopying equipment manufacturing'. This U.S. industry comprises establishments primarily engaged in manufacturing photographic and photocopying equipment, such as cameras (except television, video and digital) projectors, film developing equipment, photocopying equipment, and microfilm equipment."
+333914,Pumps and pumping equipment,31-33: Manufacturing,3339: Other General Purpose Machinery Manufacturing,"BEA Code & Name is '333914:Measuring, dispensing, and other pumping equipment manufacturing'. This U.S. industry comprises establishments primarily engaged in (1) manufacturing measuring and dispensing pumps, such as gasoline pumps and lubricating oil measuring and dispensing pumps and/or (2) manufacturing general purpose pumps and pumping equipment (except fluid power pumps and motors), such as reciprocating pumps, turbine pumps, centrifugal pumps, rotary pumps, diaphragm pumps, domestic water system pumps, oil well and oil field pumps, and sump pumps."
+335220,Major home appliances,31-33: Manufacturing,3352: Household Appliance Manufacturing,"BEA Code & Name is '335220:Major household appliance manufacturing'. This industry comprises establishments primarily engaged in manufacturing household-type cooking appliances, household-type laundry equipment, household-type refrigerators, upright and chest freezers, and other electrical and nonelectrical major household-type appliances, such as dishwashers, water heaters, and garbage disposal units."
diff --git a/inst/extdata/V_BEAtoUSEEIOtoNAICS_2007.csv b/inst/extdata/V_BEAtoUSEEIOtoNAICS.csv
similarity index 65%
rename from inst/extdata/V_BEAtoUSEEIOtoNAICS_2007.csv
rename to inst/extdata/V_BEAtoUSEEIOtoNAICS.csv
index 2fad5d38..5c90c6d3 100644
--- a/inst/extdata/V_BEAtoUSEEIOtoNAICS_2007.csv
+++ b/inst/extdata/V_BEAtoUSEEIOtoNAICS.csv
@@ -1,4 +1,4 @@
-BEA_2007_Sector_Code,BEA_2007_Sector_Name,BEA_2007_Summary_Code,BEA_2007_Summary_Name,BEA_2007_Detail_Code,BEA_2007_Detail_Name,USEEIO_Code,USEEIO_Industry,NAICS_2007_Code,NAICS_2007_Name
-V001,Compensation of employees,V001,Compensation of employees,V00100,Compensation of employees,,,,
-V002,"Taxes on production and imports, less subsidies",V002,"Taxes on production and imports, less subsidies",V00200,"Taxes on production and imports, less subsidies",,,,
+BEA_Sector_Code,BEA_Sector_Name,BEA_Summary_Code,BEA_Summary_Name,BEA_Detail_Code,BEA_Detail_Name,USEEIO_Code,USEEIO_Industry,NAICS_Code,NAICS_Name
+V001,Compensation of employees,V001,Compensation of employees,V00100,Compensation of employees,,,,
+V002,"Taxes on production and imports, less subsidies",V002,"Taxes on production and imports, less subsidies",V00200,"Taxes on production and imports, less subsidies",,,,
 V003,Gross operating surplus,V003,Gross operating surplus,V00300,Gross operating surplus,,,,
diff --git a/inst/extdata/V_BEAtoUSEEIOtoNAICS_2012.csv b/inst/extdata/V_BEAtoUSEEIOtoNAICS_2012.csv
deleted file mode 100644
index cf148452..00000000
--- a/inst/extdata/V_BEAtoUSEEIOtoNAICS_2012.csv
+++ /dev/null
@@ -1,4 +0,0 @@
-BEA_2012_Sector_Code,BEA_2012_Sector_Name,BEA_2012_Summary_Code,BEA_2012_Summary_Name,BEA_2012_Detail_Code,BEA_2012_Detail_Name,USEEIO_Code,USEEIO_Industry,NAICS_2012_Code,NAICS_2012_Name
-V001,Compensation of employees,V001,Compensation of employees,V00100,Compensation of employees,,,,
-V002,"Taxes on production and imports, less subsidies",V002,"Taxes on production and imports, less subsidies",V00200,"Taxes on production and imports, less subsidies",,,,
-V003,Gross operating surplus,V003,Gross operating surplus,V00300,Gross operating surplus,,,,
diff --git a/inst/extdata/metadata/Detail_CPI_IO_metadata.json b/inst/extdata/metadata/Detail_CPI_IO_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_CPI_IO_metadata.json
rename to inst/extdata/metadata/Detail_CPI_IO_12sch_metadata.json
diff --git a/inst/extdata/metadata/Detail_CPI_IO_17sch_metadata.json b/inst/extdata/metadata/Detail_CPI_IO_17sch_metadata.json
new file mode 100644
index 00000000..c1a860a2
--- /dev/null
+++ b/inst/extdata/metadata/Detail_CPI_IO_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Detail_CPI_IO_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": ["2017", "2018", "2019", "2020", "2021", "2022"],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip"],
+    "date_last_modified": ["2023-11-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Sector_Use_2017_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Detail_CommodityCodeName_2017_metadata.json
similarity index 55%
rename from inst/extdata/metadata/Sector_Use_2017_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Detail_CommodityCodeName_2017_metadata.json
index 517f6a31..a92e71db 100644
--- a/inst/extdata/metadata/Sector_Use_2017_PRO_AfterRedef_metadata.json
+++ b/inst/extdata/metadata/Detail_CommodityCodeName_2017_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_2017_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Detail_CommodityCodeName_2017"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2017],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Sector_Use_2017_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Detail_FinalDemandCodeName_2017_metadata.json
similarity index 55%
rename from inst/extdata/metadata/Sector_Use_2017_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Detail_FinalDemandCodeName_2017_metadata.json
index de92e200..a8302e5c 100644
--- a/inst/extdata/metadata/Sector_Use_2017_PRO_BeforeRedef_metadata.json
+++ b/inst/extdata/metadata/Detail_FinalDemandCodeName_2017_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_2017_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Detail_FinalDemandCodeName_2017"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2017],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Detail_GrossOutput_IO_metadata.json b/inst/extdata/metadata/Detail_GrossOutput_IO_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_GrossOutput_IO_metadata.json
rename to inst/extdata/metadata/Detail_GrossOutput_IO_12sch_metadata.json
diff --git a/inst/extdata/metadata/Detail_GrossOutput_IO_17sch_metadata.json b/inst/extdata/metadata/Detail_GrossOutput_IO_17sch_metadata.json
new file mode 100644
index 00000000..9f4b6d3e
--- /dev/null
+++ b/inst/extdata/metadata/Detail_GrossOutput_IO_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Detail_GrossOutput_IO_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": ["2017", "2018", "2019", "2020", "2021", "2022"],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip"],
+    "date_last_modified": ["2023-11-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Detail_Import_2012_BeforeRedef_metadata.json b/inst/extdata/metadata/Detail_Import_2012_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_Import_2012_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Detail_Import_2012_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Detail_Import_2017_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Detail_Import_2017_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..7aa6d0e1
--- /dev/null
+++ b/inst/extdata/metadata/Detail_Import_2017_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Detail_Import_2017_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_DET_2017.xlsx"],
+    "date_last_modified": ["unknown"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Sector_Make_2017_AfterRedef_metadata.json b/inst/extdata/metadata/Detail_IndustryCodeName_2017_metadata.json
similarity index 55%
rename from inst/extdata/metadata/Sector_Make_2017_AfterRedef_metadata.json
rename to inst/extdata/metadata/Detail_IndustryCodeName_2017_metadata.json
index 5e350917..dd543d1d 100644
--- a/inst/extdata/metadata/Sector_Make_2017_AfterRedef_metadata.json
+++ b/inst/extdata/metadata/Detail_IndustryCodeName_2017_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Make_2017_AfterRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Detail_IndustryCodeName_2017"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2017],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Detail_Make_2012_AfterRedef_metadata.json b/inst/extdata/metadata/Detail_Make_2012_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_Make_2012_AfterRedef_metadata.json
rename to inst/extdata/metadata/Detail_Make_2012_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Detail_Make_2012_BeforeRedef_metadata.json b/inst/extdata/metadata/Detail_Make_2012_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_Make_2012_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Detail_Make_2012_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Detail_Make_2017_AfterRedef_17sch_metadata.json b/inst/extdata/metadata/Detail_Make_2017_AfterRedef_17sch_metadata.json
new file mode 100644
index 00000000..a760ccf1
--- /dev/null
+++ b/inst/extdata/metadata/Detail_Make_2017_AfterRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Detail_Make_2017_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-13"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Detail_Make_2017_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Detail_Make_2017_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..0f68c25e
--- /dev/null
+++ b/inst/extdata/metadata/Detail_Make_2017_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Detail_Make_2017_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2024-01-25"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Detail_Margins_2012_BeforeRedef_metadata.json b/inst/extdata/metadata/Detail_Margins_2012_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_Margins_2012_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Detail_Margins_2012_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Detail_Margins_2017_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Detail_Margins_2017_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..a2032db2
--- /dev/null
+++ b/inst/extdata/metadata/Detail_Margins_2017_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Detail_Margins_2017_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/xls/underlying-estimates/Margins_Before_Redefinitions_2017_DET.xlsx"],
+    "date_last_modified": ["2024-02-01"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Detail_Supply_2012_metadata.json b/inst/extdata/metadata/Detail_Supply_2012_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_Supply_2012_metadata.json
rename to inst/extdata/metadata/Detail_Supply_2012_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Supply_2017_metadata.json b/inst/extdata/metadata/Detail_Supply_2017_17sch_metadata.json
similarity index 56%
rename from inst/extdata/metadata/Summary_Supply_2017_metadata.json
rename to inst/extdata/metadata/Detail_Supply_2017_17sch_metadata.json
index 64c62856..dffddbc6 100644
--- a/inst/extdata/metadata/Summary_Supply_2017_metadata.json
+++ b/inst/extdata/metadata/Detail_Supply_2017_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Summary_Supply_2017"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Detail_Supply_2017_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2017],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": ["2024-02-01"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Detail_Use_2012_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Detail_Use_2012_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_Use_2012_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Detail_Use_2012_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Detail_Use_2012_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Detail_Use_2012_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_Use_2012_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Detail_Use_2012_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Detail_Use_2012_PUR_AfterRedef_metadata.json b/inst/extdata/metadata/Detail_Use_2012_PUR_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_Use_2012_PUR_AfterRedef_metadata.json
rename to inst/extdata/metadata/Detail_Use_2012_PUR_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Detail_Use_2012_PUR_BeforeRedef_metadata.json b/inst/extdata/metadata/Detail_Use_2012_PUR_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_Use_2012_PUR_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Detail_Use_2012_PUR_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Detail_Use_2017_PRO_AfterRedef_17sch_metadata.json b/inst/extdata/metadata/Detail_Use_2017_PRO_AfterRedef_17sch_metadata.json
new file mode 100644
index 00000000..7737199e
--- /dev/null
+++ b/inst/extdata/metadata/Detail_Use_2017_PRO_AfterRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Detail_Use_2017_PRO_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2024-01-25"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Detail_Use_2017_PRO_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Detail_Use_2017_PRO_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..4cc47df7
--- /dev/null
+++ b/inst/extdata/metadata/Detail_Use_2017_PRO_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Detail_Use_2017_PRO_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2024-01-25"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Detail_Use_2017_PUR_AfterRedef_17sch_metadata.json b/inst/extdata/metadata/Detail_Use_2017_PUR_AfterRedef_17sch_metadata.json
new file mode 100644
index 00000000..c3c791b1
--- /dev/null
+++ b/inst/extdata/metadata/Detail_Use_2017_PUR_AfterRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Detail_Use_2017_PUR_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2024-01-25"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Detail_Use_2017_PUR_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Detail_Use_2017_PUR_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..c4f3bee8
--- /dev/null
+++ b/inst/extdata/metadata/Detail_Use_2017_PUR_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Detail_Use_2017_PUR_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2024-01-25"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Detail_Use_SUT_2012_metadata.json b/inst/extdata/metadata/Detail_Use_SUT_2012_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Detail_Use_SUT_2012_metadata.json
rename to inst/extdata/metadata/Detail_Use_SUT_2012_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_SUT_2017_metadata.json b/inst/extdata/metadata/Detail_Use_SUT_2017_17sch_metadata.json
similarity index 55%
rename from inst/extdata/metadata/Summary_Use_SUT_2017_metadata.json
rename to inst/extdata/metadata/Detail_Use_SUT_2017_17sch_metadata.json
index 6485e429..e5f41e9a 100644
--- a/inst/extdata/metadata/Summary_Use_SUT_2017_metadata.json
+++ b/inst/extdata/metadata/Detail_Use_SUT_2017_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Summary_Use_SUT_2017"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Detail_Use_SUT_2017_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2017],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": ["2024-02-01"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Detail_ValueAddedCodeName_2017_metadata.json b/inst/extdata/metadata/Detail_ValueAddedCodeName_2017_metadata.json
new file mode 100644
index 00000000..1ddbb566
--- /dev/null
+++ b/inst/extdata/metadata/Detail_ValueAddedCodeName_2017_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Detail_ValueAddedCodeName_2017"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Sector_CPI_IO_metadata.json b/inst/extdata/metadata/Sector_CPI_IO_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Sector_CPI_IO_metadata.json
rename to inst/extdata/metadata/Sector_CPI_IO_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_CPI_IO_17sch_metadata.json b/inst/extdata/metadata/Sector_CPI_IO_17sch_metadata.json
new file mode 100644
index 00000000..a6468b71
--- /dev/null
+++ b/inst/extdata/metadata/Sector_CPI_IO_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Sector_CPI_IO_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": ["2017", "2018", "2019", "2020", "2021", "2022"],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip"],
+    "date_last_modified": ["2023-11-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Sector_CommodityCodeName_2017_metadata.json b/inst/extdata/metadata/Sector_CommodityCodeName_2017_metadata.json
new file mode 100644
index 00000000..3c0537b3
--- /dev/null
+++ b/inst/extdata/metadata/Sector_CommodityCodeName_2017_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Sector_CommodityCodeName_2017"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Sector_FinalDemandCodeName_2017_metadata.json b/inst/extdata/metadata/Sector_FinalDemandCodeName_2017_metadata.json
new file mode 100644
index 00000000..98476e1d
--- /dev/null
+++ b/inst/extdata/metadata/Sector_FinalDemandCodeName_2017_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Sector_FinalDemandCodeName_2017"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Sector_GrossOutput_IO_metadata.json b/inst/extdata/metadata/Sector_GrossOutput_IO_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Sector_GrossOutput_IO_metadata.json
rename to inst/extdata/metadata/Sector_GrossOutput_IO_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_GrossOutput_IO_17sch_metadata.json b/inst/extdata/metadata/Sector_GrossOutput_IO_17sch_metadata.json
new file mode 100644
index 00000000..3dbc6c3d
--- /dev/null
+++ b/inst/extdata/metadata/Sector_GrossOutput_IO_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Sector_GrossOutput_IO_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": ["2017", "2018", "2019", "2020", "2021", "2022"],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip"],
+    "date_last_modified": ["2023-11-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Sector_Make_2017_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_IndustryCodeName_2017_metadata.json
similarity index 55%
rename from inst/extdata/metadata/Sector_Make_2017_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Sector_IndustryCodeName_2017_metadata.json
index 609cdf3f..cae2ca2a 100644
--- a/inst/extdata/metadata/Sector_Make_2017_BeforeRedef_metadata.json
+++ b/inst/extdata/metadata/Sector_IndustryCodeName_2017_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Make_2017_BeforeRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Sector_IndustryCodeName_2017"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2017],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Sector_Make_2010_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2010_AfterRedef_metadata.json
deleted file mode 100644
index 44bd47bd..00000000
--- a/inst/extdata/metadata/Sector_Make_2010_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2010_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2010],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2010_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2010_BeforeRedef_metadata.json
deleted file mode 100644
index 1f3e3da2..00000000
--- a/inst/extdata/metadata/Sector_Make_2010_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2010_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2010],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2011_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2011_AfterRedef_metadata.json
deleted file mode 100644
index 5af09995..00000000
--- a/inst/extdata/metadata/Sector_Make_2011_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2011_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2011],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2011_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2011_BeforeRedef_metadata.json
deleted file mode 100644
index 0e1bbf7c..00000000
--- a/inst/extdata/metadata/Sector_Make_2011_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2011_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2011],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2012_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2012_AfterRedef_metadata.json
deleted file mode 100644
index ce9ec741..00000000
--- a/inst/extdata/metadata/Sector_Make_2012_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2012_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2012],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2012_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2012_BeforeRedef_metadata.json
deleted file mode 100644
index 69ea27fa..00000000
--- a/inst/extdata/metadata/Sector_Make_2012_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2012_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2012],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2013_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2013_AfterRedef_metadata.json
deleted file mode 100644
index 5a15bfe4..00000000
--- a/inst/extdata/metadata/Sector_Make_2013_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2013_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2013],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2013_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2013_BeforeRedef_metadata.json
deleted file mode 100644
index 156a695c..00000000
--- a/inst/extdata/metadata/Sector_Make_2013_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2013_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2013],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2014_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2014_AfterRedef_metadata.json
deleted file mode 100644
index e5d6ee45..00000000
--- a/inst/extdata/metadata/Sector_Make_2014_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2014_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2014],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2014_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2014_BeforeRedef_metadata.json
deleted file mode 100644
index 2e396ea3..00000000
--- a/inst/extdata/metadata/Sector_Make_2014_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2014_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2014],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2015_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2015_AfterRedef_metadata.json
deleted file mode 100644
index 079277ec..00000000
--- a/inst/extdata/metadata/Sector_Make_2015_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2015_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2015],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2015_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2015_BeforeRedef_metadata.json
deleted file mode 100644
index f5534eda..00000000
--- a/inst/extdata/metadata/Sector_Make_2015_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2015_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2015],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2016_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2016_AfterRedef_metadata.json
deleted file mode 100644
index 0618efba..00000000
--- a/inst/extdata/metadata/Sector_Make_2016_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2016_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2016],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Make_2016_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Make_2016_BeforeRedef_metadata.json
deleted file mode 100644
index a4ddbb96..00000000
--- a/inst/extdata/metadata/Sector_Make_2016_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Make_2016_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2016],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Supply_2014_metadata.json b/inst/extdata/metadata/Sector_Supply_2014_metadata.json
deleted file mode 100644
index 8e2b8209..00000000
--- a/inst/extdata/metadata/Sector_Supply_2014_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Supply_2014"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2014],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Supply_2015_metadata.json b/inst/extdata/metadata/Sector_Supply_2015_metadata.json
deleted file mode 100644
index 60b8ea96..00000000
--- a/inst/extdata/metadata/Sector_Supply_2015_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Supply_2015"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2015],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Supply_2016_metadata.json b/inst/extdata/metadata/Sector_Supply_2016_metadata.json
deleted file mode 100644
index 7db8ee70..00000000
--- a/inst/extdata/metadata/Sector_Supply_2016_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Supply_2016"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2016],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2010_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2010_PRO_AfterRedef_metadata.json
deleted file mode 100644
index cf8c93c3..00000000
--- a/inst/extdata/metadata/Sector_Use_2010_PRO_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2010_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2010],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2010_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2010_PRO_BeforeRedef_metadata.json
deleted file mode 100644
index c308c7d0..00000000
--- a/inst/extdata/metadata/Sector_Use_2010_PRO_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2010_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2010],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2011_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2011_PRO_AfterRedef_metadata.json
deleted file mode 100644
index 828cbe84..00000000
--- a/inst/extdata/metadata/Sector_Use_2011_PRO_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2011_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2011],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2011_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2011_PRO_BeforeRedef_metadata.json
deleted file mode 100644
index ed565043..00000000
--- a/inst/extdata/metadata/Sector_Use_2011_PRO_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2011_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2011],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2012_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2012_PRO_AfterRedef_metadata.json
deleted file mode 100644
index 9e522cf3..00000000
--- a/inst/extdata/metadata/Sector_Use_2012_PRO_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2012_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2012],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2012_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2012_PRO_BeforeRedef_metadata.json
deleted file mode 100644
index 77c7557d..00000000
--- a/inst/extdata/metadata/Sector_Use_2012_PRO_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2012_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2012],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2012_PUR_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2012_PUR_BeforeRedef_metadata.json
deleted file mode 100644
index 37a0dbd3..00000000
--- a/inst/extdata/metadata/Sector_Use_2012_PUR_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2012_PUR_BeforeRedef"],
-  "tool_version": ["1.1.0"],
-  "ext": ["json"],
-  "date_created": ["2022-07-27"],
-  "data_meta": {
-    "data_year": [2012],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2021-09-29"],
-    "date_accessed": ["2022-07-27"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2013_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2013_PRO_AfterRedef_metadata.json
deleted file mode 100644
index e88cfa21..00000000
--- a/inst/extdata/metadata/Sector_Use_2013_PRO_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2013_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2013],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2013_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2013_PRO_BeforeRedef_metadata.json
deleted file mode 100644
index a12b8502..00000000
--- a/inst/extdata/metadata/Sector_Use_2013_PRO_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2013_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2013],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2014_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2014_PRO_AfterRedef_metadata.json
deleted file mode 100644
index d877a824..00000000
--- a/inst/extdata/metadata/Sector_Use_2014_PRO_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2014_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2014],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2014_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2014_PRO_BeforeRedef_metadata.json
deleted file mode 100644
index e216e74b..00000000
--- a/inst/extdata/metadata/Sector_Use_2014_PRO_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2014_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2014],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2015_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2015_PRO_AfterRedef_metadata.json
deleted file mode 100644
index c1ae68c1..00000000
--- a/inst/extdata/metadata/Sector_Use_2015_PRO_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2015_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2015],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2015_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2015_PRO_BeforeRedef_metadata.json
deleted file mode 100644
index 00756aff..00000000
--- a/inst/extdata/metadata/Sector_Use_2015_PRO_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2015_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2015],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2016_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2016_PRO_AfterRedef_metadata.json
deleted file mode 100644
index dd0bbcb8..00000000
--- a/inst/extdata/metadata/Sector_Use_2016_PRO_AfterRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2016_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2016],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_2016_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Sector_Use_2016_PRO_BeforeRedef_metadata.json
deleted file mode 100644
index 04798319..00000000
--- a/inst/extdata/metadata/Sector_Use_2016_PRO_BeforeRedef_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_2016_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2023-04-11"],
-  "data_meta": {
-    "data_year": [2016],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_SUT_2010_metadata.json b/inst/extdata/metadata/Sector_Use_SUT_2010_metadata.json
deleted file mode 100644
index ce2e8614..00000000
--- a/inst/extdata/metadata/Sector_Use_SUT_2010_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_SUT_2010"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2010],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_SUT_2011_metadata.json b/inst/extdata/metadata/Sector_Use_SUT_2011_metadata.json
deleted file mode 100644
index d758b3c2..00000000
--- a/inst/extdata/metadata/Sector_Use_SUT_2011_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_SUT_2011"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2011],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_SUT_2012_metadata.json b/inst/extdata/metadata/Sector_Use_SUT_2012_metadata.json
deleted file mode 100644
index 02a958c4..00000000
--- a/inst/extdata/metadata/Sector_Use_SUT_2012_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_SUT_2012"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2012],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_SUT_2013_metadata.json b/inst/extdata/metadata/Sector_Use_SUT_2013_metadata.json
deleted file mode 100644
index c7451ae6..00000000
--- a/inst/extdata/metadata/Sector_Use_SUT_2013_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_SUT_2013"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2013],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_SUT_2014_metadata.json b/inst/extdata/metadata/Sector_Use_SUT_2014_metadata.json
deleted file mode 100644
index 1730813f..00000000
--- a/inst/extdata/metadata/Sector_Use_SUT_2014_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_SUT_2014"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2014],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_SUT_2015_metadata.json b/inst/extdata/metadata/Sector_Use_SUT_2015_metadata.json
deleted file mode 100644
index f36e1e90..00000000
--- a/inst/extdata/metadata/Sector_Use_SUT_2015_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_SUT_2015"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2015],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_SUT_2016_metadata.json b/inst/extdata/metadata/Sector_Use_SUT_2016_metadata.json
deleted file mode 100644
index 19c41948..00000000
--- a/inst/extdata/metadata/Sector_Use_SUT_2016_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Sector_Use_SUT_2016"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2016],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_ValueAddedCodeName_2017_metadata.json b/inst/extdata/metadata/Sector_ValueAddedCodeName_2017_metadata.json
new file mode 100644
index 00000000..b6b7f278
--- /dev/null
+++ b/inst/extdata/metadata/Sector_ValueAddedCodeName_2017_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Sector_ValueAddedCodeName_2017"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Sector_ValueAdded_IO_metadata.json b/inst/extdata/metadata/Sector_ValueAdded_IO_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Sector_ValueAdded_IO_metadata.json
rename to inst/extdata/metadata/Sector_ValueAdded_IO_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_ValueAdded_IO_17sch_metadata.json b/inst/extdata/metadata/Sector_ValueAdded_IO_17sch_metadata.json
new file mode 100644
index 00000000..5a8a771b
--- /dev/null
+++ b/inst/extdata/metadata/Sector_ValueAdded_IO_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Sector_ValueAdded_IO_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": ["2017", "2018", "2019", "2020", "2021", "2022"],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip"],
+    "date_last_modified": ["2023-11-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_CPI_IO_metadata.json b/inst/extdata/metadata/Summary_CPI_IO_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_CPI_IO_metadata.json
rename to inst/extdata/metadata/Summary_CPI_IO_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_CPI_IO_17sch_metadata.json b/inst/extdata/metadata/Summary_CPI_IO_17sch_metadata.json
new file mode 100644
index 00000000..56518df5
--- /dev/null
+++ b/inst/extdata/metadata/Summary_CPI_IO_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_CPI_IO_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": ["2017", "2018", "2019", "2020", "2021", "2022"],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip"],
+    "date_last_modified": ["2023-11-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_CommodityCodeName_2017_metadata.json b/inst/extdata/metadata/Summary_CommodityCodeName_2017_metadata.json
new file mode 100644
index 00000000..8ba3886b
--- /dev/null
+++ b/inst/extdata/metadata/Summary_CommodityCodeName_2017_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_CommodityCodeName_2017"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_FinalDemandCodeName_2017_metadata.json b/inst/extdata/metadata/Summary_FinalDemandCodeName_2017_metadata.json
new file mode 100644
index 00000000..ef49855c
--- /dev/null
+++ b/inst/extdata/metadata/Summary_FinalDemandCodeName_2017_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_FinalDemandCodeName_2017"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_GrossOutput_IO_metadata.json b/inst/extdata/metadata/Summary_GrossOutput_IO_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_GrossOutput_IO_metadata.json
rename to inst/extdata/metadata/Summary_GrossOutput_IO_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_GrossOutput_IO_17sch_metadata.json b/inst/extdata/metadata/Summary_GrossOutput_IO_17sch_metadata.json
new file mode 100644
index 00000000..84878478
--- /dev/null
+++ b/inst/extdata/metadata/Summary_GrossOutput_IO_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_GrossOutput_IO_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": ["2017", "2018", "2019", "2020", "2021", "2022"],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip"],
+    "date_last_modified": ["2023-11-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Import_2010_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Import_2010_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Import_2010_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Import_2010_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Import_2011_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Import_2011_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Import_2011_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Import_2011_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Import_2012_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Import_2012_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Import_2012_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Import_2012_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Import_2013_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Import_2013_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Import_2013_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Import_2013_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Import_2014_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Import_2014_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Import_2014_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Import_2014_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Import_2015_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Import_2015_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Import_2015_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Import_2015_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Import_2016_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Import_2016_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Import_2016_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Import_2016_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Import_2017_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Import_2017_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Import_2017_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Import_2017_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Import_2017_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Import_2017_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..d1092422
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Import_2017_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Import_2017_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx"],
+    "date_last_modified": ["2024-02-01"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Import_2018_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Import_2018_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Import_2018_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Import_2018_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Import_2018_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Import_2018_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..a4ec96bb
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Import_2018_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Import_2018_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2018],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx"],
+    "date_last_modified": ["2024-02-01"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Import_2019_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Import_2019_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Import_2019_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Import_2019_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Import_2019_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Import_2019_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..9deacae0
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Import_2019_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Import_2019_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2019],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx"],
+    "date_last_modified": ["2024-02-01"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Import_2020_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Import_2020_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Import_2020_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Import_2020_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Import_2020_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Import_2020_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..a3da0201
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Import_2020_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Import_2020_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2020],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx"],
+    "date_last_modified": ["2024-02-01"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Import_2021_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Import_2021_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..2fc36e5b
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Import_2021_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Import_2021_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2021],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx"],
+    "date_last_modified": ["2024-02-01"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Import_2022_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Import_2022_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..4f51a233
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Import_2022_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Import_2022_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2022],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx"],
+    "date_last_modified": ["2024-02-01"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_IndustryCodeName_2017_metadata.json b/inst/extdata/metadata/Summary_IndustryCodeName_2017_metadata.json
new file mode 100644
index 00000000..09ab80e3
--- /dev/null
+++ b/inst/extdata/metadata/Summary_IndustryCodeName_2017_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_IndustryCodeName_2017"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Make_2010_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2010_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2010_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2010_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2010_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2010_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2010_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2010_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2011_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2011_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2011_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2011_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2011_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2011_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2011_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2011_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2012_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2012_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2012_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2012_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2012_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2012_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2012_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2012_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2013_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2013_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2013_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2013_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2013_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2013_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2013_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2013_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2014_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2014_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2014_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2014_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2014_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2014_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2014_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2014_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2015_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2015_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2015_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2015_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2015_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2015_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2015_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2015_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2016_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2016_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2016_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2016_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2016_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2016_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2016_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2016_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2017_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2017_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2017_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2017_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2017_AfterRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Make_2017_AfterRedef_17sch_metadata.json
new file mode 100644
index 00000000..023e636d
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Make_2017_AfterRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Make_2017_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Make_2017_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2017_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2017_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2017_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Make_2017_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Make_2017_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..fcc62965
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Make_2017_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Make_2017_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Make_2018_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2018_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2018_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2018_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Make_2018_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2018_AfterRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Make_2018_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2018_AfterRedef_17sch_metadata.json
index ef29d20d..7fc18c7c 100644
--- a/inst/extdata/metadata/Sector_Make_2018_AfterRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Make_2018_AfterRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Make_2018_AfterRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Make_2018_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2018],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Make_2018_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2018_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2018_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2018_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Make_2018_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2018_BeforeRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Make_2018_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2018_BeforeRedef_17sch_metadata.json
index 0646d157..2f5bdf9e 100644
--- a/inst/extdata/metadata/Sector_Make_2018_BeforeRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Make_2018_BeforeRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Make_2018_BeforeRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Make_2018_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2018],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Make_2019_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2019_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2019_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2019_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Make_2019_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2019_AfterRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Make_2019_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2019_AfterRedef_17sch_metadata.json
index 303da7ea..9d4d931a 100644
--- a/inst/extdata/metadata/Sector_Make_2019_AfterRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Make_2019_AfterRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Make_2019_AfterRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Make_2019_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2019],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Make_2019_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2019_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2019_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2019_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Make_2019_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2019_BeforeRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Make_2019_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2019_BeforeRedef_17sch_metadata.json
index ec0a5d31..c33146bf 100644
--- a/inst/extdata/metadata/Sector_Make_2019_BeforeRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Make_2019_BeforeRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Make_2019_BeforeRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Make_2019_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2019],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Make_2020_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2020_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2020_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2020_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Make_2020_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2020_AfterRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Make_2020_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2020_AfterRedef_17sch_metadata.json
index 1ccab736..11be0032 100644
--- a/inst/extdata/metadata/Sector_Make_2020_AfterRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Make_2020_AfterRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Make_2020_AfterRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Make_2020_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2020],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Make_2020_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2020_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2020_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2020_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Make_2020_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2020_BeforeRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Make_2020_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2020_BeforeRedef_17sch_metadata.json
index c9b9685f..90570153 100644
--- a/inst/extdata/metadata/Sector_Make_2020_BeforeRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Make_2020_BeforeRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Make_2020_BeforeRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Make_2020_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2020],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Make_2021_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2021_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2021_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2021_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Make_2021_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2021_AfterRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Make_2021_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2021_AfterRedef_17sch_metadata.json
index 2d9ee9a5..5305b4d1 100644
--- a/inst/extdata/metadata/Sector_Make_2021_AfterRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Make_2021_AfterRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Make_2021_AfterRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Make_2021_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2021],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Make_2021_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2021_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Make_2021_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2021_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Make_2021_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Make_2021_BeforeRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Make_2021_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Make_2021_BeforeRedef_17sch_metadata.json
index 15249c80..58c24806 100644
--- a/inst/extdata/metadata/Sector_Make_2021_BeforeRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Make_2021_BeforeRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Make_2021_BeforeRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Make_2021_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2021],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Make_2022_AfterRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Make_2022_AfterRedef_17sch_metadata.json
new file mode 100644
index 00000000..c5c3ebd3
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Make_2022_AfterRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Make_2022_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2022],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Make_2022_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Make_2022_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..8004ece4
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Make_2022_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Make_2022_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2022],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Supply_2010_metadata.json b/inst/extdata/metadata/Summary_Supply_2010_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Supply_2010_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2010_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Supply_2011_metadata.json b/inst/extdata/metadata/Summary_Supply_2011_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Supply_2011_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2011_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Supply_2012_metadata.json b/inst/extdata/metadata/Summary_Supply_2012_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Supply_2012_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2012_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Supply_2013_metadata.json b/inst/extdata/metadata/Summary_Supply_2013_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Supply_2013_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2013_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Supply_2014_metadata.json b/inst/extdata/metadata/Summary_Supply_2014_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Supply_2014_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2014_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Supply_2015_metadata.json b/inst/extdata/metadata/Summary_Supply_2015_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Supply_2015_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2015_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Supply_2016_metadata.json b/inst/extdata/metadata/Summary_Supply_2016_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Supply_2016_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2016_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Supply_2017_metadata.json b/inst/extdata/metadata/Summary_Supply_2017_17sch_metadata.json
similarity index 56%
rename from inst/extdata/metadata/Sector_Supply_2017_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2017_17sch_metadata.json
index dae1aa8e..dcc58d74 100644
--- a/inst/extdata/metadata/Sector_Supply_2017_metadata.json
+++ b/inst/extdata/metadata/Summary_Supply_2017_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Supply_2017"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Supply_2017_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2017],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Sector_Supply_2018_metadata.json b/inst/extdata/metadata/Summary_Supply_2018_17sch_metadata.json
similarity index 56%
rename from inst/extdata/metadata/Sector_Supply_2018_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2018_17sch_metadata.json
index aec067a9..d5e085f1 100644
--- a/inst/extdata/metadata/Sector_Supply_2018_metadata.json
+++ b/inst/extdata/metadata/Summary_Supply_2018_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Supply_2018"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Supply_2018_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2018],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Supply_2018_metadata.json b/inst/extdata/metadata/Summary_Supply_2018_metadata.json
deleted file mode 100644
index 970d70db..00000000
--- a/inst/extdata/metadata/Summary_Supply_2018_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Summary_Supply_2018"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2018],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Supply_2019_metadata.json b/inst/extdata/metadata/Summary_Supply_2019_17sch_metadata.json
similarity index 56%
rename from inst/extdata/metadata/Sector_Supply_2019_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2019_17sch_metadata.json
index 4eeb62fb..b168ab64 100644
--- a/inst/extdata/metadata/Sector_Supply_2019_metadata.json
+++ b/inst/extdata/metadata/Summary_Supply_2019_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Supply_2019"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Supply_2019_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2019],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Supply_2019_metadata.json b/inst/extdata/metadata/Summary_Supply_2019_metadata.json
deleted file mode 100644
index 382428c1..00000000
--- a/inst/extdata/metadata/Summary_Supply_2019_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Summary_Supply_2019"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2019],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Supply_2020_metadata.json b/inst/extdata/metadata/Summary_Supply_2020_17sch_metadata.json
similarity index 56%
rename from inst/extdata/metadata/Sector_Supply_2020_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2020_17sch_metadata.json
index 8df73628..636f2ca5 100644
--- a/inst/extdata/metadata/Sector_Supply_2020_metadata.json
+++ b/inst/extdata/metadata/Summary_Supply_2020_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Supply_2020"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Supply_2020_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2020],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Supply_2020_metadata.json b/inst/extdata/metadata/Summary_Supply_2020_metadata.json
deleted file mode 100644
index 1a81f41a..00000000
--- a/inst/extdata/metadata/Summary_Supply_2020_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Summary_Supply_2020"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2020],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Supply_2013_metadata.json b/inst/extdata/metadata/Summary_Supply_2021_17sch_metadata.json
similarity index 50%
rename from inst/extdata/metadata/Sector_Supply_2013_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2021_17sch_metadata.json
index 85f4b59e..ef72fa77 100644
--- a/inst/extdata/metadata/Sector_Supply_2013_metadata.json
+++ b/inst/extdata/metadata/Summary_Supply_2021_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Supply_2013"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Supply_2021_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
-    "data_year": [2013],
+    "data_year": [2021],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Sector_Supply_2010_metadata.json b/inst/extdata/metadata/Summary_Supply_2022_17sch_metadata.json
similarity index 50%
rename from inst/extdata/metadata/Sector_Supply_2010_metadata.json
rename to inst/extdata/metadata/Summary_Supply_2022_17sch_metadata.json
index e351b745..277e91d9 100644
--- a/inst/extdata/metadata/Sector_Supply_2010_metadata.json
+++ b/inst/extdata/metadata/Summary_Supply_2022_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Supply_2010"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Supply_2022_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
-    "data_year": [2010],
+    "data_year": [2022],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_2010_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2010_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2010_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2010_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2010_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2010_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2010_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2010_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2011_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2011_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2011_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2011_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2011_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2011_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2011_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2011_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2012_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2012_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2012_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2012_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2012_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2012_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2012_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2012_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2012_PUR_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2012_PUR_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2012_PUR_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2012_PUR_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2013_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2013_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2013_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2013_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2013_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2013_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2013_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2013_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2014_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2014_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2014_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2014_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2014_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2014_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2014_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2014_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2015_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2015_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2015_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2015_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2015_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2015_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2015_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2015_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2016_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2016_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2016_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2016_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2016_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2016_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2016_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2016_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2017_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2017_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2017_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2017_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2017_PRO_AfterRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Use_2017_PRO_AfterRedef_17sch_metadata.json
new file mode 100644
index 00000000..c87f21fc
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Use_2017_PRO_AfterRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Use_2017_PRO_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Use_2017_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2017_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2017_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2017_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_2017_PRO_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Use_2017_PRO_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..dcf32f23
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Use_2017_PRO_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Use_2017_PRO_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Use_2017_PUR_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Use_2017_PUR_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..b66dc4ad
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Use_2017_PUR_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Use_2017_PUR_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2024-01-19"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Use_2018_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2018_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2018_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2018_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Use_2018_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2018_PRO_AfterRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Use_2018_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2018_PRO_AfterRedef_17sch_metadata.json
index 7ab56924..2cd7aa5b 100644
--- a/inst/extdata/metadata/Sector_Use_2018_PRO_AfterRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_2018_PRO_AfterRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_2018_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_2018_PRO_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2018],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_2018_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2018_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2018_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2018_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Use_2018_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2018_PRO_BeforeRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Use_2018_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2018_PRO_BeforeRedef_17sch_metadata.json
index 42d74ddb..0d4de2a8 100644
--- a/inst/extdata/metadata/Sector_Use_2018_PRO_BeforeRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_2018_PRO_BeforeRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_2018_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_2018_PRO_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2018],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_2019_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2019_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2019_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2019_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Use_2019_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2019_PRO_AfterRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Use_2019_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2019_PRO_AfterRedef_17sch_metadata.json
index 71eb9a39..f7eaed6e 100644
--- a/inst/extdata/metadata/Sector_Use_2019_PRO_AfterRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_2019_PRO_AfterRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_2019_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_2019_PRO_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2019],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_2019_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2019_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2019_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2019_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Use_2019_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2019_PRO_BeforeRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Use_2019_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2019_PRO_BeforeRedef_17sch_metadata.json
index 33325b5d..be17b454 100644
--- a/inst/extdata/metadata/Sector_Use_2019_PRO_BeforeRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_2019_PRO_BeforeRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_2019_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_2019_PRO_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2019],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_2020_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2020_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2020_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2020_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Use_2020_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2020_PRO_AfterRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Use_2020_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2020_PRO_AfterRedef_17sch_metadata.json
index 4d68a2f3..f4e01c1d 100644
--- a/inst/extdata/metadata/Sector_Use_2020_PRO_AfterRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_2020_PRO_AfterRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_2020_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_2020_PRO_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2020],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_2020_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2020_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2020_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2020_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Use_2020_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2020_PRO_BeforeRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Use_2020_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2020_PRO_BeforeRedef_17sch_metadata.json
index 6b805714..634a0931 100644
--- a/inst/extdata/metadata/Sector_Use_2020_PRO_BeforeRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_2020_PRO_BeforeRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_2020_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_2020_PRO_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2020],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_2021_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2021_PRO_AfterRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2021_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2021_PRO_AfterRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Use_2021_PRO_AfterRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2021_PRO_AfterRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Use_2021_PRO_AfterRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2021_PRO_AfterRedef_17sch_metadata.json
index 2d5a4e7a..d2bf803e 100644
--- a/inst/extdata/metadata/Sector_Use_2021_PRO_AfterRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_2021_PRO_AfterRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_2021_PRO_AfterRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_2021_PRO_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2021],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_2021_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2021_PRO_BeforeRedef_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_2021_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2021_PRO_BeforeRedef_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Use_2021_PRO_BeforeRedef_metadata.json b/inst/extdata/metadata/Summary_Use_2021_PRO_BeforeRedef_17sch_metadata.json
similarity index 54%
rename from inst/extdata/metadata/Sector_Use_2021_PRO_BeforeRedef_metadata.json
rename to inst/extdata/metadata/Summary_Use_2021_PRO_BeforeRedef_17sch_metadata.json
index 30847f7b..4524c986 100644
--- a/inst/extdata/metadata/Sector_Use_2021_PRO_BeforeRedef_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_2021_PRO_BeforeRedef_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_2021_PRO_BeforeRedef"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_2021_PRO_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2023-04-11"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2021],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
-    "date_last_modified": ["2022-09-27"],
-    "date_accessed": ["2023-04-11"]
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_2022_PRO_AfterRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Use_2022_PRO_AfterRedef_17sch_metadata.json
new file mode 100644
index 00000000..2657600c
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Use_2022_PRO_AfterRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Use_2022_PRO_AfterRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2022],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Use_2022_PRO_BeforeRedef_17sch_metadata.json b/inst/extdata/metadata/Summary_Use_2022_PRO_BeforeRedef_17sch_metadata.json
new file mode 100644
index 00000000..542d7209
--- /dev/null
+++ b/inst/extdata/metadata/Summary_Use_2022_PRO_BeforeRedef_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_Use_2022_PRO_BeforeRedef_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2022],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_Use_SUT_2010_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2010_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_SUT_2010_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2010_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_SUT_2011_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2011_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_SUT_2011_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2011_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_SUT_2012_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2012_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_SUT_2012_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2012_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_SUT_2013_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2013_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_SUT_2013_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2013_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_SUT_2014_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2014_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_SUT_2014_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2014_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_SUT_2015_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2015_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_SUT_2015_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2015_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_Use_SUT_2016_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2016_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_Use_SUT_2016_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2016_12sch_metadata.json
diff --git a/inst/extdata/metadata/Sector_Use_SUT_2017_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2017_17sch_metadata.json
similarity index 56%
rename from inst/extdata/metadata/Sector_Use_SUT_2017_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2017_17sch_metadata.json
index 2fa9109b..03c353c9 100644
--- a/inst/extdata/metadata/Sector_Use_SUT_2017_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_SUT_2017_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_SUT_2017"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_SUT_2017_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2017],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Sector_Use_SUT_2018_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2018_17sch_metadata.json
similarity index 56%
rename from inst/extdata/metadata/Sector_Use_SUT_2018_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2018_17sch_metadata.json
index e167e3fb..939ed8b0 100644
--- a/inst/extdata/metadata/Sector_Use_SUT_2018_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_SUT_2018_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_SUT_2018"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_SUT_2018_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2018],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_SUT_2018_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2018_metadata.json
deleted file mode 100644
index e946b283..00000000
--- a/inst/extdata/metadata/Summary_Use_SUT_2018_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Summary_Use_SUT_2018"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2018],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_SUT_2019_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2019_17sch_metadata.json
similarity index 56%
rename from inst/extdata/metadata/Sector_Use_SUT_2019_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2019_17sch_metadata.json
index 111a7789..7672cc7a 100644
--- a/inst/extdata/metadata/Sector_Use_SUT_2019_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_SUT_2019_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_SUT_2019"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_SUT_2019_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2019],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_SUT_2019_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2019_metadata.json
deleted file mode 100644
index 4a38c853..00000000
--- a/inst/extdata/metadata/Summary_Use_SUT_2019_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Summary_Use_SUT_2019"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2019],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Use_SUT_2020_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2020_17sch_metadata.json
similarity index 56%
rename from inst/extdata/metadata/Sector_Use_SUT_2020_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2020_17sch_metadata.json
index dccfb258..94497f93 100644
--- a/inst/extdata/metadata/Sector_Use_SUT_2020_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_SUT_2020_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Use_SUT_2020"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_SUT_2020_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
     "data_year": [2020],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_Use_SUT_2020_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2020_metadata.json
deleted file mode 100644
index e825330a..00000000
--- a/inst/extdata/metadata/Summary_Use_SUT_2020_metadata.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "tool": ["useeior"],
-  "name_data": ["Summary_Use_SUT_2020"],
-  "tool_version": ["1.1.1"],
-  "ext": ["json"],
-  "date_created": ["2022-08-23"],
-  "data_meta": {
-    "data_year": [2020],
-    "author": ["US Bureau of Economic Analysis"],
-    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
-  }
-}
diff --git a/inst/extdata/metadata/Sector_Supply_2012_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2021_17sch_metadata.json
similarity index 50%
rename from inst/extdata/metadata/Sector_Supply_2012_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2021_17sch_metadata.json
index 48cd4919..6f3a2c52 100644
--- a/inst/extdata/metadata/Sector_Supply_2012_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_SUT_2021_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Supply_2012"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_SUT_2021_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
-    "data_year": [2012],
+    "data_year": [2021],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Sector_Supply_2011_metadata.json b/inst/extdata/metadata/Summary_Use_SUT_2022_17sch_metadata.json
similarity index 50%
rename from inst/extdata/metadata/Sector_Supply_2011_metadata.json
rename to inst/extdata/metadata/Summary_Use_SUT_2022_17sch_metadata.json
index dc7fcc27..a1cadeba 100644
--- a/inst/extdata/metadata/Sector_Supply_2011_metadata.json
+++ b/inst/extdata/metadata/Summary_Use_SUT_2022_17sch_metadata.json
@@ -1,14 +1,14 @@
 {
   "tool": ["useeior"],
-  "name_data": ["Sector_Supply_2011"],
-  "tool_version": ["1.1.1"],
+  "name_data": ["Summary_Use_SUT_2022_17sch"],
+  "tool_version": ["1.5.0"],
   "ext": ["json"],
-  "date_created": ["2022-08-23"],
+  "date_created": ["2024-03-22"],
   "data_meta": {
-    "data_year": [2011],
+    "data_year": [2022],
     "author": ["US Bureau of Economic Analysis"],
     "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesSUP.zip"],
-    "date_last_modified": ["2022-02-08"],
-    "date_accessed": ["2022-08-23"]
+    "date_last_modified": {},
+    "date_accessed": ["2024-03-22"]
   }
 }
diff --git a/inst/extdata/metadata/Summary_ValueAddedCodeName_2017_metadata.json b/inst/extdata/metadata/Summary_ValueAddedCodeName_2017_metadata.json
new file mode 100644
index 00000000..a02862a7
--- /dev/null
+++ b/inst/extdata/metadata/Summary_ValueAddedCodeName_2017_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_ValueAddedCodeName_2017"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": [2017],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/iTables%20Static%20Files/AllTablesIO.zip"],
+    "date_last_modified": ["2023-12-07"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/metadata/Summary_ValueAdded_IO_metadata.json b/inst/extdata/metadata/Summary_ValueAdded_IO_12sch_metadata.json
similarity index 100%
rename from inst/extdata/metadata/Summary_ValueAdded_IO_metadata.json
rename to inst/extdata/metadata/Summary_ValueAdded_IO_12sch_metadata.json
diff --git a/inst/extdata/metadata/Summary_ValueAdded_IO_17sch_metadata.json b/inst/extdata/metadata/Summary_ValueAdded_IO_17sch_metadata.json
new file mode 100644
index 00000000..ad0cc8a3
--- /dev/null
+++ b/inst/extdata/metadata/Summary_ValueAdded_IO_17sch_metadata.json
@@ -0,0 +1,14 @@
+{
+  "tool": ["useeior"],
+  "name_data": ["Summary_ValueAdded_IO_17sch"],
+  "tool_version": ["1.5.0"],
+  "ext": ["json"],
+  "date_created": ["2024-03-22"],
+  "data_meta": {
+    "data_year": ["2017", "2018", "2019", "2020", "2021", "2022"],
+    "author": ["US Bureau of Economic Analysis"],
+    "source_url": ["https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip"],
+    "date_last_modified": ["2023-11-20"],
+    "date_accessed": ["2024-03-22"]
+  }
+}
diff --git a/inst/extdata/modelspecs/USEEIOv2.0-411.yml b/inst/extdata/modelspecs/USEEIOv2.0-411.yml
deleted file mode 100644
index 585dc144..00000000
--- a/inst/extdata/modelspecs/USEEIOv2.0-411.yml
+++ /dev/null
@@ -1,866 +0,0 @@
-Model: "USEEIOv2.0-411"
-BaseIOSchema: 2012
-BaseIOLevel: &BaseIOLevel "Detail"
-IOYear: 2012 # Year for IO data
-ModelRegionAcronyms: ["US"]
-ModelType: "EEIO"
-IODataSource: "BEA"
-BasePriceType: "PRO" #producer
-BasewithRedefinitions: FALSE
-CommodityorIndustryType: "Commodity"
-ScrapIncluded: FALSE
-DisaggregationSpecs: "WasteDisaggregationDetail" #Name of disaggregation yml file.
-
-SatelliteTable:
-  WAT:
-    FullName: "Water withdrawals"
-    Abbreviation: "WAT"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/Water_national_2015_m1_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2015]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      USGS_NWIS_WU_2015:
-        Title: "Water Use in the US"
-        Author: "USGS"
-        DataYear: 2015
-        URL: "https://waterdata.usgs.gov/"
-        Primary: TRUE
-  CHAIR:
-    FullName: "Criteria and Hazardous Air Emissions"
-    Abbreviation: "CHAIR"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/CAP_HAP_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      EPA_NEI_2017:
-        Title: "National Emissions Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/air-emissions-inventories/national-emissions-inventory-nei"
-        Primary: TRUE
-      EPA_TRI_2017:
-        Title: "Toxic Release Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/toxics-release-inventory-tri-program"
-        Primary: TRUE
-  GRDREL:
-    FullName: "Point source industrial releases to ground"
-    Abbreviation: "GRDREL"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/GRDREL_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      EPA_TRI_2017:
-        Title: "Toxic Release Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/toxics-release-inventory-tri-program"
-        Primary: TRUE
-  WATREL:
-    FullName: "Point source releases to water"
-    Abbreviation: "WATREL"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/TRI_DMR_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      EPA_TRI_2017:
-        Title: "Toxic Release Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/toxics-release-inventory-tri-program"
-        Primary: TRUE
-      EPA_DMR_2017:
-        Title: "Discharge Monitoring Report"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://echo.epa.gov/tools/data-downloads/icis-npdes-dmr-and-limit-data-set"
-        Primary: TRUE
-  GHG:
-    FullName: "Greenhouse Gases"
-    Abbreviation: "GHG"
-    StaticSource: TRUE
-    StaticFile: "useeior/NGHGIAM_GHG_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2016]
-    Locations: ["US"]
-    SectorListSource: "BEA" # or, NAICS
-    SectorListYear: 2012
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      USEPA_GHG_2018:
-        Title: "GHG Inventory"
-        Author: "USEPA"
-        DataYear: 2016
-        URL: "https://www.epa.gov/ghgemissions/inventory-us-greenhouse-gas-emissions-and-sinks-1990-2016"
-        Primary: TRUE
-  LAND:
-    FullName: "Land use"
-    Abbreviation: "LAND"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/Land_national_2012_v0.1.1_66af8ab.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2012]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      BLM_PLS:
-        Title: "Public Land Statistics"
-        Author: "BLM"
-        DataYear: 2012
-        URL: "https://www.blm.gov/about/data/public-land-statistics"
-        Primary: FALSE
-      EIA_CBECS_Land:
-        Title: "Commercial Building Energy Consumption Survey"
-        Author: "EIA"
-        DataYear: 2012
-        URL: "https://www.eia.gov/consumption/commercial/data/2012/"
-        Primary: FALSE
-      EIA_MECS_Land:
-        Title: "Manufacturing Energy Consumption Survey"
-        Author: "EIA"
-        DataYear: 2014
-        URL: "https://www.eia.gov/consumption/manufacturing/data/2014/"
-        Primary: FALSE     
-      USDA_ERS_MLU:
-        Title: "Major Uses of Land in the United States"
-        Author: "USDA"
-        DataYear: 2012
-        URL: "https://www.ers.usda.gov/data-products/major-land-uses/"
-        Primary: TRUE  
-  MINE:
-    FullName: "Mineral extraction"
-    Abbreviation: "MINE"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_MINE_TotalsBySector_FEDEFL.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-       USGS_MCS:
-        Title: "Mineral Commodity Summary"
-        Author: "USGS"
-        DataYear: 2014
-        URL: "https://www.usgs.gov/centers/nmic/mineral-commodity-summaries"
-        Primary: TRUE    
-  ENERGY:
-    FullName: "Energy extraction"
-    Abbreviation: "ENERGY"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_Energy_TotalsBySector_FEDEFL.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      EIA_MER:
-        Title: "Monthly Energy Review"
-        Author: "EIA"
-        DataYear: 2014
-        URL: "http://www.eia.gov/totalenergy/data/monthly/"
-        Primary: TRUE
-      EIA_923:
-        Title: "Form EIA-923 Detailed"
-        Author: "EIA"
-        DataYear: 2014
-        URL: "https://www.eia.gov/electricity/data/eia923/"
-        Primary: TRUE
-  NPAG:
-    FullName: "Nitrogen and Phosphorus Releases from Agriculture"
-    Abbreviation: "NPAG"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_NPAG_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2013, 2015]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      USDA_CUS_Corn_Potatoes:
-        Title: "Chemical Use Survey - Corn and Potatoes"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Corn_and_Potatoes/"
-        Primary: FALSE 
-      USDA_CUS_Cotton:
-        Title: "Chemical Use Survey - Cotton"
-        Author: "USDA"
-        DataYear: 2010
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2010_Corn_Upland_Cotton_Fall_Potatoes/"
-        Primary: FALSE            
-      USDA_CUS_Fruit:
-        Title: "Chemical Use Survey - Fruit"
-        Author: "USDA"
-        DataYear: 2011
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2011_Fruit_Chem_Usage/"
-        Primary: FALSE   
-      USDA_CUS_Peanuts_Rice:
-        Title: "Chemical Use Survey - Peanuts and Rice"
-        Author: "USDA"
-        DataYear: 2013
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2013_Peanuts_and_Rice/"
-        Primary: FALSE    
-      USDA_CUS_Soybeans_Wheat:
-        Title: "Chemical Use Survey - Soybeans and Wheat"
-        Author: "USDA"
-        DataYear: 2012
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2012_Soybeans_and_Wheat/"
-        Primary: FALSE     
-      USDA_CUS_Vegetables:
-        Title: "Chemical Use Survey - Vegetables"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Vegetables/"
-        Primary: FALSE  
-  PEST:
-    FullName: "Pesticide releases"
-    Abbreviation: "PEST"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_PEST_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2004, 2005, 2010, 2011, 2012, 2013, 2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      USDA_CUS_Corn_Potatoes:
-        Title: "Chemical Use Survey - Corn and Potatoes"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Corn_and_Potatoes/"
-        Primary: FALSE 
-      USDA_CUS_Cotton:
-        Title: "Chemical Use Survey - Cotton"
-        Author: "USDA"
-        DataYear: 2010
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2010_Corn_Upland_Cotton_Fall_Potatoes/"
-        Primary: FALSE            
-      USDA_CUS_Fruit:
-        Title: "Chemical Use Survey - Fruit"
-        Author: "USDA"
-        DataYear: 2011
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2011_Fruit_Chem_Usage/"
-        Primary: FALSE   
-      USDA_CUS_Peanuts_Rice:
-        Title: "Chemical Use Survey - Peanuts and Rice"
-        Author: "USDA"
-        DataYear: 2013
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2013_Peanuts_and_Rice/"
-        Primary: FALSE    
-      USDA_CUS_Soybeans_Wheat:
-        Title: "Chemical Use Survey - Soybeans and Wheat"
-        Author: "USDA"
-        DataYear: 2012
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2012_Soybeans_and_Wheat/"
-        Primary: FALSE     
-      USDA_CUS_Vegetables:
-        Title: "Chemical Use Survey - Vegetables"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Vegetables/"
-        Primary: FALSE  
-  CNHW:
-    FullName: "Commercial non-hazardous waste excluding construction activities"
-    Abbreviation: "CNHW"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_CNHW_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2015]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "Waste Characterization Study 2014"
-    DataSources:
-      CalRecycle_CWCS:
-        Title: "2014 Generator-Based Characterization of Commercial Sector"
-        Author: "CalRecycle"
-        DataYear: 2014
-        URL: "https://www2.calrecycle.ca.gov/WasteCharacterization/PubExtracts/2014/GenSummary.pdf"
-        Primary: TRUE     
-  CNHWC:
-    FullName: "Commercial non-hazardous waste from construction activities"
-    Abbreviation: "CNHWC"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_CNHWC_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "CDDPath"
-    DataSources:
-      USEPA_FF_2014:
-        Title: "Advancing Sustainable Materials Management: 2014 Fact Sheet"
-        Author: "USEPA"
-        DataYear: 2014
-        URL: "https://www.epa.gov/sites/production/files/2016-11/documents/2014_smmfactsheet_508.pdf"
-        Primary: TRUE     
-  CRHW:
-    FullName: "Commercial RCRA-defined hazardous waste"
-    Abbreviation: "CRHW"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/CRHW_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    OriginalFlowSource: "RCRAInfo"
-    DataSources:
-      USEPA_RCRAInfo_2017:
-        Title: "National Biennial RCRA Hazardous Waste Report"
-        Author: "USEPA"
-        DataYear: 2017
-        URL: "https://rcrapublic.epa.gov/rcrainfoweb/action/modules/br/main/broverview"
-        Primary: TRUE       
-  EMP:
-    FullName: "Employment"
-    Abbreviation: "EMP"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/Employment_national_2017_v0.1.1_66af8ab.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    OriginalFlowSource: "National Employment Matrix"
-    DataSources:
-      BLS_QCEW_2017:
-        Title: "Quarterly Census of Employment and Wages"
-        Author: "BLS"
-        DataYear: 2017
-        URL: "https://www.bls.gov/cew/"
-        Primary: TRUE  
-  VADD:
-    FullName: "Value Added"
-    Abbreviation: "VADD"
-    StaticSource: FALSE
-    StaticFile: null
-    FileLocation: None
-    DataYears: [2012]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2012
-    SectorListLevel: *BaseIOLevel
-    OriginalFlowSource: "Input-Output Tables"
-    ScriptFunctionCall: "getValueAddedTotalsbySector" #function to call for script
-    ScriptFunctionParameters: ["model"] #list of parameters
-    DataSources:
-     BEA_USE:
-       Title: "Detail Use Before Redefinitions"
-       Author: "BEA"
-       DataYear: 2012
-       URL: "https://apps.bea.gov//industry/iTables%20Static%20Files/AllTablesIO.zip"
-       Primary: TRUE
-
-Indicators:
-  GreenhouseGases:
-    Name: "Greenhouse Gases"
-    Code: "GHG"
-    Group: "Impact Potential"
-    Unit: "kg CO2 eq"
-    SimpleUnit: "Kilograms Carbon Dioxide (CO2)"
-    SimpleName: "Greenhouse Gases"
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Global warming"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Acidification:
-    Name: "Acidification Potential"
-    Code: "ACID"
-    Group: "Impact Potential"
-    Unit: "kg SO2 eq"
-    SimpleUnit: "Kilograms Sulphur Dioxide (SO2)"
-    SimpleName: "Acid Rain"    
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Acidification"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Eutrophication:
-    Name: "Eutrophication Potential"
-    Code: "EUTR"
-    Group: "Impact Potential"
-    Unit: "kg N eq"
-    SimpleUnit: "Kilograms Nitrogen (N)"
-    SimpleName: "Water Eutrophication" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Eutrophication"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  FreshwaterEcotox:
-    Name: "Freshwater Ecotoxicity Potential"
-    Code: "ETOX"
-    Group: "Impact Potential"
-    Unit: "CTUe"
-    SimpleUnit: "Comparative Toxic Unit for Ecosystem (CTUe)"
-    SimpleName: "Freshwater Ecotoxicity" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Freshwater ecotoxicity"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  HumanHealthCancer:
-    Name: "Human Health - Cancer"
-    Code: "HCAN"
-    Group: "Impact Potential"
-    Unit: "CTUh"
-    SimpleUnit: "Comparative Toxic Unit for Humans (CTUh)"
-    SimpleName: "Cancer Disease" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - cancer"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  HumanHealthNonCancer:
-    Name: "Human Health - Noncancer"
-    Code: "HNCN"
-    Group: "Impact Potential"
-    Unit: "CTUh"
-    SimpleUnit: "Comparative Toxic Unit for Humans (CTUh)"
-    SimpleName: "Noncancer Disease" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - non-cancer"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  HumanHealthToxicity:
-    Name: "Human Health Toxicity"
-    Code: "HTOX"
-    Group: "Impact Potential"
-    Unit: "CTUh"
-    SimpleUnit: "Comparative Toxic Unit for Humans (CTUh)"
-    SimpleName: "Toxic to Humans" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getCombinedImpactMethods" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - cancer", "Human health - non-cancer"]
-    DataSources:
-      USEEIO_LCIA_Aggregation:
-        Title: "Aggregation of HNCN and HCAN"
-        Author: NA
-        DataYear: NA
-        URL: NA
-        Primary: TRUE
-  HumanHealthRespEffects:
-    Name: "Human Health - Respiratory Effects"
-    Code: "HRSP"
-    Group: "Impact Potential"
-    Unit: "kg PM2.5 eq"
-    SimpleUnit: "Kilograms Particulate Matter"
-    SimpleName: "Respiratory Effects" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - particulate matter"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Ozone:
-    Name: "Ozone Depletion"
-    Code: "OZON"
-    Group: "Impact Potential"
-    Unit: "kg CFC-11 eq"
-    SimpleUnit: "Kilograms ChloroFluoroCarbon-11"
-    SimpleName: "Ozone Depletion" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Ozone depletion"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Smog:
-    Name: "Smog Formation Potential"
-    Code: "SMOG"
-    Group: "Impact Potential"
-    Unit: "kg O3 eq"
-    SimpleUnit: "Kilograms Ozone (O3)"
-    SimpleName: "Smog Formation" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Smog formation"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  freshwater_withdrawal:
-    Name: "Freshwater withdrawals"
-    Code: "WATR"
-    Group: "Resource Use"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Water Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["freshwater_resources"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  land_use:
-    Name: "Land use"
-    Code: "LAND"
-    Group: "Resource Use"
-    Unit: "m2*yr"
-    SimpleUnit: "Square Meters per Year"
-    SimpleName: "Land Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["land_use"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  HAP:
-    Name: "Hazardous Air Pollutants"
-    Code: "HAPS"
-    Group: "Chemical Releases"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Hazardous Air Pollutants" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["HAP"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  Pesticides:
-    Name: "Pesticides"
-    Code: "PEST"
-    Group: "Chemical Releases"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Pesticides" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["USDA_CUS_pesticides"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  NonRenewableEnergy:
-    Name: "Nonrenewable Energy Use"
-    Code: "NNRG"
-    Group: "Resource Use"
-    Unit: "MJ"
-    SimpleUnit: "Megajoules (MJ)"
-    SimpleName: "Nonrenewable Energy Use" 
-    StaticSource: TRUE
-    FileLocation: "DataCommons"
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters:  
-      indicators: ["nonrenewable_energy"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  RenewableEnergy:
-    Name: "Renewable Energy Use"
-    Code: "RNRG"
-    Group: "Resource Use"
-    Unit: "MJ"
-    SimpleUnit: "Megajoules (MJ)"
-    SimpleName: "Renewable Energy Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters:  
-      indicators: ["renewable_energy"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  Energy:
-    Name: "Energy Use"
-    Code: "ENRG"
-    Group: "Resource Use"
-    Unit: "MJ"
-    SimpleUnit: "Megajoules (MJ)"
-    SimpleName: "Energy Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["energy"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  MineralsMetals:
-    Name: "Minerals and Metals Use"
-    Code: "MNRL"
-    Group: "Resource Use"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Minerals and Metals Use"
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters:  
-      indicators: ["USGS_mineral_resources"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  ValueAdded:
-    Name: "Value Added"
-    Code: "VADD"
-    Group: "Economic & Social"
-    Unit: "$"
-    SimpleUnit: "US Dollars ($)"
-    SimpleName: "Value Added"
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      ingwersen_useeiov11_2017:
-        Title: "USEEIOv1.1 - Elementary Flows and Life Cycle Impact Assessment (LCIA) Characterization Factors"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.23719/1368541"
-        Primary: TRUE
-  Jobs:
-    Name: "Jobs Supported"
-    Code: "JOBS"
-    Group: "Economic & Social"
-    Unit: "jobs"
-    SimpleUnit: "Employees"
-    SimpleName: "Jobs Supported"
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      ingwersen_useeiov11_2017:
-        Title: "USEEIOv1.1 - Elementary Flows and Life Cycle Impact Assessment (LCIA) Characterization Factors"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.23719/1368541"
-        Primary: TRUE
-  RCRAHazWaste:
-    Name: "Commercial RCRA Hazardous Waste"
-    Code: "CRHW"
-    Group: "Waste Generated"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Hazardous Waste" 
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      meyer_analyzing_2020:
-        Title: "Analyzing economy-scale solid waste generation using the United States environmentally-extended input-output model"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.1016/j.resconrec.2020.104795"
-        Primary: TRUE    
-  MunicipalWaste:
-    Name: "Commercial Municipal Solid Waste"
-    Code: "CMSW"
-    Group: "Waste Generated"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Municipal Solid Waste"
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      meyer_analyzing_2020:
-        Title: "Analyzing economy-scale solid waste generation using the United States environmentally-extended input-output model"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.1016/j.resconrec.2020.104795"
-        Primary: TRUE
-  ConstructionDebris:
-    Name: "Commercial Construction and Demolition Debris"
-    Code: "CCDD"
-    Group: "Waste Generated"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Construction Debris" 
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      meyer_analyzing_2020:
-        Title: "Analyzing economy-scale solid waste generation using the United States environmentally-extended input-output model"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.1016/j.resconrec.2020.104795"
-        Primary: TRUE
-
-DemandVectors:
-    DefaultDemand: "DefaultDemandVectors" # Name of default demand vectors yml file
-# Additional demand vectors beyond useeior defaults
-    HouseholdConsumption:
-      Type: "Consumption"
-      Year: 2012
-      System: "Household"
-      Location: "US"
diff --git a/inst/extdata/modelspecs/USEEIOv2.0-i-411.yml b/inst/extdata/modelspecs/USEEIOv2.0-i-411.yml
deleted file mode 100644
index 90fa46e0..00000000
--- a/inst/extdata/modelspecs/USEEIOv2.0-i-411.yml
+++ /dev/null
@@ -1,866 +0,0 @@
-Model: "USEEIOv2.0-i-411"
-BaseIOSchema: 2012
-BaseIOLevel: &BaseIOLevel "Detail"
-IOYear: 2012 # Year for IO data
-ModelRegionAcronyms: ["US"]
-ModelType: "EEIO"
-IODataSource: "BEA"
-BasePriceType: "PRO" #producer
-BasewithRedefinitions: FALSE
-CommodityorIndustryType: "Industry"
-ScrapIncluded: FALSE
-DisaggregationSpecs: "WasteDisaggregationDetail" #Name of disaggregation yml file.
-
-SatelliteTable:
-  WAT:
-    FullName: "Water withdrawals"
-    Abbreviation: "WAT"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/Water_national_2015_m1_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2015]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      USGS_NWIS_WU_2015:
-        Title: "Water Use in the US"
-        Author: "USGS"
-        DataYear: 2015
-        URL: "https://waterdata.usgs.gov/"
-        Primary: TRUE
-  CHAIR:
-    FullName: "Criteria and Hazardous Air Emissions"
-    Abbreviation: "CHAIR"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/CAP_HAP_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      EPA_NEI_2017:
-        Title: "National Emissions Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/air-emissions-inventories/national-emissions-inventory-nei"
-        Primary: TRUE
-      EPA_TRI_2017:
-        Title: "Toxic Release Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/toxics-release-inventory-tri-program"
-        Primary: TRUE
-  GRDREL:
-    FullName: "Point source industrial releases to ground"
-    Abbreviation: "GRDREL"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/GRDREL_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      EPA_TRI_2017:
-        Title: "Toxic Release Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/toxics-release-inventory-tri-program"
-        Primary: TRUE
-  WATREL:
-    FullName: "Point source releases to water"
-    Abbreviation: "WATREL"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/TRI_DMR_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      EPA_TRI_2017:
-        Title: "Toxic Release Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/toxics-release-inventory-tri-program"
-        Primary: TRUE
-      EPA_DMR_2017:
-        Title: "Discharge Monitoring Report"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://echo.epa.gov/tools/data-downloads/icis-npdes-dmr-and-limit-data-set"
-        Primary: TRUE
-  GHG:
-    FullName: "Greenhouse Gases"
-    Abbreviation: "GHG"
-    StaticSource: TRUE
-    StaticFile: "useeior/NGHGIAM_GHG_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2016]
-    Locations: ["US"]
-    SectorListSource: "BEA" # or, NAICS
-    SectorListYear: 2012
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      USEPA_GHG_2018:
-        Title: "GHG Inventory"
-        Author: "USEPA"
-        DataYear: 2016
-        URL: "https://www.epa.gov/ghgemissions/inventory-us-greenhouse-gas-emissions-and-sinks-1990-2016"
-        Primary: TRUE
-  LAND:
-    FullName: "Land use"
-    Abbreviation: "LAND"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/Land_national_2012_v0.1.1_66af8ab.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2012]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      BLM_PLS:
-        Title: "Public Land Statistics"
-        Author: "BLM"
-        DataYear: 2012
-        URL: "https://www.blm.gov/about/data/public-land-statistics"
-        Primary: FALSE
-      EIA_CBECS_Land:
-        Title: "Commercial Building Energy Consumption Survey"
-        Author: "EIA"
-        DataYear: 2012
-        URL: "https://www.eia.gov/consumption/commercial/data/2012/"
-        Primary: FALSE
-      EIA_MECS_Land:
-        Title: "Manufacturing Energy Consumption Survey"
-        Author: "EIA"
-        DataYear: 2014
-        URL: "https://www.eia.gov/consumption/manufacturing/data/2014/"
-        Primary: FALSE     
-      USDA_ERS_MLU:
-        Title: "Major Uses of Land in the United States"
-        Author: "USDA"
-        DataYear: 2012
-        URL: "https://www.ers.usda.gov/data-products/major-land-uses/"
-        Primary: TRUE  
-  MINE:
-    FullName: "Mineral extraction"
-    Abbreviation: "MINE"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_MINE_TotalsBySector_FEDEFL.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-       USGS_MCS:
-        Title: "Mineral Commodity Summary"
-        Author: "USGS"
-        DataYear: 2014
-        URL: "https://www.usgs.gov/centers/nmic/mineral-commodity-summaries"
-        Primary: TRUE    
-  ENERGY:
-    FullName: "Energy extraction"
-    Abbreviation: "ENERGY"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_Energy_TotalsBySector_FEDEFL.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      EIA_MER:
-        Title: "Monthly Energy Review"
-        Author: "EIA"
-        DataYear: 2014
-        URL: "http://www.eia.gov/totalenergy/data/monthly/"
-        Primary: TRUE
-      EIA_923:
-        Title: "Form EIA-923 Detailed"
-        Author: "EIA"
-        DataYear: 2014
-        URL: "https://www.eia.gov/electricity/data/eia923/"
-        Primary: TRUE
-  NPAG:
-    FullName: "Nitrogen and Phosphorus Releases from Agriculture"
-    Abbreviation: "NPAG"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_NPAG_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2013, 2015]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      USDA_CUS_Corn_Potatoes:
-        Title: "Chemical Use Survey - Corn and Potatoes"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Corn_and_Potatoes/"
-        Primary: FALSE 
-      USDA_CUS_Cotton:
-        Title: "Chemical Use Survey - Cotton"
-        Author: "USDA"
-        DataYear: 2010
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2010_Corn_Upland_Cotton_Fall_Potatoes/"
-        Primary: FALSE            
-      USDA_CUS_Fruit:
-        Title: "Chemical Use Survey - Fruit"
-        Author: "USDA"
-        DataYear: 2011
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2011_Fruit_Chem_Usage/"
-        Primary: FALSE   
-      USDA_CUS_Peanuts_Rice:
-        Title: "Chemical Use Survey - Peanuts and Rice"
-        Author: "USDA"
-        DataYear: 2013
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2013_Peanuts_and_Rice/"
-        Primary: FALSE    
-      USDA_CUS_Soybeans_Wheat:
-        Title: "Chemical Use Survey - Soybeans and Wheat"
-        Author: "USDA"
-        DataYear: 2012
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2012_Soybeans_and_Wheat/"
-        Primary: FALSE     
-      USDA_CUS_Vegetables:
-        Title: "Chemical Use Survey - Vegetables"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Vegetables/"
-        Primary: FALSE  
-  PEST:
-    FullName: "Pesticide releases"
-    Abbreviation: "PEST"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_PEST_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2004, 2005, 2010, 2011, 2012, 2013, 2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      USDA_CUS_Corn_Potatoes:
-        Title: "Chemical Use Survey - Corn and Potatoes"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Corn_and_Potatoes/"
-        Primary: FALSE 
-      USDA_CUS_Cotton:
-        Title: "Chemical Use Survey - Cotton"
-        Author: "USDA"
-        DataYear: 2010
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2010_Corn_Upland_Cotton_Fall_Potatoes/"
-        Primary: FALSE            
-      USDA_CUS_Fruit:
-        Title: "Chemical Use Survey - Fruit"
-        Author: "USDA"
-        DataYear: 2011
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2011_Fruit_Chem_Usage/"
-        Primary: FALSE   
-      USDA_CUS_Peanuts_Rice:
-        Title: "Chemical Use Survey - Peanuts and Rice"
-        Author: "USDA"
-        DataYear: 2013
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2013_Peanuts_and_Rice/"
-        Primary: FALSE    
-      USDA_CUS_Soybeans_Wheat:
-        Title: "Chemical Use Survey - Soybeans and Wheat"
-        Author: "USDA"
-        DataYear: 2012
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2012_Soybeans_and_Wheat/"
-        Primary: FALSE     
-      USDA_CUS_Vegetables:
-        Title: "Chemical Use Survey - Vegetables"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Vegetables/"
-        Primary: FALSE  
-  CNHW:
-    FullName: "Commercial non-hazardous waste excluding construction activities"
-    Abbreviation: "CNHW"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_CNHW_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2015]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "Waste Characterization Study 2014"
-    DataSources:
-      CalRecycle_CWCS:
-        Title: "2014 Generator-Based Characterization of Commercial Sector"
-        Author: "CalRecycle"
-        DataYear: 2014
-        URL: "https://www2.calrecycle.ca.gov/WasteCharacterization/PubExtracts/2014/GenSummary.pdf"
-        Primary: TRUE     
-  CNHWC:
-    FullName: "Commercial non-hazardous waste from construction activities"
-    Abbreviation: "CNHWC"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_CNHWC_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "CDDPath"
-    DataSources:
-      USEPA_FF_2014:
-        Title: "Advancing Sustainable Materials Management: 2014 Fact Sheet"
-        Author: "USEPA"
-        DataYear: 2014
-        URL: "https://www.epa.gov/sites/production/files/2016-11/documents/2014_smmfactsheet_508.pdf"
-        Primary: TRUE     
-  CRHW:
-    FullName: "Commercial RCRA-defined hazardous waste"
-    Abbreviation: "CRHW"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/CRHW_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    OriginalFlowSource: "RCRAInfo"
-    DataSources:
-      USEPA_RCRAInfo_2017:
-        Title: "National Biennial RCRA Hazardous Waste Report"
-        Author: "USEPA"
-        DataYear: 2017
-        URL: "https://rcrapublic.epa.gov/rcrainfoweb/action/modules/br/main/broverview"
-        Primary: TRUE       
-  EMP:
-    FullName: "Employment"
-    Abbreviation: "EMP"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/Employment_national_2017_v0.1.1_66af8ab.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    OriginalFlowSource: "National Employment Matrix"
-    DataSources:
-      BLS_QCEW_2017:
-        Title: "Quarterly Census of Employment and Wages"
-        Author: "BLS"
-        DataYear: 2017
-        URL: "https://www.bls.gov/cew/"
-        Primary: TRUE  
-  VADD:
-    FullName: "Value Added"
-    Abbreviation: "VADD"
-    StaticSource: FALSE
-    StaticFile: null
-    FileLocation: None
-    DataYears: [2012]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2012
-    SectorListLevel: *BaseIOLevel
-    OriginalFlowSource: "Input-Output Tables"
-    ScriptFunctionCall: "getValueAddedTotalsbySector" #function to call for script
-    ScriptFunctionParameters: ["model"] #list of parameters
-    DataSources:
-     BEA_USE:
-       Title: "Detail Use Before Redefinitions"
-       Author: "BEA"
-       DataYear: 2012
-       URL: "https://apps.bea.gov//industry/iTables%20Static%20Files/AllTablesIO.zip"
-       Primary: TRUE
-
-Indicators:
-  GreenhouseGases:
-    Name: "Greenhouse Gases"
-    Code: "GHG"
-    Group: "Impact Potential"
-    Unit: "kg CO2 eq"
-    SimpleUnit: "Kilograms Carbon Dioxide (CO2)"
-    SimpleName: "Greenhouse Gases"
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Global warming"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Acidification:
-    Name: "Acidification Potential"
-    Code: "ACID"
-    Group: "Impact Potential"
-    Unit: "kg SO2 eq"
-    SimpleUnit: "Kilograms Sulphur Dioxide (SO2)"
-    SimpleName: "Acid Rain"    
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Acidification"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Eutrophication:
-    Name: "Eutrophication Potential"
-    Code: "EUTR"
-    Group: "Impact Potential"
-    Unit: "kg N eq"
-    SimpleUnit: "Kilograms Nitrogen (N)"
-    SimpleName: "Water Eutrophication" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Eutrophication"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  FreshwaterEcotox:
-    Name: "Freshwater Ecotoxicity Potential"
-    Code: "ETOX"
-    Group: "Impact Potential"
-    Unit: "CTUe"
-    SimpleUnit: "Comparative Toxic Unit for Ecosystem (CTUe)"
-    SimpleName: "Freshwater Ecotoxicity" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Freshwater ecotoxicity"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  HumanHealthCancer:
-    Name: "Human Health - Cancer"
-    Code: "HCAN"
-    Group: "Impact Potential"
-    Unit: "CTUh"
-    SimpleUnit: "Comparative Toxic Unit for Humans (CTUh)"
-    SimpleName: "Cancer Disease" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - cancer"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  HumanHealthNonCancer:
-    Name: "Human Health - Noncancer"
-    Code: "HNCN"
-    Group: "Impact Potential"
-    Unit: "CTUh"
-    SimpleUnit: "Comparative Toxic Unit for Humans (CTUh)"
-    SimpleName: "Noncancer Disease" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - non-cancer"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  HumanHealthToxicity:
-    Name: "Human Health Toxicity"
-    Code: "HTOX"
-    Group: "Impact Potential"
-    Unit: "CTUh"
-    SimpleUnit: "Comparative Toxic Unit for Humans (CTUh)"
-    SimpleName: "Toxic to Humans" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getCombinedImpactMethods" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - cancer", "Human health - non-cancer"]
-    DataSources:
-      USEEIO_LCIA_Aggregation:
-        Title: "Aggregation of HNCN and HCAN"
-        Author: NA
-        DataYear: NA
-        URL: NA
-        Primary: TRUE
-  HumanHealthRespEffects:
-    Name: "Human Health - Respiratory Effects"
-    Code: "HRSP"
-    Group: "Impact Potential"
-    Unit: "kg PM2.5 eq"
-    SimpleUnit: "Kilograms Particulate Matter"
-    SimpleName: "Respiratory Effects" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - particulate matter"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Ozone:
-    Name: "Ozone Depletion"
-    Code: "OZON"
-    Group: "Impact Potential"
-    Unit: "kg CFC-11 eq"
-    SimpleUnit: "Kilograms ChloroFluoroCarbon-11"
-    SimpleName: "Ozone Depletion" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Ozone depletion"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Smog:
-    Name: "Smog Formation Potential"
-    Code: "SMOG"
-    Group: "Impact Potential"
-    Unit: "kg O3 eq"
-    SimpleUnit: "Kilograms Ozone (O3)"
-    SimpleName: "Smog Formation" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Smog formation"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  freshwater_withdrawal:
-    Name: "Freshwater withdrawals"
-    Code: "WATR"
-    Group: "Resource Use"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Water Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["freshwater_resources"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  land_use:
-    Name: "Land use"
-    Code: "LAND"
-    Group: "Resource Use"
-    Unit: "m2*yr"
-    SimpleUnit: "Square Meters per Year"
-    SimpleName: "Land Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["land_use"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  HAP:
-    Name: "Hazardous Air Pollutants"
-    Code: "HAPS"
-    Group: "Chemical Releases"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Hazardous Air Pollutants" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["HAP"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  Pesticides:
-    Name: "Pesticides"
-    Code: "PEST"
-    Group: "Chemical Releases"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Pesticides" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["USDA_CUS_pesticides"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  NonRenewableEnergy:
-    Name: "Nonrenewable Energy Use"
-    Code: "NNRG"
-    Group: "Resource Use"
-    Unit: "MJ"
-    SimpleUnit: "Megajoules (MJ)"
-    SimpleName: "Nonrenewable Energy Use" 
-    StaticSource: TRUE
-    FileLocation: "DataCommons"
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters:  
-      indicators: ["nonrenewable_energy"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  RenewableEnergy:
-    Name: "Renewable Energy Use"
-    Code: "RNRG"
-    Group: "Resource Use"
-    Unit: "MJ"
-    SimpleUnit: "Megajoules (MJ)"
-    SimpleName: "Renewable Energy Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters:  
-      indicators: ["renewable_energy"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  Energy:
-    Name: "Energy Use"
-    Code: "ENRG"
-    Group: "Resource Use"
-    Unit: "MJ"
-    SimpleUnit: "Megajoules (MJ)"
-    SimpleName: "Energy Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["energy"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  MineralsMetals:
-    Name: "Minerals and Metals Use"
-    Code: "MNRL"
-    Group: "Resource Use"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Minerals and Metals Use"
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters:  
-      indicators: ["USGS_mineral_resources"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  ValueAdded:
-    Name: "Value Added"
-    Code: "VADD"
-    Group: "Economic & Social"
-    Unit: "$"
-    SimpleUnit: "US Dollars ($)"
-    SimpleName: "Value Added"
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      ingwersen_useeiov11_2017:
-        Title: "USEEIOv1.1 - Elementary Flows and Life Cycle Impact Assessment (LCIA) Characterization Factors"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.23719/1368541"
-        Primary: TRUE
-  Jobs:
-    Name: "Jobs Supported"
-    Code: "JOBS"
-    Group: "Economic & Social"
-    Unit: "jobs"
-    SimpleUnit: "Employees"
-    SimpleName: "Jobs Supported"
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      ingwersen_useeiov11_2017:
-        Title: "USEEIOv1.1 - Elementary Flows and Life Cycle Impact Assessment (LCIA) Characterization Factors"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.23719/1368541"
-        Primary: TRUE
-  RCRAHazWaste:
-    Name: "Commercial RCRA Hazardous Waste"
-    Code: "CRHW"
-    Group: "Waste Generated"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Hazardous Waste" 
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      meyer_analyzing_2020:
-        Title: "Analyzing economy-scale solid waste generation using the United States environmentally-extended input-output model"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.1016/j.resconrec.2020.104795"
-        Primary: TRUE    
-  MunicipalWaste:
-    Name: "Commercial Municipal Solid Waste"
-    Code: "CMSW"
-    Group: "Waste Generated"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Municipal Solid Waste"
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      meyer_analyzing_2020:
-        Title: "Analyzing economy-scale solid waste generation using the United States environmentally-extended input-output model"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.1016/j.resconrec.2020.104795"
-        Primary: TRUE
-  ConstructionDebris:
-    Name: "Commercial Construction and Demolition Debris"
-    Code: "CCDD"
-    Group: "Waste Generated"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Construction Debris" 
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      meyer_analyzing_2020:
-        Title: "Analyzing economy-scale solid waste generation using the United States environmentally-extended input-output model"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.1016/j.resconrec.2020.104795"
-        Primary: TRUE
-
-DemandVectors:
-    DefaultDemand: "DefaultDemandVectors" # Name of default demand vectors yml file
-# Additional demand vectors beyond useeior defaults
-    HouseholdConsumption:
-      Type: "Consumption"
-      Year: 2012
-      System: "Household"
-      Location: "US"
diff --git a/inst/extdata/modelspecs/USEEIOv2.0-is-GHG.yml b/inst/extdata/modelspecs/USEEIOv2.0-is-GHG.yml
deleted file mode 100644
index 614e8df2..00000000
--- a/inst/extdata/modelspecs/USEEIOv2.0-is-GHG.yml
+++ /dev/null
@@ -1,59 +0,0 @@
-Model: "USEEIOv2.0-is-GHG"
-BaseIOSchema: 2012
-BaseIOLevel: "Summary"
-IOYear: 2012 # Year for IO data
-ModelRegionAcronyms: ["US"]
-ModelType: "EEIO"
-IODataSource: "BEA"
-BasePriceType: "PRO" #producer
-BasewithRedefinitions: FALSE
-CommodityorIndustryType: "Industry"
-ScrapIncluded: FALSE
-DisaggregationSpecs: null
-
-SatelliteTable:
-  GHG:
-    FullName: "Greenhouse Gases"
-    Abbreviation: "GHG"
-    StaticSource: TRUE
-    StaticFile: "useeior/NGHGIAM_GHG_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2016]
-    Locations: ["US"]
-    SectorListSource: "BEA" # or, NAICS
-    SectorListYear: 2012
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      USEPA_GHG_2018:
-        Title: "GHG Inventory"
-        Author: "USEPA"
-        DataYear: 2016
-        URL: "https://www.epa.gov/ghgemissions/inventory-us-greenhouse-gas-emissions-and-sinks-1990-2016"
-        Primary: TRUE
-
-Indicators:
-  GreenhouseGases:
-    Name: "Greenhouse Gases"
-    Code: "GHG"
-    Group: "Impact Potential"
-    Unit: "kg CO2 eq"
-    SimpleUnit: "Kilograms Carbon Dioxide (CO2)"
-    SimpleName: "Greenhouse Gases"
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Global warming"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-
-DemandVectors:
-    DefaultDemand: "DefaultDemandVectors" # Name of default demand vectors yml file
-# Additional demand vectors beyond useeior defaults
diff --git a/inst/extdata/modelspecs/USEEIOv2.0.yml b/inst/extdata/modelspecs/USEEIOv2.0.yml
deleted file mode 100644
index 1aec9ba1..00000000
--- a/inst/extdata/modelspecs/USEEIOv2.0.yml
+++ /dev/null
@@ -1,861 +0,0 @@
-Model: "USEEIOv2.0"
-BaseIOSchema: 2012
-BaseIOLevel: &BaseIOLevel "Detail"
-IOYear: 2012 # Year for IO data
-ModelRegionAcronyms: ["US"]
-ModelType: "EEIO"
-IODataSource: "BEA"
-BasePriceType: "PRO" #producer
-BasewithRedefinitions: FALSE
-CommodityorIndustryType: "Commodity"
-ScrapIncluded: FALSE
-DisaggregationSpecs: null
-
-SatelliteTable:
-  WAT:
-    FullName: "Water withdrawals"
-    Abbreviation: "WAT"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/Water_national_2015_m1_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2015]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      USGS_NWIS_WU_2015:
-        Title: "Water Use in the US"
-        Author: "USGS"
-        DataYear: 2015
-        URL: "https://waterdata.usgs.gov/"
-        Primary: TRUE
-  CHAIR:
-    FullName: "Criteria and Hazardous Air Emissions"
-    Abbreviation: "CHAIR"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/CAP_HAP_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      EPA_NEI_2017:
-        Title: "National Emissions Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/air-emissions-inventories/national-emissions-inventory-nei"
-        Primary: TRUE
-      EPA_TRI_2017:
-        Title: "Toxic Release Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/toxics-release-inventory-tri-program"
-        Primary: TRUE
-  GRDREL:
-    FullName: "Point source industrial releases to ground"
-    Abbreviation: "GRDREL"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/GRDREL_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      EPA_TRI_2017:
-        Title: "Toxic Release Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/toxics-release-inventory-tri-program"
-        Primary: TRUE
-  WATREL:
-    FullName: "Point source releases to water"
-    Abbreviation: "WATREL"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/TRI_DMR_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      EPA_TRI_2017:
-        Title: "Toxic Release Inventory"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://www.epa.gov/toxics-release-inventory-tri-program"
-        Primary: TRUE
-      EPA_DMR_2017:
-        Title: "Discharge Monitoring Report"
-        Author: "EPA"
-        DataYear: 2017
-        URL: "https://echo.epa.gov/tools/data-downloads/icis-npdes-dmr-and-limit-data-set"
-        Primary: TRUE
-  GHG:
-    FullName: "Greenhouse Gases"
-    Abbreviation: "GHG"
-    StaticSource: TRUE
-    StaticFile: "useeior/NGHGIAM_GHG_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2016]
-    Locations: ["US"]
-    SectorListSource: "BEA" # or, NAICS
-    SectorListYear: 2012
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      USEPA_GHG_2018:
-        Title: "GHG Inventory"
-        Author: "USEPA"
-        DataYear: 2016
-        URL: "https://www.epa.gov/ghgemissions/inventory-us-greenhouse-gas-emissions-and-sinks-1990-2016"
-        Primary: TRUE
-  LAND:
-    FullName: "Land use"
-    Abbreviation: "LAND"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/Land_national_2012_v0.1.1_66af8ab.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2012]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    DataSources:
-      BLM_PLS:
-        Title: "Public Land Statistics"
-        Author: "BLM"
-        DataYear: 2012
-        URL: "https://www.blm.gov/about/data/public-land-statistics"
-        Primary: FALSE
-      EIA_CBECS_Land:
-        Title: "Commercial Building Energy Consumption Survey"
-        Author: "EIA"
-        DataYear: 2012
-        URL: "https://www.eia.gov/consumption/commercial/data/2012/"
-        Primary: FALSE
-      EIA_MECS_Land:
-        Title: "Manufacturing Energy Consumption Survey"
-        Author: "EIA"
-        DataYear: 2014
-        URL: "https://www.eia.gov/consumption/manufacturing/data/2014/"
-        Primary: FALSE     
-      USDA_ERS_MLU:
-        Title: "Major Uses of Land in the United States"
-        Author: "USDA"
-        DataYear: 2012
-        URL: "https://www.ers.usda.gov/data-products/major-land-uses/"
-        Primary: TRUE  
-  MINE:
-    FullName: "Mineral extraction"
-    Abbreviation: "MINE"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_MINE_TotalsBySector_FEDEFL.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-       USGS_MCS:
-        Title: "Mineral Commodity Summary"
-        Author: "USGS"
-        DataYear: 2014
-        URL: "https://www.usgs.gov/centers/nmic/mineral-commodity-summaries"
-        Primary: TRUE    
-  ENERGY:
-    FullName: "Energy extraction"
-    Abbreviation: "ENERGY"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_Energy_TotalsBySector_FEDEFL.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      EIA_MER:
-        Title: "Monthly Energy Review"
-        Author: "EIA"
-        DataYear: 2014
-        URL: "http://www.eia.gov/totalenergy/data/monthly/"
-        Primary: TRUE
-      EIA_923:
-        Title: "Form EIA-923 Detailed"
-        Author: "EIA"
-        DataYear: 2014
-        URL: "https://www.eia.gov/electricity/data/eia923/"
-        Primary: TRUE
-  NPAG:
-    FullName: "Nitrogen and Phosphorus Releases from Agriculture"
-    Abbreviation: "NPAG"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_NPAG_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2013, 2015]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      USDA_CUS_Corn_Potatoes:
-        Title: "Chemical Use Survey - Corn and Potatoes"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Corn_and_Potatoes/"
-        Primary: FALSE 
-      USDA_CUS_Cotton:
-        Title: "Chemical Use Survey - Cotton"
-        Author: "USDA"
-        DataYear: 2010
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2010_Corn_Upland_Cotton_Fall_Potatoes/"
-        Primary: FALSE            
-      USDA_CUS_Fruit:
-        Title: "Chemical Use Survey - Fruit"
-        Author: "USDA"
-        DataYear: 2011
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2011_Fruit_Chem_Usage/"
-        Primary: FALSE   
-      USDA_CUS_Peanuts_Rice:
-        Title: "Chemical Use Survey - Peanuts and Rice"
-        Author: "USDA"
-        DataYear: 2013
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2013_Peanuts_and_Rice/"
-        Primary: FALSE    
-      USDA_CUS_Soybeans_Wheat:
-        Title: "Chemical Use Survey - Soybeans and Wheat"
-        Author: "USDA"
-        DataYear: 2012
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2012_Soybeans_and_Wheat/"
-        Primary: FALSE     
-      USDA_CUS_Vegetables:
-        Title: "Chemical Use Survey - Vegetables"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Vegetables/"
-        Primary: FALSE  
-  PEST:
-    FullName: "Pesticide releases"
-    Abbreviation: "PEST"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_PEST_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2004, 2005, 2010, 2011, 2012, 2013, 2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
-    DataSources:
-      USDA_CUS_Corn_Potatoes:
-        Title: "Chemical Use Survey - Corn and Potatoes"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Corn_and_Potatoes/"
-        Primary: FALSE 
-      USDA_CUS_Cotton:
-        Title: "Chemical Use Survey - Cotton"
-        Author: "USDA"
-        DataYear: 2010
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2010_Corn_Upland_Cotton_Fall_Potatoes/"
-        Primary: FALSE            
-      USDA_CUS_Fruit:
-        Title: "Chemical Use Survey - Fruit"
-        Author: "USDA"
-        DataYear: 2011
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2011_Fruit_Chem_Usage/"
-        Primary: FALSE   
-      USDA_CUS_Peanuts_Rice:
-        Title: "Chemical Use Survey - Peanuts and Rice"
-        Author: "USDA"
-        DataYear: 2013
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2013_Peanuts_and_Rice/"
-        Primary: FALSE    
-      USDA_CUS_Soybeans_Wheat:
-        Title: "Chemical Use Survey - Soybeans and Wheat"
-        Author: "USDA"
-        DataYear: 2012
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2012_Soybeans_and_Wheat/"
-        Primary: FALSE     
-      USDA_CUS_Vegetables:
-        Title: "Chemical Use Survey - Vegetables"
-        Author: "USDA"
-        DataYear: 2014
-        URL: "https://www.nass.usda.gov/Data_and_Statistics/Pre-Defined_Queries/2014_Vegetables/"
-        Primary: FALSE  
-  CNHW:
-    FullName: "Commercial non-hazardous waste excluding construction activities"
-    Abbreviation: "CNHW"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_CNHW_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2015]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "Waste Characterization Study 2014"
-    DataSources:
-      CalRecycle_CWCS:
-        Title: "2014 Generator-Based Characterization of Commercial Sector"
-        Author: "CalRecycle"
-        DataYear: 2014
-        URL: "https://www2.calrecycle.ca.gov/WasteCharacterization/PubExtracts/2014/GenSummary.pdf"
-        Primary: TRUE     
-  CNHWC:
-    FullName: "Commercial non-hazardous waste from construction activities"
-    Abbreviation: "CNHWC"
-    StaticSource: TRUE
-    StaticFile: "useeior/USEEIOv1.1_CNHWC_TotalsBySector.csv"
-    FileLocation: "DataCommons"
-    DataYears: [2014]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2007
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "CDDPath"
-    DataSources:
-      USEPA_FF_2014:
-        Title: "Advancing Sustainable Materials Management: 2014 Fact Sheet"
-        Author: "USEPA"
-        DataYear: 2014
-        URL: "https://www.epa.gov/sites/production/files/2016-11/documents/2014_smmfactsheet_508.pdf"
-        Primary: TRUE   
-  CRHW:
-    FullName: "Commercial RCRA-defined hazardous waste"
-    Abbreviation: "CRHW"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/CRHW_national_2017_v0.1_864d573.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    OriginalFlowSource: "RCRAInfo"
-    DataSources:
-      USEPA_RCRAInfo_2017:
-        Title: "National Biennial RCRA Hazardous Waste Report"
-        Author: "USEPA"
-        DataYear: 2017
-        URL: "https://rcrapublic.epa.gov/rcrainfoweb/action/modules/br/main/broverview"
-        Primary: TRUE       
-  EMP:
-    FullName: "Employment"
-    Abbreviation: "EMP"
-    StaticSource: TRUE
-    StaticFile: "flowsa/FlowBySector/Employment_national_2017_v0.1.1_66af8ab.parquet"
-    FileLocation: "DataCommons"
-    DataYears: [2017]
-    Locations: ["US"]
-    SectorListSource: "NAICS"
-    SectorListYear: 2012
-    SectorListLevel: "6"
-    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
-    ScriptFunctionParameters: null
-    OriginalFlowSource: "National Employment Matrix"
-    DataSources:
-      BLS_QCEW_2017:
-        Title: "Quarterly Census of Employment and Wages"
-        Author: "BLS"
-        DataYear: 2017
-        URL: "https://www.bls.gov/cew/"
-        Primary: TRUE  
-  VADD:
-    FullName: "Value Added"
-    Abbreviation: "VADD"
-    StaticSource: FALSE
-    StaticFile: null
-    FileLocation: None
-    DataYears: [2012]
-    Locations: ["US"]
-    SectorListSource: "BEA"
-    SectorListYear: 2012
-    SectorListLevel: *BaseIOLevel
-    OriginalFlowSource: "Input-Output Tables"
-    ScriptFunctionCall: "getValueAddedTotalsbySector" #function to call for script
-    ScriptFunctionParameters: ["model"] #list of parameters
-    DataSources:
-     BEA_USE:
-       Title: "Detail Use Before Redefinitions"
-       Author: "BEA"
-       DataYear: 2012
-       URL: "https://apps.bea.gov//industry/iTables%20Static%20Files/AllTablesIO.zip"
-       Primary: TRUE
-
-Indicators:
-  GreenhouseGases:
-    Name: "Greenhouse Gases"
-    Code: "GHG"
-    Group: "Impact Potential"
-    Unit: "kg CO2 eq"
-    SimpleUnit: "Kilograms Carbon Dioxide (CO2)"
-    SimpleName: "Greenhouse Gases"
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Global warming"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Acidification:
-    Name: "Acidification Potential"
-    Code: "ACID"
-    Group: "Impact Potential"
-    Unit: "kg SO2 eq"
-    SimpleUnit: "Kilograms Sulphur Dioxide (SO2)"
-    SimpleName: "Acid Rain"    
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Acidification"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Eutrophication:
-    Name: "Eutrophication Potential"
-    Code: "EUTR"
-    Group: "Impact Potential"
-    Unit: "kg N eq"
-    SimpleUnit: "Kilograms Nitrogen (N)"
-    SimpleName: "Water Eutrophication" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Eutrophication"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  FreshwaterEcotox:
-    Name: "Freshwater Ecotoxicity Potential"
-    Code: "ETOX"
-    Group: "Impact Potential"
-    Unit: "CTUe"
-    SimpleUnit: "Comparative Toxic Unit for Ecosystem (CTUe)"
-    SimpleName: "Freshwater Ecotoxicity" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Freshwater ecotoxicity"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  HumanHealthCancer:
-    Name: "Human Health - Cancer"
-    Code: "HCAN"
-    Group: "Impact Potential"
-    Unit: "CTUh"
-    SimpleUnit: "Comparative Toxic Unit for Humans (CTUh)"
-    SimpleName: "Cancer Disease" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - cancer"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  HumanHealthNonCancer:
-    Name: "Human Health - Noncancer"
-    Code: "HNCN"
-    Group: "Impact Potential"
-    Unit: "CTUh"
-    SimpleUnit: "Comparative Toxic Unit for Humans (CTUh)"
-    SimpleName: "Noncancer Disease" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - non-cancer"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  HumanHealthToxicity:
-    Name: "Human Health Toxicity"
-    Code: "HTOX"
-    Group: "Impact Potential"
-    Unit: "CTUh"
-    SimpleUnit: "Comparative Toxic Unit for Humans (CTUh)"
-    SimpleName: "Toxic to Humans" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getCombinedImpactMethods" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - cancer", "Human health - non-cancer"]
-    DataSources:
-      USEEIO_LCIA_Aggregation:
-        Title: "Aggregation of HNCN and HCAN"
-        Author: NA
-        DataYear: NA
-        URL: NA
-        Primary: TRUE
-  HumanHealthRespEffects:
-    Name: "Human Health - Respiratory Effects"
-    Code: "HRSP"
-    Group: "Impact Potential"
-    Unit: "kg PM2.5 eq"
-    SimpleUnit: "Kilograms Particulate Matter"
-    SimpleName: "Respiratory Effects" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Human health - particulate matter"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Ozone:
-    Name: "Ozone Depletion"
-    Code: "OZON"
-    Group: "Impact Potential"
-    Unit: "kg CFC-11 eq"
-    SimpleUnit: "Kilograms ChloroFluoroCarbon-11"
-    SimpleName: "Ozone Depletion" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Ozone depletion"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  Smog:
-    Name: "Smog Formation Potential"
-    Code: "SMOG"
-    Group: "Impact Potential"
-    Unit: "kg O3 eq"
-    SimpleUnit: "Kilograms Ozone (O3)"
-    SimpleName: "Smog Formation" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/traci/TRACI_2.1_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["Smog formation"]
-    DataSources:
-      USEPA_TRACI_2.1:
-        Title: "TRACI 2.1"
-        Author: "USEPA"
-        DataYear: NA
-        URL: "https://www.epa.gov/chemical-research/tool-reduction-and-assessment-chemicals-and-other-environmental-impacts-traci"
-        Primary: TRUE
-  freshwater_withdrawal:
-    Name: "Freshwater withdrawals"
-    Code: "WATR"
-    Group: "Resource Use"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Water Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["freshwater_resources"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  land_use:
-    Name: "Land use"
-    Code: "LAND"
-    Group: "Resource Use"
-    Unit: "m2*yr"
-    SimpleUnit: "Square Meters per Year"
-    SimpleName: "Land Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["land_use"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  HAP:
-    Name: "Hazardous Air Pollutants"
-    Code: "HAPS"
-    Group: "Chemical Releases"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Hazardous Air Pollutants" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["HAP"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  Pesticides:
-    Name: "Pesticides"
-    Code: "PEST"
-    Group: "Chemical Releases"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Pesticides" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["USDA_CUS_pesticides"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  NonRenewableEnergy:
-    Name: "Nonrenewable Energy Use"
-    Code: "NNRG"
-    Group: "Resource Use"
-    Unit: "MJ"
-    SimpleUnit: "Megajoules (MJ)"
-    SimpleName: "Nonrenewable Energy Use" 
-    StaticSource: TRUE
-    FileLocation: "DataCommons"
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters:  
-      indicators: ["nonrenewable_energy"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  RenewableEnergy:
-    Name: "Renewable Energy Use"
-    Code: "RNRG"
-    Group: "Resource Use"
-    Unit: "MJ"
-    SimpleUnit: "Megajoules (MJ)"
-    SimpleName: "Renewable Energy Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters:  
-      indicators: ["renewable_energy"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  Energy:
-    Name: "Energy Use"
-    Code: "ENRG"
-    Group: "Resource Use"
-    Unit: "MJ"
-    SimpleUnit: "Megajoules (MJ)"
-    SimpleName: "Energy Use" 
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters: 
-      indicators: ["energy"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  MineralsMetals:
-    Name: "Minerals and Metals Use"
-    Code: "MNRL"
-    Group: "Resource Use"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Minerals and Metals Use"
-    StaticSource: TRUE
-    StaticFile: "lciafmt/fedefl/FEDEFL_Inventory_v1.0.0_5555779.parquet"
-    FileLocation: "DataCommons"
-    ScriptFunctionCall: "getImpactMethod" #function to call for script
-    ScriptFunctionParameters:  
-      indicators: ["USGS_mineral_resources"]
-    DataSources:
-      LCIAformatter:
-        Title: "LCIAformatter FEDEFL Inventory Methods"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "https://github.com/USEPA/LCIAformatter"
-        Primary: TRUE
-  ValueAdded:
-    Name: "Value Added"
-    Code: "VADD"
-    Group: "Economic & Social"
-    Unit: "$"
-    SimpleUnit: "US Dollars ($)"
-    SimpleName: "Value Added"
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      ingwersen_useeiov11_2017:
-        Title: "USEEIOv1.1 - Elementary Flows and Life Cycle Impact Assessment (LCIA) Characterization Factors"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.23719/1368541"
-        Primary: TRUE
-  Jobs:
-    Name: "Jobs Supported"
-    Code: "JOBS"
-    Group: "Economic & Social"
-    Unit: "jobs"
-    SimpleUnit: "Employees"
-    SimpleName: "Jobs Supported"
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      ingwersen_useeiov11_2017:
-        Title: "USEEIOv1.1 - Elementary Flows and Life Cycle Impact Assessment (LCIA) Characterization Factors"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.23719/1368541"
-        Primary: TRUE
-  RCRAHazWaste:
-    Name: "Commercial RCRA Hazardous Waste"
-    Code: "CRHW"
-    Group: "Waste Generated"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Hazardous Waste" 
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      meyer_analyzing_2020:
-        Title: "Analyzing economy-scale solid waste generation using the United States environmentally-extended input-output model"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.1016/j.resconrec.2020.104795"
-        Primary: TRUE    
-  MunicipalWaste:
-    Name: "Commercial Municipal Solid Waste"
-    Code: "CMSW"
-    Group: "Waste Generated"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Municipal Solid Waste"
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      meyer_analyzing_2020:
-        Title: "Analyzing economy-scale solid waste generation using the United States environmentally-extended input-output model"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.1016/j.resconrec.2020.104795"
-        Primary: TRUE
-  ConstructionDebris:
-    Name: "Commercial Construction and Demolition Debris"
-    Code: "CCDD"
-    Group: "Waste Generated"
-    Unit: "kg"
-    SimpleUnit: "Kilograms"
-    SimpleName: "Construction Debris" 
-    StaticSource: TRUE
-    StaticFile: "USEEIO_LCIA_Factors.csv"
-    FileLocation: "useeior"
-    DataSources:
-      meyer_analyzing_2020:
-        Title: "Analyzing economy-scale solid waste generation using the United States environmentally-extended input-output model"
-        Author: "USEPA"
-        DataYear: 2020
-        URL: "http://doi.org/10.1016/j.resconrec.2020.104795"
-        Primary: TRUE
-
-DemandVectors:
-    DefaultDemand: "DefaultDemandVectors" # Name of default demand vectors yml file
-# Additional demand vectors beyond useeior defaults
diff --git a/man/Detail_CPI_IO_17sch.Rd b/man/Detail_CPI_IO_17sch.Rd
new file mode 100644
index 00000000..992d8889
--- /dev/null
+++ b/man/Detail_CPI_IO_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_CPI_IO_17sch}
+\alias{Detail_CPI_IO_17sch}
+\title{Detail 2017-2022 CPI (2017 schema)}
+\format{
+A dataframe with 402 obs. and 6 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+}
+\usage{
+Detail_CPI_IO_17sch
+}
+\description{
+Detail 2017-2022 CPI (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_CommodityCodeName_2017.Rd b/man/Detail_CommodityCodeName_2017.Rd
new file mode 100644
index 00000000..ebff41f6
--- /dev/null
+++ b/man/Detail_CommodityCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_CommodityCodeName_2017}
+\alias{Detail_CommodityCodeName_2017}
+\title{Detail Commodity Code and Name (2017 schema)}
+\format{
+A dataframe with 402 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Detail_CommodityCodeName_2017
+}
+\description{
+Detail Commodity Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_FinalDemandCodeName_2017.Rd b/man/Detail_FinalDemandCodeName_2017.Rd
new file mode 100644
index 00000000..0e753371
--- /dev/null
+++ b/man/Detail_FinalDemandCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_FinalDemandCodeName_2017}
+\alias{Detail_FinalDemandCodeName_2017}
+\title{Detail Final Demand Code and Name (2017 schema)}
+\format{
+A dataframe with 20 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Detail_FinalDemandCodeName_2017
+}
+\description{
+Detail Final Demand Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_GrossOutput_IO_17sch.Rd b/man/Detail_GrossOutput_IO_17sch.Rd
new file mode 100644
index 00000000..f7b0a414
--- /dev/null
+++ b/man/Detail_GrossOutput_IO_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_GrossOutput_IO_17sch}
+\alias{Detail_GrossOutput_IO_17sch}
+\title{Detail 2017-2022 Gross Output (2017 schema)}
+\format{
+A dataframe with 402 obs. and 6 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+}
+\usage{
+Detail_GrossOutput_IO_17sch
+}
+\description{
+Detail 2017-2022 Gross Output (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_Import_2017_BeforeRedef_17sch.Rd b/man/Detail_Import_2017_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..36b3dfdc
--- /dev/null
+++ b/man/Detail_Import_2017_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_Import_2017_BeforeRedef_17sch}
+\alias{Detail_Import_2017_BeforeRedef_17sch}
+\title{Detail 2017 Import Before Redefinition (2017 schema)}
+\format{
+A dataframe with 402 obs. and 424 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_DET_2017.xlsx}
+}
+\usage{
+Detail_Import_2017_BeforeRedef_17sch
+}
+\description{
+Detail 2017 Import Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_IndustryCodeName_2017.Rd b/man/Detail_IndustryCodeName_2017.Rd
new file mode 100644
index 00000000..41618417
--- /dev/null
+++ b/man/Detail_IndustryCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_IndustryCodeName_2017}
+\alias{Detail_IndustryCodeName_2017}
+\title{Detail Industry Code and Name (2017 schema)}
+\format{
+A dataframe with 402 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Detail_IndustryCodeName_2017
+}
+\description{
+Detail Industry Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_Make_2017_AfterRedef_17sch.Rd b/man/Detail_Make_2017_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..58d281b0
--- /dev/null
+++ b/man/Detail_Make_2017_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_Make_2017_AfterRedef_17sch}
+\alias{Detail_Make_2017_AfterRedef_17sch}
+\title{Detail 2017 Make After Redefinition (2017 schema)}
+\format{
+A dataframe with 403 obs. and 403 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Detail_Make_2017_AfterRedef_17sch
+}
+\description{
+Detail 2017 Make After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_Make_2017_BeforeRedef_17sch.Rd b/man/Detail_Make_2017_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..4696e65d
--- /dev/null
+++ b/man/Detail_Make_2017_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_Make_2017_BeforeRedef_17sch}
+\alias{Detail_Make_2017_BeforeRedef_17sch}
+\title{Detail 2017 Make Before Redefinition (2017 schema)}
+\format{
+A dataframe with 403 obs. and 403 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Detail_Make_2017_BeforeRedef_17sch
+}
+\description{
+Detail 2017 Make Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_Margins_2017_BeforeRedef_17sch.Rd b/man/Detail_Margins_2017_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..31436bbe
--- /dev/null
+++ b/man/Detail_Margins_2017_BeforeRedef_17sch.Rd
@@ -0,0 +1,30 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_Margins_2017_BeforeRedef_17sch}
+\alias{Detail_Margins_2017_BeforeRedef_17sch}
+\title{Detail Margins (Before Redef) table for 2017 (2017 schema)}
+\format{
+A dataframe with 58051 obs. and 9 variables:
+\describe{
+ \item{NIPACode}{text code}
+ \item{MarginsCategory}{text category name, like 'Therapeutic medical equipment'}
+ \item{CommodityCode}{BEA_2017_Detail_Code}
+ \item{CommodityDescription}{BEA_2017_Detail_Name}
+ \item{ProducersValue}{USD2017}
+ \item{Transportation}{USD2017}
+ \item{Wholesale}{USD2017}
+ \item{Retail}{USD2017}
+ \item{PurchasersValue}{USD2017}
+}
+}
+\source{
+\url{https://apps.bea.gov/industry/xls/underlying-estimates/Margins_Before_Redefinitions_2017.xlsx}
+}
+\usage{
+Detail_Margins_2017_BeforeRedef_17sch
+}
+\description{
+Detail Margins (Before Redef) table for 2017 (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Sector_Supply_2011.Rd b/man/Detail_Supply_2017_17sch.Rd
similarity index 55%
rename from man/Sector_Supply_2011.Rd
rename to man/Detail_Supply_2017_17sch.Rd
index 1101ca15..5a327255 100644
--- a/man/Sector_Supply_2011.Rd
+++ b/man/Detail_Supply_2017_17sch.Rd
@@ -1,19 +1,19 @@
 % Generated by roxygen2: do not edit by hand
 % Please edit documentation in R/DataDocumentation.R
 \docType{data}
-\name{Sector_Supply_2011}
-\alias{Sector_Supply_2011}
-\title{Sector 2011 Supply (2012 schema)}
+\name{Detail_Supply_2017_17sch}
+\alias{Detail_Supply_2017_17sch}
+\title{Detail 2017 Supply (2017 schema)}
 \format{
-A dataframe with 18 obs. and 27 variables
+A dataframe with 403 obs. and 414 variables
 }
 \source{
 \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
 }
 \usage{
-Sector_Supply_2011
+Detail_Supply_2017_17sch
 }
 \description{
-Sector 2011 Supply (2012 schema)
+Detail 2017 Supply (2017 schema)
 }
 \keyword{datasets}
diff --git a/man/Detail_Use_2017_PRO_AfterRedef_17sch.Rd b/man/Detail_Use_2017_PRO_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..a593e50e
--- /dev/null
+++ b/man/Detail_Use_2017_PRO_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_Use_2017_PRO_AfterRedef_17sch}
+\alias{Detail_Use_2017_PRO_AfterRedef_17sch}
+\title{Detail 2017 Use Producer's Value After Redefinition (2017 schema)}
+\format{
+A dataframe with 408 obs. and 425 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Detail_Use_2017_PRO_AfterRedef_17sch
+}
+\description{
+Detail 2017 Use Producer's Value After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_Use_2017_PRO_BeforeRedef_17sch.Rd b/man/Detail_Use_2017_PRO_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..cfeb1241
--- /dev/null
+++ b/man/Detail_Use_2017_PRO_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_Use_2017_PRO_BeforeRedef_17sch}
+\alias{Detail_Use_2017_PRO_BeforeRedef_17sch}
+\title{Detail 2017 Use Producer's Value Before Redefinition (2017 schema)}
+\format{
+A dataframe with 408 obs. and 425 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Detail_Use_2017_PRO_BeforeRedef_17sch
+}
+\description{
+Detail 2017 Use Producer's Value Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_Use_2017_PUR_AfterRedef_17sch.Rd b/man/Detail_Use_2017_PUR_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..0952b85d
--- /dev/null
+++ b/man/Detail_Use_2017_PUR_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_Use_2017_PUR_AfterRedef_17sch}
+\alias{Detail_Use_2017_PUR_AfterRedef_17sch}
+\title{Detail 2017 Use Purchaser's Value After Redefinition (2017 schema)}
+\format{
+A dataframe with 400 obs. and 425 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Detail_Use_2017_PUR_AfterRedef_17sch
+}
+\description{
+Detail 2017 Use Purchaser's Value After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_Use_2017_PUR_BeforeRedef_17sch.Rd b/man/Detail_Use_2017_PUR_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..1f188f68
--- /dev/null
+++ b/man/Detail_Use_2017_PUR_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_Use_2017_PUR_BeforeRedef_17sch}
+\alias{Detail_Use_2017_PUR_BeforeRedef_17sch}
+\title{Detail 2017 Use Purchaser's Value Before Redefinition (2017 schema)}
+\format{
+A dataframe with 400 obs. and 425 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Detail_Use_2017_PUR_BeforeRedef_17sch
+}
+\description{
+Detail 2017 Use Purchaser's Value Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_Use_SUT_2017_17sch.Rd b/man/Detail_Use_SUT_2017_17sch.Rd
new file mode 100644
index 00000000..91e66996
--- /dev/null
+++ b/man/Detail_Use_SUT_2017_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_Use_SUT_2017_17sch}
+\alias{Detail_Use_SUT_2017_17sch}
+\title{Detail 2017 Use (under the Supply-Use framework, 2017 schema)}
+\format{
+A dataframe with 411 obs. and 423 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
+}
+\usage{
+Detail_Use_SUT_2017_17sch
+}
+\description{
+Detail 2017 Use (under the Supply-Use framework, 2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Detail_ValueAddedCodeName_2017.Rd b/man/Detail_ValueAddedCodeName_2017.Rd
new file mode 100644
index 00000000..5e1ca924
--- /dev/null
+++ b/man/Detail_ValueAddedCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Detail_ValueAddedCodeName_2017}
+\alias{Detail_ValueAddedCodeName_2017}
+\title{Detail Value Added Code and Name (2017 schema)}
+\format{
+A dataframe with 3 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Detail_ValueAddedCodeName_2017
+}
+\description{
+Detail Value Added Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/MasterCrosswalk.Rd b/man/MasterCrosswalk.Rd
new file mode 100644
index 00000000..80ec0ac1
--- /dev/null
+++ b/man/MasterCrosswalk.Rd
@@ -0,0 +1,30 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{MasterCrosswalk}
+\alias{MasterCrosswalk}
+\title{Master Crosswalk table (2017 schema)}
+\format{
+A dataframe with 4095 obs. and 12 variables:
+\describe{
+ \item{BEA_2017_Sector_Code}{text code}
+ \item{BEA_2017_Sector_Name}{text code}
+ \item{BEA_2017_Summary_Code}{text code}
+ \item{BEA_2017_Summary_Name}{text code}
+ \item{BEA_2017_Detail_Code}{text code}
+ \item{BEA_2017_Detail_Name}{text code}
+ \item{USEEIO_Code}{text code}
+ \item{USEEIO_Name}{text code}
+ \item{NAICS_2017_Code}{text code}
+ \item{NAICS_2017_Name}{text code}
+ \item{NAICS_2012_Code}{text code}
+ \item{NAICS_2007_Code}{text code}
+}
+}
+\usage{
+MasterCrosswalk
+}
+\description{
+Master Crosswalk table (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/MasterCrosswalk2017.Rd b/man/MasterCrosswalk2017.Rd
new file mode 100644
index 00000000..fd27dfea
--- /dev/null
+++ b/man/MasterCrosswalk2017.Rd
@@ -0,0 +1,23 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{MasterCrosswalk2017}
+\alias{MasterCrosswalk2017}
+\title{Master Crosswalk table (2017 schema)}
+\format{
+A dataframe with 4095 obs. and 5 variables:
+\describe{
+ \item{BEA_2017_Sector_Code}{text code}
+ \item{BEA_2017_Summary_Code}{text code}
+ \item{BEA_2017_Detail_Code}{text code}
+ \item{NAICS_2017_Code}{text code}
+ \item{NAICS_2012_Code}{text code}
+}
+}
+\usage{
+MasterCrosswalk2017
+}
+\description{
+Master Crosswalk table (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Sector_CPI_IO_17sch.Rd b/man/Sector_CPI_IO_17sch.Rd
new file mode 100644
index 00000000..9957fb18
--- /dev/null
+++ b/man/Sector_CPI_IO_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Sector_CPI_IO_17sch}
+\alias{Sector_CPI_IO_17sch}
+\title{Sector 2017-2022 CPI (2017 schema)}
+\format{
+A dataframe with 15 obs. and 6 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+}
+\usage{
+Sector_CPI_IO_17sch
+}
+\description{
+Sector 2017-2022 CPI (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Sector_CommodityCodeName_2017.Rd b/man/Sector_CommodityCodeName_2017.Rd
new file mode 100644
index 00000000..5ad5f525
--- /dev/null
+++ b/man/Sector_CommodityCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Sector_CommodityCodeName_2017}
+\alias{Sector_CommodityCodeName_2017}
+\title{Sector Commodity Code and Name (2017 schema)}
+\format{
+A dataframe with 17 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Sector_CommodityCodeName_2017
+}
+\description{
+Sector Commodity Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Sector_FinalDemandCodeName_2017.Rd b/man/Sector_FinalDemandCodeName_2017.Rd
new file mode 100644
index 00000000..8b1624f6
--- /dev/null
+++ b/man/Sector_FinalDemandCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Sector_FinalDemandCodeName_2017}
+\alias{Sector_FinalDemandCodeName_2017}
+\title{Sector Final Demand Code and Name (2017 schema)}
+\format{
+A dataframe with 6 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Sector_FinalDemandCodeName_2017
+}
+\description{
+Sector Final Demand Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Sector_GrossOutput_IO_17sch.Rd b/man/Sector_GrossOutput_IO_17sch.Rd
new file mode 100644
index 00000000..9a4cc8e9
--- /dev/null
+++ b/man/Sector_GrossOutput_IO_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Sector_GrossOutput_IO_17sch}
+\alias{Sector_GrossOutput_IO_17sch}
+\title{Sector 2017-2022 Gross Output (2017 schema)}
+\format{
+A dataframe with 15 obs. and 6 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+}
+\usage{
+Sector_GrossOutput_IO_17sch
+}
+\description{
+Sector 2017-2022 Gross Output (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Sector_IndustryCodeName_2017.Rd b/man/Sector_IndustryCodeName_2017.Rd
new file mode 100644
index 00000000..bbda2d45
--- /dev/null
+++ b/man/Sector_IndustryCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Sector_IndustryCodeName_2017}
+\alias{Sector_IndustryCodeName_2017}
+\title{Sector Industry Code and Name (2017 schema)}
+\format{
+A dataframe with 17 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Sector_IndustryCodeName_2017
+}
+\description{
+Sector Industry Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Sector_Make_2010_AfterRedef.Rd b/man/Sector_Make_2010_AfterRedef.Rd
deleted file mode 100644
index e4d8c53d..00000000
--- a/man/Sector_Make_2010_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2010_AfterRedef}
-\alias{Sector_Make_2010_AfterRedef}
-\title{Sector 2010 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2010_AfterRedef
-}
-\description{
-Sector 2010 Make After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2010_BeforeRedef.Rd b/man/Sector_Make_2010_BeforeRedef.Rd
deleted file mode 100644
index f19c2215..00000000
--- a/man/Sector_Make_2010_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2010_BeforeRedef}
-\alias{Sector_Make_2010_BeforeRedef}
-\title{Sector 2010 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2010_BeforeRedef
-}
-\description{
-Sector 2010 Make Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2011_AfterRedef.Rd b/man/Sector_Make_2011_AfterRedef.Rd
deleted file mode 100644
index 94a81d50..00000000
--- a/man/Sector_Make_2011_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2011_AfterRedef}
-\alias{Sector_Make_2011_AfterRedef}
-\title{Sector 2011 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2011_AfterRedef
-}
-\description{
-Sector 2011 Make After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2011_BeforeRedef.Rd b/man/Sector_Make_2011_BeforeRedef.Rd
deleted file mode 100644
index 6ac81993..00000000
--- a/man/Sector_Make_2011_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2011_BeforeRedef}
-\alias{Sector_Make_2011_BeforeRedef}
-\title{Sector 2011 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2011_BeforeRedef
-}
-\description{
-Sector 2011 Make Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2012_AfterRedef.Rd b/man/Sector_Make_2012_AfterRedef.Rd
deleted file mode 100644
index 1fa18aba..00000000
--- a/man/Sector_Make_2012_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2012_AfterRedef}
-\alias{Sector_Make_2012_AfterRedef}
-\title{Sector 2012 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2012_AfterRedef
-}
-\description{
-Sector 2012 Make After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2012_BeforeRedef.Rd b/man/Sector_Make_2012_BeforeRedef.Rd
deleted file mode 100644
index f8ffd583..00000000
--- a/man/Sector_Make_2012_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2012_BeforeRedef}
-\alias{Sector_Make_2012_BeforeRedef}
-\title{Sector 2012 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2012_BeforeRedef
-}
-\description{
-Sector 2012 Make Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2013_AfterRedef.Rd b/man/Sector_Make_2013_AfterRedef.Rd
deleted file mode 100644
index 3e07dabc..00000000
--- a/man/Sector_Make_2013_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2013_AfterRedef}
-\alias{Sector_Make_2013_AfterRedef}
-\title{Sector 2013 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2013_AfterRedef
-}
-\description{
-Sector 2013 Make After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2013_BeforeRedef.Rd b/man/Sector_Make_2013_BeforeRedef.Rd
deleted file mode 100644
index 86165030..00000000
--- a/man/Sector_Make_2013_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2013_BeforeRedef}
-\alias{Sector_Make_2013_BeforeRedef}
-\title{Sector 2013 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2013_BeforeRedef
-}
-\description{
-Sector 2013 Make Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2014_AfterRedef.Rd b/man/Sector_Make_2014_AfterRedef.Rd
deleted file mode 100644
index b3524a8c..00000000
--- a/man/Sector_Make_2014_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2014_AfterRedef}
-\alias{Sector_Make_2014_AfterRedef}
-\title{Sector 2014 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2014_AfterRedef
-}
-\description{
-Sector 2014 Make After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2014_BeforeRedef.Rd b/man/Sector_Make_2014_BeforeRedef.Rd
deleted file mode 100644
index 53a2693d..00000000
--- a/man/Sector_Make_2014_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2014_BeforeRedef}
-\alias{Sector_Make_2014_BeforeRedef}
-\title{Sector 2014 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2014_BeforeRedef
-}
-\description{
-Sector 2014 Make Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2015_AfterRedef.Rd b/man/Sector_Make_2015_AfterRedef.Rd
deleted file mode 100644
index cbf6ac27..00000000
--- a/man/Sector_Make_2015_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2015_AfterRedef}
-\alias{Sector_Make_2015_AfterRedef}
-\title{Sector 2015 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2015_AfterRedef
-}
-\description{
-Sector 2015 Make After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2015_BeforeRedef.Rd b/man/Sector_Make_2015_BeforeRedef.Rd
deleted file mode 100644
index 167cd3f3..00000000
--- a/man/Sector_Make_2015_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2015_BeforeRedef}
-\alias{Sector_Make_2015_BeforeRedef}
-\title{Sector 2015 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2015_BeforeRedef
-}
-\description{
-Sector 2015 Make Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2016_AfterRedef.Rd b/man/Sector_Make_2016_AfterRedef.Rd
deleted file mode 100644
index 5fb3b0db..00000000
--- a/man/Sector_Make_2016_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2016_AfterRedef}
-\alias{Sector_Make_2016_AfterRedef}
-\title{Sector 2016 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2016_AfterRedef
-}
-\description{
-Sector 2016 Make After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2016_BeforeRedef.Rd b/man/Sector_Make_2016_BeforeRedef.Rd
deleted file mode 100644
index 1430e5be..00000000
--- a/man/Sector_Make_2016_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2016_BeforeRedef}
-\alias{Sector_Make_2016_BeforeRedef}
-\title{Sector 2016 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2016_BeforeRedef
-}
-\description{
-Sector 2016 Make Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2017_AfterRedef.Rd b/man/Sector_Make_2017_AfterRedef.Rd
deleted file mode 100644
index 3962a283..00000000
--- a/man/Sector_Make_2017_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2017_AfterRedef}
-\alias{Sector_Make_2017_AfterRedef}
-\title{Sector 2017 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2017_AfterRedef
-}
-\description{
-Sector 2017 Make After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2017_BeforeRedef.Rd b/man/Sector_Make_2017_BeforeRedef.Rd
deleted file mode 100644
index 1a558a08..00000000
--- a/man/Sector_Make_2017_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2017_BeforeRedef}
-\alias{Sector_Make_2017_BeforeRedef}
-\title{Sector 2017 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2017_BeforeRedef
-}
-\description{
-Sector 2017 Make Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2018_AfterRedef.Rd b/man/Sector_Make_2018_AfterRedef.Rd
deleted file mode 100644
index 8ea1fa82..00000000
--- a/man/Sector_Make_2018_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2018_AfterRedef}
-\alias{Sector_Make_2018_AfterRedef}
-\title{Sector 2018 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2018_AfterRedef
-}
-\description{
-Sector 2018 Make After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2018_BeforeRedef.Rd b/man/Sector_Make_2018_BeforeRedef.Rd
deleted file mode 100644
index 7d150d8a..00000000
--- a/man/Sector_Make_2018_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2018_BeforeRedef}
-\alias{Sector_Make_2018_BeforeRedef}
-\title{Sector 2018 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2018_BeforeRedef
-}
-\description{
-Sector 2018 Make Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2019_AfterRedef.Rd b/man/Sector_Make_2019_AfterRedef.Rd
deleted file mode 100644
index 94885cdc..00000000
--- a/man/Sector_Make_2019_AfterRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2019_AfterRedef}
-\alias{Sector_Make_2019_AfterRedef}
-\title{Sector 2019 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2019_AfterRedef
-}
-\description{
-Sector 2019 Make After Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2019_BeforeRedef.Rd b/man/Sector_Make_2019_BeforeRedef.Rd
deleted file mode 100644
index c580783f..00000000
--- a/man/Sector_Make_2019_BeforeRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2019_BeforeRedef}
-\alias{Sector_Make_2019_BeforeRedef}
-\title{Sector 2019 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2019_BeforeRedef
-}
-\description{
-Sector 2019 Make Before Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2020_AfterRedef.Rd b/man/Sector_Make_2020_AfterRedef.Rd
deleted file mode 100644
index b566aa68..00000000
--- a/man/Sector_Make_2020_AfterRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2020_AfterRedef}
-\alias{Sector_Make_2020_AfterRedef}
-\title{Sector 2020 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2020_AfterRedef
-}
-\description{
-Sector 2020 Make After Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2020_BeforeRedef.Rd b/man/Sector_Make_2020_BeforeRedef.Rd
deleted file mode 100644
index a99c4807..00000000
--- a/man/Sector_Make_2020_BeforeRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2020_BeforeRedef}
-\alias{Sector_Make_2020_BeforeRedef}
-\title{Sector 2020 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2020_BeforeRedef
-}
-\description{
-Sector 2020 Make Before Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2021_AfterRedef.Rd b/man/Sector_Make_2021_AfterRedef.Rd
deleted file mode 100644
index a33edee9..00000000
--- a/man/Sector_Make_2021_AfterRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2021_AfterRedef}
-\alias{Sector_Make_2021_AfterRedef}
-\title{Sector 2021 Make After Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2021_AfterRedef
-}
-\description{
-Sector 2021 Make After Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Make_2021_BeforeRedef.Rd b/man/Sector_Make_2021_BeforeRedef.Rd
deleted file mode 100644
index 73bce8ab..00000000
--- a/man/Sector_Make_2021_BeforeRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Make_2021_BeforeRedef}
-\alias{Sector_Make_2021_BeforeRedef}
-\title{Sector 2021 Make Before Redefinition (2012 schema)}
-\format{
-A dataframe with 16 obs. and 18 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Make_2021_BeforeRedef
-}
-\description{
-Sector 2021 Make Before Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Supply_2010.Rd b/man/Sector_Supply_2010.Rd
deleted file mode 100644
index d75eb06e..00000000
--- a/man/Sector_Supply_2010.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Supply_2010}
-\alias{Sector_Supply_2010}
-\title{Sector 2010 Supply (2012 schema)}
-\format{
-A dataframe with 18 obs. and 27 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Supply_2010
-}
-\description{
-Sector 2010 Supply (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Supply_2012.Rd b/man/Sector_Supply_2012.Rd
deleted file mode 100644
index ce127132..00000000
--- a/man/Sector_Supply_2012.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Supply_2012}
-\alias{Sector_Supply_2012}
-\title{Sector 2012 Supply (2012 schema)}
-\format{
-A dataframe with 18 obs. and 27 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Supply_2012
-}
-\description{
-Sector 2012 Supply (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Supply_2013.Rd b/man/Sector_Supply_2013.Rd
deleted file mode 100644
index e06719f5..00000000
--- a/man/Sector_Supply_2013.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Supply_2013}
-\alias{Sector_Supply_2013}
-\title{Sector 2013 Supply (2012 schema)}
-\format{
-A dataframe with 18 obs. and 27 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Supply_2013
-}
-\description{
-Sector 2013 Supply (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Supply_2014.Rd b/man/Sector_Supply_2014.Rd
deleted file mode 100644
index b7cf0555..00000000
--- a/man/Sector_Supply_2014.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Supply_2014}
-\alias{Sector_Supply_2014}
-\title{Sector 2014 Supply (2012 schema)}
-\format{
-A dataframe with 18 obs. and 27 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Supply_2014
-}
-\description{
-Sector 2014 Supply (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Supply_2015.Rd b/man/Sector_Supply_2015.Rd
deleted file mode 100644
index d5a998ec..00000000
--- a/man/Sector_Supply_2015.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Supply_2015}
-\alias{Sector_Supply_2015}
-\title{Sector 2015 Supply (2012 schema)}
-\format{
-A dataframe with 18 obs. and 27 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Supply_2015
-}
-\description{
-Sector 2015 Supply (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Supply_2016.Rd b/man/Sector_Supply_2016.Rd
deleted file mode 100644
index bd3a1a2d..00000000
--- a/man/Sector_Supply_2016.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Supply_2016}
-\alias{Sector_Supply_2016}
-\title{Sector 2016 Supply (2012 schema)}
-\format{
-A dataframe with 18 obs. and 27 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Supply_2016
-}
-\description{
-Sector 2016 Supply (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Supply_2017.Rd b/man/Sector_Supply_2017.Rd
deleted file mode 100644
index 12cf0d8d..00000000
--- a/man/Sector_Supply_2017.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Supply_2017}
-\alias{Sector_Supply_2017}
-\title{Sector 2017 Supply (2012 schema)}
-\format{
-A dataframe with 18 obs. and 27 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Supply_2017
-}
-\description{
-Sector 2017 Supply (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Supply_2018.Rd b/man/Sector_Supply_2018.Rd
deleted file mode 100644
index 6e07087e..00000000
--- a/man/Sector_Supply_2018.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Supply_2018}
-\alias{Sector_Supply_2018}
-\title{Sector 2018 Supply (2012 schema)}
-\format{
-A dataframe with 18 obs. and 27 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Supply_2018
-}
-\description{
-Sector 2018 Supply (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Supply_2019.Rd b/man/Sector_Supply_2019.Rd
deleted file mode 100644
index 7307fce2..00000000
--- a/man/Sector_Supply_2019.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Supply_2019}
-\alias{Sector_Supply_2019}
-\title{Sector 2019 Supply (2012 schema)}
-\format{
-A dataframe with 18 obs. and 27 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Supply_2019
-}
-\description{
-Sector 2019 Supply (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Supply_2020.Rd b/man/Sector_Supply_2020.Rd
deleted file mode 100644
index 700342d9..00000000
--- a/man/Sector_Supply_2020.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Supply_2020}
-\alias{Sector_Supply_2020}
-\title{Sector 2020 Supply (2012 schema)}
-\format{
-A dataframe with 18 obs. and 27 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Supply_2020
-}
-\description{
-Sector 2020 Supply (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2010_PRO_AfterRedef.Rd b/man/Sector_Use_2010_PRO_AfterRedef.Rd
deleted file mode 100644
index 48608d91..00000000
--- a/man/Sector_Use_2010_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2010_PRO_AfterRedef}
-\alias{Sector_Use_2010_PRO_AfterRedef}
-\title{Sector 2010 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2010_PRO_AfterRedef
-}
-\description{
-Sector 2010 Use Producer's Value After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2010_PRO_BeforeRedef.Rd b/man/Sector_Use_2010_PRO_BeforeRedef.Rd
deleted file mode 100644
index 23d3473f..00000000
--- a/man/Sector_Use_2010_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2010_PRO_BeforeRedef}
-\alias{Sector_Use_2010_PRO_BeforeRedef}
-\title{Sector 2010 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2010_PRO_BeforeRedef
-}
-\description{
-Sector 2010 Use Producer's Value Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2011_PRO_AfterRedef.Rd b/man/Sector_Use_2011_PRO_AfterRedef.Rd
deleted file mode 100644
index ed4da87e..00000000
--- a/man/Sector_Use_2011_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2011_PRO_AfterRedef}
-\alias{Sector_Use_2011_PRO_AfterRedef}
-\title{Sector 2011 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2011_PRO_AfterRedef
-}
-\description{
-Sector 2011 Use Producer's Value After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2011_PRO_BeforeRedef.Rd b/man/Sector_Use_2011_PRO_BeforeRedef.Rd
deleted file mode 100644
index e66672d5..00000000
--- a/man/Sector_Use_2011_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2011_PRO_BeforeRedef}
-\alias{Sector_Use_2011_PRO_BeforeRedef}
-\title{Sector 2011 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2011_PRO_BeforeRedef
-}
-\description{
-Sector 2011 Use Producer's Value Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2012_PRO_AfterRedef.Rd b/man/Sector_Use_2012_PRO_AfterRedef.Rd
deleted file mode 100644
index e7c417ee..00000000
--- a/man/Sector_Use_2012_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2012_PRO_AfterRedef}
-\alias{Sector_Use_2012_PRO_AfterRedef}
-\title{Sector 2012 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2012_PRO_AfterRedef
-}
-\description{
-Sector 2012 Use Producer's Value After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2012_PRO_BeforeRedef.Rd b/man/Sector_Use_2012_PRO_BeforeRedef.Rd
deleted file mode 100644
index 012b6b76..00000000
--- a/man/Sector_Use_2012_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2012_PRO_BeforeRedef}
-\alias{Sector_Use_2012_PRO_BeforeRedef}
-\title{Sector 2012 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2012_PRO_BeforeRedef
-}
-\description{
-Sector 2012 Use Producer's Value Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2012_PUR_BeforeRedef.Rd b/man/Sector_Use_2012_PUR_BeforeRedef.Rd
deleted file mode 100644
index 51c451b7..00000000
--- a/man/Sector_Use_2012_PUR_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2012_PUR_BeforeRedef}
-\alias{Sector_Use_2012_PUR_BeforeRedef}
-\title{Sector 2012 Use Purchaser's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2012_PUR_BeforeRedef
-}
-\description{
-Sector 2012 Use Purchaser's Value Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2013_PRO_AfterRedef.Rd b/man/Sector_Use_2013_PRO_AfterRedef.Rd
deleted file mode 100644
index 5155107e..00000000
--- a/man/Sector_Use_2013_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2013_PRO_AfterRedef}
-\alias{Sector_Use_2013_PRO_AfterRedef}
-\title{Sector 2013 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2013_PRO_AfterRedef
-}
-\description{
-Sector 2013 Use Producer's Value After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2013_PRO_BeforeRedef.Rd b/man/Sector_Use_2013_PRO_BeforeRedef.Rd
deleted file mode 100644
index ba326ebc..00000000
--- a/man/Sector_Use_2013_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2013_PRO_BeforeRedef}
-\alias{Sector_Use_2013_PRO_BeforeRedef}
-\title{Sector 2013 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2013_PRO_BeforeRedef
-}
-\description{
-Sector 2013 Use Producer's Value Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2014_PRO_AfterRedef.Rd b/man/Sector_Use_2014_PRO_AfterRedef.Rd
deleted file mode 100644
index 0f3aedb2..00000000
--- a/man/Sector_Use_2014_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2014_PRO_AfterRedef}
-\alias{Sector_Use_2014_PRO_AfterRedef}
-\title{Sector 2014 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2014_PRO_AfterRedef
-}
-\description{
-Sector 2014 Use Producer's Value After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2014_PRO_BeforeRedef.Rd b/man/Sector_Use_2014_PRO_BeforeRedef.Rd
deleted file mode 100644
index 2344657e..00000000
--- a/man/Sector_Use_2014_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2014_PRO_BeforeRedef}
-\alias{Sector_Use_2014_PRO_BeforeRedef}
-\title{Sector 2014 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2014_PRO_BeforeRedef
-}
-\description{
-Sector 2014 Use Producer's Value Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2015_PRO_AfterRedef.Rd b/man/Sector_Use_2015_PRO_AfterRedef.Rd
deleted file mode 100644
index 15f2f34d..00000000
--- a/man/Sector_Use_2015_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2015_PRO_AfterRedef}
-\alias{Sector_Use_2015_PRO_AfterRedef}
-\title{Sector 2015 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2015_PRO_AfterRedef
-}
-\description{
-Sector 2015 Use Producer's Value After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2015_PRO_BeforeRedef.Rd b/man/Sector_Use_2015_PRO_BeforeRedef.Rd
deleted file mode 100644
index ebc16ac6..00000000
--- a/man/Sector_Use_2015_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2015_PRO_BeforeRedef}
-\alias{Sector_Use_2015_PRO_BeforeRedef}
-\title{Sector 2015 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2015_PRO_BeforeRedef
-}
-\description{
-Sector 2015 Use Producer's Value Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2016_PRO_AfterRedef.Rd b/man/Sector_Use_2016_PRO_AfterRedef.Rd
deleted file mode 100644
index 72ca0d3d..00000000
--- a/man/Sector_Use_2016_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2016_PRO_AfterRedef}
-\alias{Sector_Use_2016_PRO_AfterRedef}
-\title{Sector 2016 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2016_PRO_AfterRedef
-}
-\description{
-Sector 2016 Use Producer's Value After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2016_PRO_BeforeRedef.Rd b/man/Sector_Use_2016_PRO_BeforeRedef.Rd
deleted file mode 100644
index 8804feaf..00000000
--- a/man/Sector_Use_2016_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2016_PRO_BeforeRedef}
-\alias{Sector_Use_2016_PRO_BeforeRedef}
-\title{Sector 2016 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2016_PRO_BeforeRedef
-}
-\description{
-Sector 2016 Use Producer's Value Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2017_PRO_AfterRedef.Rd b/man/Sector_Use_2017_PRO_AfterRedef.Rd
deleted file mode 100644
index 4cee2d84..00000000
--- a/man/Sector_Use_2017_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2017_PRO_AfterRedef}
-\alias{Sector_Use_2017_PRO_AfterRedef}
-\title{Sector 2017 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2017_PRO_AfterRedef
-}
-\description{
-Sector 2017 Use Producer's Value After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2017_PRO_BeforeRedef.Rd b/man/Sector_Use_2017_PRO_BeforeRedef.Rd
deleted file mode 100644
index 83127160..00000000
--- a/man/Sector_Use_2017_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2017_PRO_BeforeRedef}
-\alias{Sector_Use_2017_PRO_BeforeRedef}
-\title{Sector 2017 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2017_PRO_BeforeRedef
-}
-\description{
-Sector 2017 Use Producer's Value Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2018_PRO_AfterRedef.Rd b/man/Sector_Use_2018_PRO_AfterRedef.Rd
deleted file mode 100644
index 47391b7a..00000000
--- a/man/Sector_Use_2018_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2018_PRO_AfterRedef}
-\alias{Sector_Use_2018_PRO_AfterRedef}
-\title{Sector 2018 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2018_PRO_AfterRedef
-}
-\description{
-Sector 2018 Use Producer's Value After Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2018_PRO_BeforeRedef.Rd b/man/Sector_Use_2018_PRO_BeforeRedef.Rd
deleted file mode 100644
index 80d64711..00000000
--- a/man/Sector_Use_2018_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2018_PRO_BeforeRedef}
-\alias{Sector_Use_2018_PRO_BeforeRedef}
-\title{Sector 2018 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://edap-ord-data-commons.s3.amazonaws.com/useeior/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2018_PRO_BeforeRedef
-}
-\description{
-Sector 2018 Use Producer's Value Before Redefinition (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2019_PRO_AfterRedef.Rd b/man/Sector_Use_2019_PRO_AfterRedef.Rd
deleted file mode 100644
index 8cba2d1d..00000000
--- a/man/Sector_Use_2019_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2019_PRO_AfterRedef}
-\alias{Sector_Use_2019_PRO_AfterRedef}
-\title{Sector 2019 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2019_PRO_AfterRedef
-}
-\description{
-Sector 2019 Use Producer's Value After Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2019_PRO_BeforeRedef.Rd b/man/Sector_Use_2019_PRO_BeforeRedef.Rd
deleted file mode 100644
index de5028b9..00000000
--- a/man/Sector_Use_2019_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2019_PRO_BeforeRedef}
-\alias{Sector_Use_2019_PRO_BeforeRedef}
-\title{Sector 2019 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2019_PRO_BeforeRedef
-}
-\description{
-Sector 2019 Use Producer's Value Before Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2020_PRO_AfterRedef.Rd b/man/Sector_Use_2020_PRO_AfterRedef.Rd
deleted file mode 100644
index e1236cbd..00000000
--- a/man/Sector_Use_2020_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2020_PRO_AfterRedef}
-\alias{Sector_Use_2020_PRO_AfterRedef}
-\title{Sector 2020 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2020_PRO_AfterRedef
-}
-\description{
-Sector 2020 Use Producer's Value After Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2020_PRO_BeforeRedef.Rd b/man/Sector_Use_2020_PRO_BeforeRedef.Rd
deleted file mode 100644
index 71304433..00000000
--- a/man/Sector_Use_2020_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2020_PRO_BeforeRedef}
-\alias{Sector_Use_2020_PRO_BeforeRedef}
-\title{Sector 2020 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2020_PRO_BeforeRedef
-}
-\description{
-Sector 2020 Use Producer's Value Before Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2021_PRO_AfterRedef.Rd b/man/Sector_Use_2021_PRO_AfterRedef.Rd
deleted file mode 100644
index 13ab3911..00000000
--- a/man/Sector_Use_2021_PRO_AfterRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2021_PRO_AfterRedef}
-\alias{Sector_Use_2021_PRO_AfterRedef}
-\title{Sector 2021 Use Producer's Value After Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2021_PRO_AfterRedef
-}
-\description{
-Sector 2021 Use Producer's Value After Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_2021_PRO_BeforeRedef.Rd b/man/Sector_Use_2021_PRO_BeforeRedef.Rd
deleted file mode 100644
index cee56c32..00000000
--- a/man/Sector_Use_2021_PRO_BeforeRedef.Rd
+++ /dev/null
@@ -1,22 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_2021_PRO_BeforeRedef}
-\alias{Sector_Use_2021_PRO_BeforeRedef}
-\title{Sector 2021 Use Producer's Value Before Redefinition (2012 schema)}
-\format{
-A dataframe with 23 obs. and 24 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
-}
-\usage{
-Sector_Use_2021_PRO_BeforeRedef
-}
-\description{
-Sector 2021 Use Producer's Value Before Redefinition (2012 schema)
-}
-\note{
-Remove 'backslash' before 'percent sign' in url to access the source of data.
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_SUT_2010.Rd b/man/Sector_Use_SUT_2010.Rd
deleted file mode 100644
index ac0b975c..00000000
--- a/man/Sector_Use_SUT_2010.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_SUT_2010}
-\alias{Sector_Use_SUT_2010}
-\title{Sector 2010 Use (2012 schema)}
-\format{
-A dataframe with 26 obs. and 22 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Use_SUT_2010
-}
-\description{
-Sector 2010 Use (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_SUT_2011.Rd b/man/Sector_Use_SUT_2011.Rd
deleted file mode 100644
index c37f515a..00000000
--- a/man/Sector_Use_SUT_2011.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_SUT_2011}
-\alias{Sector_Use_SUT_2011}
-\title{Sector 2011 Use (2012 schema)}
-\format{
-A dataframe with 26 obs. and 22 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Use_SUT_2011
-}
-\description{
-Sector 2011 Use (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_SUT_2012.Rd b/man/Sector_Use_SUT_2012.Rd
deleted file mode 100644
index 4807a0a7..00000000
--- a/man/Sector_Use_SUT_2012.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_SUT_2012}
-\alias{Sector_Use_SUT_2012}
-\title{Sector 2012 Use (2012 schema)}
-\format{
-A dataframe with 26 obs. and 22 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Use_SUT_2012
-}
-\description{
-Sector 2012 Use (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_SUT_2013.Rd b/man/Sector_Use_SUT_2013.Rd
deleted file mode 100644
index 9880d5fb..00000000
--- a/man/Sector_Use_SUT_2013.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_SUT_2013}
-\alias{Sector_Use_SUT_2013}
-\title{Sector 2013 Use (2012 schema)}
-\format{
-A dataframe with 26 obs. and 22 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Use_SUT_2013
-}
-\description{
-Sector 2013 Use (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_SUT_2014.Rd b/man/Sector_Use_SUT_2014.Rd
deleted file mode 100644
index 6ec40738..00000000
--- a/man/Sector_Use_SUT_2014.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_SUT_2014}
-\alias{Sector_Use_SUT_2014}
-\title{Sector 2014 Use (2012 schema)}
-\format{
-A dataframe with 26 obs. and 22 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Use_SUT_2014
-}
-\description{
-Sector 2014 Use (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_SUT_2015.Rd b/man/Sector_Use_SUT_2015.Rd
deleted file mode 100644
index 98cec639..00000000
--- a/man/Sector_Use_SUT_2015.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_SUT_2015}
-\alias{Sector_Use_SUT_2015}
-\title{Sector 2015 Use (2012 schema)}
-\format{
-A dataframe with 26 obs. and 22 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Use_SUT_2015
-}
-\description{
-Sector 2015 Use (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_SUT_2016.Rd b/man/Sector_Use_SUT_2016.Rd
deleted file mode 100644
index 43d1f97f..00000000
--- a/man/Sector_Use_SUT_2016.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_SUT_2016}
-\alias{Sector_Use_SUT_2016}
-\title{Sector 2016 Use (2012 schema)}
-\format{
-A dataframe with 26 obs. and 22 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Use_SUT_2016
-}
-\description{
-Sector 2016 Use (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_SUT_2017.Rd b/man/Sector_Use_SUT_2017.Rd
deleted file mode 100644
index 938ada5e..00000000
--- a/man/Sector_Use_SUT_2017.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_SUT_2017}
-\alias{Sector_Use_SUT_2017}
-\title{Sector 2017 Use (2012 schema)}
-\format{
-A dataframe with 26 obs. and 22 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Use_SUT_2017
-}
-\description{
-Sector 2017 Use (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_SUT_2018.Rd b/man/Sector_Use_SUT_2018.Rd
deleted file mode 100644
index f7571c35..00000000
--- a/man/Sector_Use_SUT_2018.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_SUT_2018}
-\alias{Sector_Use_SUT_2018}
-\title{Sector 2018 Use (2012 schema)}
-\format{
-A dataframe with 26 obs. and 22 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Use_SUT_2018
-}
-\description{
-Sector 2018 Use (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_SUT_2019.Rd b/man/Sector_Use_SUT_2019.Rd
deleted file mode 100644
index a5d56153..00000000
--- a/man/Sector_Use_SUT_2019.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_SUT_2019}
-\alias{Sector_Use_SUT_2019}
-\title{Sector 2019 Use (2012 schema)}
-\format{
-A dataframe with 26 obs. and 22 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Use_SUT_2019
-}
-\description{
-Sector 2019 Use (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_Use_SUT_2020.Rd b/man/Sector_Use_SUT_2020.Rd
deleted file mode 100644
index 083447a8..00000000
--- a/man/Sector_Use_SUT_2020.Rd
+++ /dev/null
@@ -1,19 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/DataDocumentation.R
-\docType{data}
-\name{Sector_Use_SUT_2020}
-\alias{Sector_Use_SUT_2020}
-\title{Sector 2020 Use (2012 schema)}
-\format{
-A dataframe with 26 obs. and 22 variables
-}
-\source{
-\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
-}
-\usage{
-Sector_Use_SUT_2020
-}
-\description{
-Sector 2020 Use (2012 schema)
-}
-\keyword{datasets}
diff --git a/man/Sector_ValueAddedCodeName_2017.Rd b/man/Sector_ValueAddedCodeName_2017.Rd
new file mode 100644
index 00000000..1bd6165a
--- /dev/null
+++ b/man/Sector_ValueAddedCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Sector_ValueAddedCodeName_2017}
+\alias{Sector_ValueAddedCodeName_2017}
+\title{Sector Value Added Code and Name (2017 schema)}
+\format{
+A dataframe with 3 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Sector_ValueAddedCodeName_2017
+}
+\description{
+Sector Value Added Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Sector_ValueAdded_IO_17sch.Rd b/man/Sector_ValueAdded_IO_17sch.Rd
new file mode 100644
index 00000000..468642fd
--- /dev/null
+++ b/man/Sector_ValueAdded_IO_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Sector_ValueAdded_IO_17sch}
+\alias{Sector_ValueAdded_IO_17sch}
+\title{Sector 2017-2022 Value Added (2017 schema)}
+\format{
+A dataframe with 15 obs. and 6 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+}
+\usage{
+Sector_ValueAdded_IO_17sch
+}
+\description{
+Sector 2017-2022 Value Added (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_CPI_IO_17sch.Rd b/man/Summary_CPI_IO_17sch.Rd
new file mode 100644
index 00000000..bb7a6d18
--- /dev/null
+++ b/man/Summary_CPI_IO_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_CPI_IO_17sch}
+\alias{Summary_CPI_IO_17sch}
+\title{Summary 2017-2022 CPI (2017 schema)}
+\format{
+A dataframe with 71 obs. and 6 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+}
+\usage{
+Summary_CPI_IO_17sch
+}
+\description{
+Summary 2017-2022 CPI (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_CommodityCodeName_2017.Rd b/man/Summary_CommodityCodeName_2017.Rd
new file mode 100644
index 00000000..3ef9850b
--- /dev/null
+++ b/man/Summary_CommodityCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_CommodityCodeName_2017}
+\alias{Summary_CommodityCodeName_2017}
+\title{Summary Commodity Code and Name (2017 schema)}
+\format{
+A dataframe with 73 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_CommodityCodeName_2017
+}
+\description{
+Summary Commodity Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_FinalDemandCodeName_2017.Rd b/man/Summary_FinalDemandCodeName_2017.Rd
new file mode 100644
index 00000000..63639160
--- /dev/null
+++ b/man/Summary_FinalDemandCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_FinalDemandCodeName_2017}
+\alias{Summary_FinalDemandCodeName_2017}
+\title{Summary Final Demand Code and Name (2017 schema)}
+\format{
+A dataframe with 20 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_FinalDemandCodeName_2017
+}
+\description{
+Summary Final Demand Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_GrossOutput_IO_17sch.Rd b/man/Summary_GrossOutput_IO_17sch.Rd
new file mode 100644
index 00000000..7cff9aae
--- /dev/null
+++ b/man/Summary_GrossOutput_IO_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_GrossOutput_IO_17sch}
+\alias{Summary_GrossOutput_IO_17sch}
+\title{Summary 2017-2022 Gross Output (2017 schema)}
+\format{
+A dataframe with 71 obs. and 6 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+}
+\usage{
+Summary_GrossOutput_IO_17sch
+}
+\description{
+Summary 2017-2022 Gross Output (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Import_2017_BeforeRedef_17sch.Rd b/man/Summary_Import_2017_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..271de1d0
--- /dev/null
+++ b/man/Summary_Import_2017_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Import_2017_BeforeRedef_17sch}
+\alias{Summary_Import_2017_BeforeRedef_17sch}
+\title{Summary 2017 Import Before Redefinition (2017 schema)}
+\format{
+A dataframe with 73 obs. and 93 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+}
+\usage{
+Summary_Import_2017_BeforeRedef_17sch
+}
+\description{
+Summary 2017 Import Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Import_2018_BeforeRedef_17sch.Rd b/man/Summary_Import_2018_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..a82cfaee
--- /dev/null
+++ b/man/Summary_Import_2018_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Import_2018_BeforeRedef_17sch}
+\alias{Summary_Import_2018_BeforeRedef_17sch}
+\title{Summary 2018 Import Before Redefinition (2017 schema)}
+\format{
+A dataframe with 73 obs. and 93 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+}
+\usage{
+Summary_Import_2018_BeforeRedef_17sch
+}
+\description{
+Summary 2018 Import Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Import_2019_BeforeRedef_17sch.Rd b/man/Summary_Import_2019_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..95fc0deb
--- /dev/null
+++ b/man/Summary_Import_2019_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Import_2019_BeforeRedef_17sch}
+\alias{Summary_Import_2019_BeforeRedef_17sch}
+\title{Summary 2019 Import Before Redefinition (2017 schema)}
+\format{
+A dataframe with 73 obs. and 93 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+}
+\usage{
+Summary_Import_2019_BeforeRedef_17sch
+}
+\description{
+Summary 2019 Import Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Import_2020_BeforeRedef_17sch.Rd b/man/Summary_Import_2020_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..4b942e4d
--- /dev/null
+++ b/man/Summary_Import_2020_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Import_2020_BeforeRedef_17sch}
+\alias{Summary_Import_2020_BeforeRedef_17sch}
+\title{Summary 2020 Import Before Redefinition (2017 schema)}
+\format{
+A dataframe with 73 obs. and 93 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+}
+\usage{
+Summary_Import_2020_BeforeRedef_17sch
+}
+\description{
+Summary 2020 Import Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Import_2021_BeforeRedef_17sch.Rd b/man/Summary_Import_2021_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..15ab9f61
--- /dev/null
+++ b/man/Summary_Import_2021_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Import_2021_BeforeRedef_17sch}
+\alias{Summary_Import_2021_BeforeRedef_17sch}
+\title{Summary 2021 Import Before Redefinition (2017 schema)}
+\format{
+A dataframe with 73 obs. and 93 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+}
+\usage{
+Summary_Import_2021_BeforeRedef_17sch
+}
+\description{
+Summary 2021 Import Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Import_2022_BeforeRedef_17sch.Rd b/man/Summary_Import_2022_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..f2838903
--- /dev/null
+++ b/man/Summary_Import_2022_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Import_2022_BeforeRedef_17sch}
+\alias{Summary_Import_2022_BeforeRedef_17sch}
+\title{Summary 2022 Import Before Redefinition (2017 schema)}
+\format{
+A dataframe with 73 obs. and 93 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/xls/io-annual/ImportMatrices_Before_Redefinitions_SUM_2017-2022.xlsx}
+}
+\usage{
+Summary_Import_2022_BeforeRedef_17sch
+}
+\description{
+Summary 2022 Import Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_IndustryCodeName_2017.Rd b/man/Summary_IndustryCodeName_2017.Rd
new file mode 100644
index 00000000..8b1f6768
--- /dev/null
+++ b/man/Summary_IndustryCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_IndustryCodeName_2017}
+\alias{Summary_IndustryCodeName_2017}
+\title{Summary Industry Code and Name (2017 schema)}
+\format{
+A dataframe with 73 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_IndustryCodeName_2017
+}
+\description{
+Summary Industry Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2017_AfterRedef_17sch.Rd b/man/Summary_Make_2017_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..a9e68e88
--- /dev/null
+++ b/man/Summary_Make_2017_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2017_AfterRedef_17sch}
+\alias{Summary_Make_2017_AfterRedef_17sch}
+\title{Summary 2017 Make After Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2017_AfterRedef_17sch
+}
+\description{
+Summary 2017 Make After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2017_BeforeRedef_17sch.Rd b/man/Summary_Make_2017_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..6d085757
--- /dev/null
+++ b/man/Summary_Make_2017_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2017_BeforeRedef_17sch}
+\alias{Summary_Make_2017_BeforeRedef_17sch}
+\title{Summary 2017 Make Before Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2017_BeforeRedef_17sch
+}
+\description{
+Summary 2017 Make Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2018_AfterRedef_17sch.Rd b/man/Summary_Make_2018_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..0c514125
--- /dev/null
+++ b/man/Summary_Make_2018_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2018_AfterRedef_17sch}
+\alias{Summary_Make_2018_AfterRedef_17sch}
+\title{Summary 2018 Make After Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2018_AfterRedef_17sch
+}
+\description{
+Summary 2018 Make After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2018_BeforeRedef_17sch.Rd b/man/Summary_Make_2018_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..b96168d9
--- /dev/null
+++ b/man/Summary_Make_2018_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2018_BeforeRedef_17sch}
+\alias{Summary_Make_2018_BeforeRedef_17sch}
+\title{Summary 2018 Make Before Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2018_BeforeRedef_17sch
+}
+\description{
+Summary 2018 Make Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2019_AfterRedef_17sch.Rd b/man/Summary_Make_2019_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..9520595f
--- /dev/null
+++ b/man/Summary_Make_2019_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2019_AfterRedef_17sch}
+\alias{Summary_Make_2019_AfterRedef_17sch}
+\title{Summary 2019 Make After Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2019_AfterRedef_17sch
+}
+\description{
+Summary 2019 Make After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2019_BeforeRedef_17sch.Rd b/man/Summary_Make_2019_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..cd885aa5
--- /dev/null
+++ b/man/Summary_Make_2019_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2019_BeforeRedef_17sch}
+\alias{Summary_Make_2019_BeforeRedef_17sch}
+\title{Summary 2019 Make Before Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2019_BeforeRedef_17sch
+}
+\description{
+Summary 2019 Make Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2020_AfterRedef_17sch.Rd b/man/Summary_Make_2020_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..c0c1acc3
--- /dev/null
+++ b/man/Summary_Make_2020_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2020_AfterRedef_17sch}
+\alias{Summary_Make_2020_AfterRedef_17sch}
+\title{Summary 2020 Make After Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2020_AfterRedef_17sch
+}
+\description{
+Summary 2020 Make After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2020_BeforeRedef_17sch.Rd b/man/Summary_Make_2020_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..e455c7d7
--- /dev/null
+++ b/man/Summary_Make_2020_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2020_BeforeRedef_17sch}
+\alias{Summary_Make_2020_BeforeRedef_17sch}
+\title{Summary 2020 Make Before Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2020_BeforeRedef_17sch
+}
+\description{
+Summary 2020 Make Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2021_AfterRedef_17sch.Rd b/man/Summary_Make_2021_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..8da5e25c
--- /dev/null
+++ b/man/Summary_Make_2021_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2021_AfterRedef_17sch}
+\alias{Summary_Make_2021_AfterRedef_17sch}
+\title{Summary 2021 Make After Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2021_AfterRedef_17sch
+}
+\description{
+Summary 2021 Make After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2021_BeforeRedef_17sch.Rd b/man/Summary_Make_2021_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..f28c0cbb
--- /dev/null
+++ b/man/Summary_Make_2021_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2021_BeforeRedef_17sch}
+\alias{Summary_Make_2021_BeforeRedef_17sch}
+\title{Summary 2021 Make Before Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2021_BeforeRedef_17sch
+}
+\description{
+Summary 2021 Make Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2022_AfterRedef_17sch.Rd b/man/Summary_Make_2022_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..6d3d98d8
--- /dev/null
+++ b/man/Summary_Make_2022_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2022_AfterRedef_17sch}
+\alias{Summary_Make_2022_AfterRedef_17sch}
+\title{Summary 2022 Make After Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2022_AfterRedef_17sch
+}
+\description{
+Summary 2022 Make After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Make_2022_BeforeRedef_17sch.Rd b/man/Summary_Make_2022_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..03185425
--- /dev/null
+++ b/man/Summary_Make_2022_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Make_2022_BeforeRedef_17sch}
+\alias{Summary_Make_2022_BeforeRedef_17sch}
+\title{Summary 2022 Make Before Redefinition (2017 schema)}
+\format{
+A dataframe with 72 obs. and 74 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Make_2022_BeforeRedef_17sch
+}
+\description{
+Summary 2022 Make Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Supply_2017.Rd b/man/Summary_Supply_2017_17sch.Rd
similarity index 64%
rename from man/Summary_Supply_2017.Rd
rename to man/Summary_Supply_2017_17sch.Rd
index 6cfa292b..3ed1711f 100644
--- a/man/Summary_Supply_2017.Rd
+++ b/man/Summary_Supply_2017_17sch.Rd
@@ -1,9 +1,9 @@
 % Generated by roxygen2: do not edit by hand
 % Please edit documentation in R/DataDocumentation.R
 \docType{data}
-\name{Summary_Supply_2017}
-\alias{Summary_Supply_2017}
-\title{Summary 2017 Supply (2012 schema)}
+\name{Summary_Supply_2017_17sch}
+\alias{Summary_Supply_2017_17sch}
+\title{Summary 2017 Supply (2017 schema)}
 \format{
 A dataframe with 74 obs. and 83 variables
 }
@@ -11,9 +11,9 @@ A dataframe with 74 obs. and 83 variables
 \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
 }
 \usage{
-Summary_Supply_2017
+Summary_Supply_2017_17sch
 }
 \description{
-Summary 2017 Supply (2012 schema)
+Summary 2017 Supply (2017 schema)
 }
 \keyword{datasets}
diff --git a/man/Summary_Supply_2020.Rd b/man/Summary_Supply_2018_17sch.Rd
similarity index 64%
rename from man/Summary_Supply_2020.Rd
rename to man/Summary_Supply_2018_17sch.Rd
index 0b1a5062..4d05f80d 100644
--- a/man/Summary_Supply_2020.Rd
+++ b/man/Summary_Supply_2018_17sch.Rd
@@ -1,9 +1,9 @@
 % Generated by roxygen2: do not edit by hand
 % Please edit documentation in R/DataDocumentation.R
 \docType{data}
-\name{Summary_Supply_2020}
-\alias{Summary_Supply_2020}
-\title{Summary 2020 Supply (2012 schema)}
+\name{Summary_Supply_2018_17sch}
+\alias{Summary_Supply_2018_17sch}
+\title{Summary 2018 Supply (2017 schema)}
 \format{
 A dataframe with 74 obs. and 83 variables
 }
@@ -11,9 +11,9 @@ A dataframe with 74 obs. and 83 variables
 \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
 }
 \usage{
-Summary_Supply_2020
+Summary_Supply_2018_17sch
 }
 \description{
-Summary 2020 Supply (2012 schema)
+Summary 2018 Supply (2017 schema)
 }
 \keyword{datasets}
diff --git a/man/Summary_Supply_2018.Rd b/man/Summary_Supply_2019_17sch.Rd
similarity index 64%
rename from man/Summary_Supply_2018.Rd
rename to man/Summary_Supply_2019_17sch.Rd
index 2d9cccb9..74b6cadc 100644
--- a/man/Summary_Supply_2018.Rd
+++ b/man/Summary_Supply_2019_17sch.Rd
@@ -1,9 +1,9 @@
 % Generated by roxygen2: do not edit by hand
 % Please edit documentation in R/DataDocumentation.R
 \docType{data}
-\name{Summary_Supply_2018}
-\alias{Summary_Supply_2018}
-\title{Summary 2018 Supply (2012 schema)}
+\name{Summary_Supply_2019_17sch}
+\alias{Summary_Supply_2019_17sch}
+\title{Summary 2019 Supply (2017 schema)}
 \format{
 A dataframe with 74 obs. and 83 variables
 }
@@ -11,9 +11,9 @@ A dataframe with 74 obs. and 83 variables
 \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
 }
 \usage{
-Summary_Supply_2018
+Summary_Supply_2019_17sch
 }
 \description{
-Summary 2018 Supply (2012 schema)
+Summary 2019 Supply (2017 schema)
 }
 \keyword{datasets}
diff --git a/man/Summary_Supply_2019.Rd b/man/Summary_Supply_2020_17sch.Rd
similarity index 64%
rename from man/Summary_Supply_2019.Rd
rename to man/Summary_Supply_2020_17sch.Rd
index dcb3b062..39953798 100644
--- a/man/Summary_Supply_2019.Rd
+++ b/man/Summary_Supply_2020_17sch.Rd
@@ -1,9 +1,9 @@
 % Generated by roxygen2: do not edit by hand
 % Please edit documentation in R/DataDocumentation.R
 \docType{data}
-\name{Summary_Supply_2019}
-\alias{Summary_Supply_2019}
-\title{Summary 2019 Supply (2012 schema)}
+\name{Summary_Supply_2020_17sch}
+\alias{Summary_Supply_2020_17sch}
+\title{Summary 2020 Supply (2017 schema)}
 \format{
 A dataframe with 74 obs. and 83 variables
 }
@@ -11,9 +11,9 @@ A dataframe with 74 obs. and 83 variables
 \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
 }
 \usage{
-Summary_Supply_2019
+Summary_Supply_2020_17sch
 }
 \description{
-Summary 2019 Supply (2012 schema)
+Summary 2020 Supply (2017 schema)
 }
 \keyword{datasets}
diff --git a/man/Summary_Supply_2021_17sch.Rd b/man/Summary_Supply_2021_17sch.Rd
new file mode 100644
index 00000000..0cd22d1b
--- /dev/null
+++ b/man/Summary_Supply_2021_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Supply_2021_17sch}
+\alias{Summary_Supply_2021_17sch}
+\title{Summary 2021 Supply (2017 schema)}
+\format{
+A dataframe with 74 obs. and 83 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
+}
+\usage{
+Summary_Supply_2021_17sch
+}
+\description{
+Summary 2021 Supply (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Supply_2022_17sch.Rd b/man/Summary_Supply_2022_17sch.Rd
new file mode 100644
index 00000000..10987aaf
--- /dev/null
+++ b/man/Summary_Supply_2022_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Supply_2022_17sch}
+\alias{Summary_Supply_2022_17sch}
+\title{Summary 2022 Supply (2017 schema)}
+\format{
+A dataframe with 74 obs. and 83 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
+}
+\usage{
+Summary_Supply_2022_17sch
+}
+\description{
+Summary 2022 Supply (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2017_PRO_AfterRedef_17sch.Rd b/man/Summary_Use_2017_PRO_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..af964775
--- /dev/null
+++ b/man/Summary_Use_2017_PRO_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2017_PRO_AfterRedef_17sch}
+\alias{Summary_Use_2017_PRO_AfterRedef_17sch}
+\title{Summary 2017 Use Producer's Value After Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2017_PRO_AfterRedef_17sch
+}
+\description{
+Summary 2017 Use Producer's Value After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2017_PRO_BeforeRedef_17sch.Rd b/man/Summary_Use_2017_PRO_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..be17d750
--- /dev/null
+++ b/man/Summary_Use_2017_PRO_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2017_PRO_BeforeRedef_17sch}
+\alias{Summary_Use_2017_PRO_BeforeRedef_17sch}
+\title{Summary 2017 Use Producer's Value Before Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2017_PRO_BeforeRedef_17sch
+}
+\description{
+Summary 2017 Use Producer's Value Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2017_PUR_BeforeRedef_17sch.Rd b/man/Summary_Use_2017_PUR_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..4782ce3b
--- /dev/null
+++ b/man/Summary_Use_2017_PUR_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2017_PUR_BeforeRedef_17sch}
+\alias{Summary_Use_2017_PUR_BeforeRedef_17sch}
+\title{Summary 2017 Use Purchaser's Value Before Redefinition (2017 schema)}
+\format{
+A dataframe with 76 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2017_PUR_BeforeRedef_17sch
+}
+\description{
+Summary 2017 Use Purchaser's Value Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2018_PRO_AfterRedef_17sch.Rd b/man/Summary_Use_2018_PRO_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..9eb95a02
--- /dev/null
+++ b/man/Summary_Use_2018_PRO_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2018_PRO_AfterRedef_17sch}
+\alias{Summary_Use_2018_PRO_AfterRedef_17sch}
+\title{Summary 2018 Use Producer's Value After Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2018_PRO_AfterRedef_17sch
+}
+\description{
+Summary 2018 Use Producer's Value After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2018_PRO_BeforeRedef_17sch.Rd b/man/Summary_Use_2018_PRO_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..0944d660
--- /dev/null
+++ b/man/Summary_Use_2018_PRO_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2018_PRO_BeforeRedef_17sch}
+\alias{Summary_Use_2018_PRO_BeforeRedef_17sch}
+\title{Summary 2018 Use Producer's Value Before Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2018_PRO_BeforeRedef_17sch
+}
+\description{
+Summary 2018 Use Producer's Value Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2019_PRO_AfterRedef_17sch.Rd b/man/Summary_Use_2019_PRO_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..d971ca0a
--- /dev/null
+++ b/man/Summary_Use_2019_PRO_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2019_PRO_AfterRedef_17sch}
+\alias{Summary_Use_2019_PRO_AfterRedef_17sch}
+\title{Summary 2019 Use Producer's Value After Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2019_PRO_AfterRedef_17sch
+}
+\description{
+Summary 2019 Use Producer's Value After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2019_PRO_BeforeRedef_17sch.Rd b/man/Summary_Use_2019_PRO_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..34ac44f7
--- /dev/null
+++ b/man/Summary_Use_2019_PRO_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2019_PRO_BeforeRedef_17sch}
+\alias{Summary_Use_2019_PRO_BeforeRedef_17sch}
+\title{Summary 2019 Use Producer's Value Before Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2019_PRO_BeforeRedef_17sch
+}
+\description{
+Summary 2019 Use Producer's Value Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2020_PRO_AfterRedef_17sch.Rd b/man/Summary_Use_2020_PRO_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..913f3c61
--- /dev/null
+++ b/man/Summary_Use_2020_PRO_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2020_PRO_AfterRedef_17sch}
+\alias{Summary_Use_2020_PRO_AfterRedef_17sch}
+\title{Summary 2020 Use Producer's Value After Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2020_PRO_AfterRedef_17sch
+}
+\description{
+Summary 2020 Use Producer's Value After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2020_PRO_BeforeRedef_17sch.Rd b/man/Summary_Use_2020_PRO_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..dc23d94e
--- /dev/null
+++ b/man/Summary_Use_2020_PRO_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2020_PRO_BeforeRedef_17sch}
+\alias{Summary_Use_2020_PRO_BeforeRedef_17sch}
+\title{Summary 2020 Use Producer's Value Before Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2020_PRO_BeforeRedef_17sch
+}
+\description{
+Summary 2020 Use Producer's Value Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2021_PRO_AfterRedef_17sch.Rd b/man/Summary_Use_2021_PRO_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..b57ca85a
--- /dev/null
+++ b/man/Summary_Use_2021_PRO_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2021_PRO_AfterRedef_17sch}
+\alias{Summary_Use_2021_PRO_AfterRedef_17sch}
+\title{Summary 2021 Use Producer's Value After Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2021_PRO_AfterRedef_17sch
+}
+\description{
+Summary 2021 Use Producer's Value After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2021_PRO_BeforeRedef_17sch.Rd b/man/Summary_Use_2021_PRO_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..c7b2da89
--- /dev/null
+++ b/man/Summary_Use_2021_PRO_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2021_PRO_BeforeRedef_17sch}
+\alias{Summary_Use_2021_PRO_BeforeRedef_17sch}
+\title{Summary 2021 Use Producer's Value Before Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2021_PRO_BeforeRedef_17sch
+}
+\description{
+Summary 2021 Use Producer's Value Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2022_PRO_AfterRedef_17sch.Rd b/man/Summary_Use_2022_PRO_AfterRedef_17sch.Rd
new file mode 100644
index 00000000..d07d663b
--- /dev/null
+++ b/man/Summary_Use_2022_PRO_AfterRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2022_PRO_AfterRedef_17sch}
+\alias{Summary_Use_2022_PRO_AfterRedef_17sch}
+\title{Summary 2022 Use Producer's Value After Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2022_PRO_AfterRedef_17sch
+}
+\description{
+Summary 2022 Use Producer's Value After Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_2022_PRO_BeforeRedef_17sch.Rd b/man/Summary_Use_2022_PRO_BeforeRedef_17sch.Rd
new file mode 100644
index 00000000..80283784
--- /dev/null
+++ b/man/Summary_Use_2022_PRO_BeforeRedef_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_2022_PRO_BeforeRedef_17sch}
+\alias{Summary_Use_2022_PRO_BeforeRedef_17sch}
+\title{Summary 2022 Use Producer's Value Before Redefinition (2017 schema)}
+\format{
+A dataframe with 79 obs. and 94 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_Use_2022_PRO_BeforeRedef_17sch
+}
+\description{
+Summary 2022 Use Producer's Value Before Redefinition (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_SUT_2017.Rd b/man/Summary_Use_SUT_2017_17sch.Rd
similarity index 64%
rename from man/Summary_Use_SUT_2017.Rd
rename to man/Summary_Use_SUT_2017_17sch.Rd
index f4ae9ad7..15827e2f 100644
--- a/man/Summary_Use_SUT_2017.Rd
+++ b/man/Summary_Use_SUT_2017_17sch.Rd
@@ -1,9 +1,9 @@
 % Generated by roxygen2: do not edit by hand
 % Please edit documentation in R/DataDocumentation.R
 \docType{data}
-\name{Summary_Use_SUT_2017}
-\alias{Summary_Use_SUT_2017}
-\title{Summary 2017 Use (2012 schema)}
+\name{Summary_Use_SUT_2017_17sch}
+\alias{Summary_Use_SUT_2017_17sch}
+\title{Summary 2017 Use (2017 schema)}
 \format{
 A dataframe with 82 obs. and 92 variables
 }
@@ -11,9 +11,9 @@ A dataframe with 82 obs. and 92 variables
 \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
 }
 \usage{
-Summary_Use_SUT_2017
+Summary_Use_SUT_2017_17sch
 }
 \description{
-Summary 2017 Use (2012 schema)
+Summary 2017 Use (2017 schema)
 }
 \keyword{datasets}
diff --git a/man/Summary_Use_SUT_2018.Rd b/man/Summary_Use_SUT_2018_17sch.Rd
similarity index 64%
rename from man/Summary_Use_SUT_2018.Rd
rename to man/Summary_Use_SUT_2018_17sch.Rd
index 4b9aedbe..2254b711 100644
--- a/man/Summary_Use_SUT_2018.Rd
+++ b/man/Summary_Use_SUT_2018_17sch.Rd
@@ -1,9 +1,9 @@
 % Generated by roxygen2: do not edit by hand
 % Please edit documentation in R/DataDocumentation.R
 \docType{data}
-\name{Summary_Use_SUT_2018}
-\alias{Summary_Use_SUT_2018}
-\title{Summary 2018 Use (2012 schema)}
+\name{Summary_Use_SUT_2018_17sch}
+\alias{Summary_Use_SUT_2018_17sch}
+\title{Summary 2018 Use (2017 schema)}
 \format{
 A dataframe with 82 obs. and 92 variables
 }
@@ -11,9 +11,9 @@ A dataframe with 82 obs. and 92 variables
 \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
 }
 \usage{
-Summary_Use_SUT_2018
+Summary_Use_SUT_2018_17sch
 }
 \description{
-Summary 2018 Use (2012 schema)
+Summary 2018 Use (2017 schema)
 }
 \keyword{datasets}
diff --git a/man/Summary_Use_SUT_2019.Rd b/man/Summary_Use_SUT_2019_17sch.Rd
similarity index 64%
rename from man/Summary_Use_SUT_2019.Rd
rename to man/Summary_Use_SUT_2019_17sch.Rd
index 34ae960c..ffa6e8ed 100644
--- a/man/Summary_Use_SUT_2019.Rd
+++ b/man/Summary_Use_SUT_2019_17sch.Rd
@@ -1,9 +1,9 @@
 % Generated by roxygen2: do not edit by hand
 % Please edit documentation in R/DataDocumentation.R
 \docType{data}
-\name{Summary_Use_SUT_2019}
-\alias{Summary_Use_SUT_2019}
-\title{Summary 2019 Use (2012 schema)}
+\name{Summary_Use_SUT_2019_17sch}
+\alias{Summary_Use_SUT_2019_17sch}
+\title{Summary 2019 Use (2017 schema)}
 \format{
 A dataframe with 82 obs. and 92 variables
 }
@@ -11,9 +11,9 @@ A dataframe with 82 obs. and 92 variables
 \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
 }
 \usage{
-Summary_Use_SUT_2019
+Summary_Use_SUT_2019_17sch
 }
 \description{
-Summary 2019 Use (2012 schema)
+Summary 2019 Use (2017 schema)
 }
 \keyword{datasets}
diff --git a/man/Summary_Use_SUT_2020.Rd b/man/Summary_Use_SUT_2020_17sch.Rd
similarity index 64%
rename from man/Summary_Use_SUT_2020.Rd
rename to man/Summary_Use_SUT_2020_17sch.Rd
index ba86687d..87b65972 100644
--- a/man/Summary_Use_SUT_2020.Rd
+++ b/man/Summary_Use_SUT_2020_17sch.Rd
@@ -1,9 +1,9 @@
 % Generated by roxygen2: do not edit by hand
 % Please edit documentation in R/DataDocumentation.R
 \docType{data}
-\name{Summary_Use_SUT_2020}
-\alias{Summary_Use_SUT_2020}
-\title{Summary 2020 Use (2012 schema)}
+\name{Summary_Use_SUT_2020_17sch}
+\alias{Summary_Use_SUT_2020_17sch}
+\title{Summary 2020 Use (2017 schema)}
 \format{
 A dataframe with 82 obs. and 92 variables
 }
@@ -11,9 +11,9 @@ A dataframe with 82 obs. and 92 variables
 \url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
 }
 \usage{
-Summary_Use_SUT_2020
+Summary_Use_SUT_2020_17sch
 }
 \description{
-Summary 2020 Use (2012 schema)
+Summary 2020 Use (2017 schema)
 }
 \keyword{datasets}
diff --git a/man/Summary_Use_SUT_2021_17sch.Rd b/man/Summary_Use_SUT_2021_17sch.Rd
new file mode 100644
index 00000000..f75db70c
--- /dev/null
+++ b/man/Summary_Use_SUT_2021_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_SUT_2021_17sch}
+\alias{Summary_Use_SUT_2021_17sch}
+\title{Summary 2021 Use (2017 schema)}
+\format{
+A dataframe with 82 obs. and 92 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
+}
+\usage{
+Summary_Use_SUT_2021_17sch
+}
+\description{
+Summary 2021 Use (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_Use_SUT_2022_17sch.Rd b/man/Summary_Use_SUT_2022_17sch.Rd
new file mode 100644
index 00000000..df72db9d
--- /dev/null
+++ b/man/Summary_Use_SUT_2022_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_Use_SUT_2022_17sch}
+\alias{Summary_Use_SUT_2022_17sch}
+\title{Summary 2022 Use (2017 schema)}
+\format{
+A dataframe with 82 obs. and 92 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesSUP.zip}
+}
+\usage{
+Summary_Use_SUT_2022_17sch
+}
+\description{
+Summary 2022 Use (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_ValueAddedCodeName_2017.Rd b/man/Summary_ValueAddedCodeName_2017.Rd
new file mode 100644
index 00000000..6c025b03
--- /dev/null
+++ b/man/Summary_ValueAddedCodeName_2017.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_ValueAddedCodeName_2017}
+\alias{Summary_ValueAddedCodeName_2017}
+\title{Summary Value Added Code and Name (2017 schema)}
+\format{
+A dataframe with 3 obs. and 2 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/iTables\%20Static\%20Files/AllTablesIO.zip}
+}
+\usage{
+Summary_ValueAddedCodeName_2017
+}
+\description{
+Summary Value Added Code and Name (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/Summary_ValueAdded_IO_17sch.Rd b/man/Summary_ValueAdded_IO_17sch.Rd
new file mode 100644
index 00000000..9da07c3d
--- /dev/null
+++ b/man/Summary_ValueAdded_IO_17sch.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/DataDocumentation.R
+\docType{data}
+\name{Summary_ValueAdded_IO_17sch}
+\alias{Summary_ValueAdded_IO_17sch}
+\title{Summary 2017-2022 Value Added (2017 schema)}
+\format{
+A dataframe with 71 obs. and 6 variables
+}
+\source{
+\url{https://apps.bea.gov/industry/Release/ZIP/UGdpByInd.zip}
+}
+\usage{
+Summary_ValueAdded_IO_17sch
+}
+\description{
+Summary 2017-2022 Value Added (2017 schema)
+}
+\keyword{datasets}
diff --git a/man/addSectorsToWIOCW.Rd b/man/addSectorsToWIOCW.Rd
new file mode 100644
index 00000000..6b5505b0
--- /dev/null
+++ b/man/addSectorsToWIOCW.Rd
@@ -0,0 +1,21 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{addSectorsToWIOCW}
+\alias{addSectorsToWIOCW}
+\title{Add sectors specified by BEASectorsAsTreatmentSectors to the spec object}
+\usage{
+addSectorsToWIOCW(model, spec)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{spec}{A dataframe with WIO specifications}
+}
+\value{
+spec A dataframe with the specified sectors added to the spec$NAICSSetorCW object 
+Remove sectors labeled by "Waste Treatment Commodities" and "Waste Treatment Industries", 
+which are NOT specified by BEASectorsAsTreatmentSectors, from the spec object
+}
+\description{
+Add sectors specified by BEASectorsAsTreatmentSectors to the spec object
+}
diff --git a/man/adjustITAwithWIOSectors.Rd b/man/adjustITAwithWIOSectors.Rd
new file mode 100644
index 00000000..440933e3
--- /dev/null
+++ b/man/adjustITAwithWIOSectors.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{adjustITAwithWIOSectors}
+\alias{adjustITAwithWIOSectors}
+\title{Adjust InternationalTradeAdjustment to the correct dimensions based on WIO sectors}
+\usage{
+adjustITAwithWIOSectors(model, WIO)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{WIO}{A list with WIO specifications and data}
+}
+\value{
+A model object with a modified international trade adjustment object based on WIO sectors
+}
+\description{
+Adjust InternationalTradeAdjustment to the correct dimensions based on WIO sectors
+}
diff --git a/man/adjustMarginswithWIOSectors.Rd b/man/adjustMarginswithWIOSectors.Rd
new file mode 100644
index 00000000..3d5a0d0d
--- /dev/null
+++ b/man/adjustMarginswithWIOSectors.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{adjustMarginswithWIOSectors}
+\alias{adjustMarginswithWIOSectors}
+\title{Adjust Margins to the correct dimensions based on WIO sectors}
+\usage{
+adjustMarginswithWIOSectors(model, WIO)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{WIO}{A list with WIO specifications and data}
+}
+\value{
+A model object with a modified Margins object based on WIO sectors
+}
+\description{
+Adjust Margins to the correct dimensions based on WIO sectors
+}
diff --git a/man/adjustMultiYearObjectsForMUIO.Rd b/man/adjustMultiYearObjectsForMUIO.Rd
new file mode 100644
index 00000000..043069af
--- /dev/null
+++ b/man/adjustMultiYearObjectsForMUIO.Rd
@@ -0,0 +1,31 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/MUIOFunctions.R
+\name{adjustMultiYearObjectsForMUIO}
+\alias{adjustMultiYearObjectsForMUIO}
+\title{Adjust MultiYearObjects in MUIO models such that they have the same dimensions as the other model objects}
+\usage{
+adjustMultiYearObjectsForMUIO(
+  model,
+  physComIndeces,
+  physIndIndeces,
+  econComIndeces,
+  econIndIndeces
+)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{physComIndeces}{Indeces that specify the location of the physical MUIO commodities in the commodity lists}
+
+\item{physIndIndeces}{Indeces that specify the location of the physical MUIO industries in the industry lists}
+
+\item{econComIndeces}{Indeces that specify the location of the economic MUIO commodities (i.e., the "Other" sectors, X in code) in the commodity lists}
+
+\item{econIndIndeces}{Indeces that specify the location of the economic MUIO industries (i.e., the "Other" sectors, X in code) in the industry lists}
+}
+\value{
+A model with the multiyear objects adjusted for the MUIO industries/commodities.
+}
+\description{
+Adjust MultiYearObjects in MUIO models such that they have the same dimensions as the other model objects
+}
diff --git a/man/adjustMultiYearObjectsForWIO.Rd b/man/adjustMultiYearObjectsForWIO.Rd
new file mode 100644
index 00000000..a1253d96
--- /dev/null
+++ b/man/adjustMultiYearObjectsForWIO.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{adjustMultiYearObjectsForWIO}
+\alias{adjustMultiYearObjectsForWIO}
+\title{Adjust MultiYearObjects in WIO models such that they have the same dimensions as the other model objects}
+\usage{
+adjustMultiYearObjectsForWIO(model, WIO)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{WIO}{A dataframe with WIO specifications}
+}
+\value{
+spec A dataframe with the specified sectors added to the spec$NAICSSetorCW object
+}
+\description{
+Adjust MultiYearObjects in WIO models such that they have the same dimensions as the other model objects
+}
diff --git a/man/assembleWIOModel.Rd b/man/assembleWIOModel.Rd
new file mode 100644
index 00000000..899fd36a
--- /dev/null
+++ b/man/assembleWIOModel.Rd
@@ -0,0 +1,17 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{assembleWIOModel}
+\alias{assembleWIOModel}
+\title{Build a WIO-style model by including data read from wiospecs folder}
+\usage{
+assembleWIOModel(model)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+}
+\value{
+A model with the UseTransactions matrix modified with WIO specs.
+}
+\description{
+Build a WIO-style model by including data read from wiospecs folder
+}
diff --git a/man/calculateTotalImpactbyTier1Purchases.Rd b/man/calculateTotalImpactbyTier1Purchases.Rd
index 78f8a157..75d09960 100644
--- a/man/calculateTotalImpactbyTier1Purchases.Rd
+++ b/man/calculateTotalImpactbyTier1Purchases.Rd
@@ -2,22 +2,25 @@
 % Please edit documentation in R/CalculationFunctions.R
 \name{calculateTotalImpactbyTier1Purchases}
 \alias{calculateTotalImpactbyTier1Purchases}
-\title{Calculate sector x sector total impacts (single indicator) for Tier 1 purchases
-Multiply each row of sector x sector A matrix by scalar elements of an
-indicator (single) x sector array from N}
+\title{Calculate sector x sector total impacts (single indicator or elementary flow) 
+for Tier 1 purchases. Multiply each row of the sector by sector A matrix by 
+the scalar elements of a single-impact by sector array (indicator: N, flow: M)}
 \usage{
-calculateTotalImpactbyTier1Purchases(model, indicator)
+calculateTotalImpactbyTier1Purchases(model, impact, opt_impact = "indicator")
 }
 \arguments{
 \item{model}{A complete EEIO model: a list with USEEIO model components and attributes}
 
-\item{indicator}{str, index of a model indicator, e.g. "Greenhouse Gases".}
+\item{impact}{str, a model indicator (e.g., "Greenhouse Gases") row index of N, 
+or elementary flow (e.g., "Methane/emission/air/kg") index of M}
+
+\item{opt_impact}{str {'indicator', 'elemflow'}, string code to specify impact type}
 }
 \value{
-A sector x sector, impact-per-tier-1-purchase matrix.
+A sector by sector, impact-per-tier-1-purchase matrix.
 }
 \description{
-Calculate sector x sector total impacts (single indicator) for Tier 1 purchases
-Multiply each row of sector x sector A matrix by scalar elements of an
-indicator (single) x sector array from N
+Calculate sector x sector total impacts (single indicator or elementary flow) 
+for Tier 1 purchases. Multiply each row of the sector by sector A matrix by 
+the scalar elements of a single-impact by sector array (indicator: N, flow: M)
 }
diff --git a/man/calculateWIOOutputs.Rd b/man/calculateWIOOutputs.Rd
new file mode 100644
index 00000000..7b392229
--- /dev/null
+++ b/man/calculateWIOOutputs.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{calculateWIOOutputs}
+\alias{calculateWIOOutputs}
+\title{Calculate the total industry and commodity outputs for the expanded WIO tables}
+\usage{
+calculateWIOOutputs(model, WIO)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{WIO}{A list with WIO specifications and data}
+}
+\value{
+A model object which contain the model$Commodity or model$Industry objects with WIO sectors
+}
+\description{
+Calculate the total industry and commodity outputs for the expanded WIO tables
+}
diff --git a/man/checkWIOBalance.Rd b/man/checkWIOBalance.Rd
new file mode 100644
index 00000000..c3efb032
--- /dev/null
+++ b/man/checkWIOBalance.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{checkWIOBalance}
+\alias{checkWIOBalance}
+\title{Check balance of WIO waste and recycling sectors}
+\usage{
+checkWIOBalance(model, sectorType = "Waste")
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{sectorType}{A string that indicates to compare the balance of waste or recycling generation and treatment sectors.}
+}
+\value{
+A model with the UseTransactions matrix modified with WIO specs.
+}
+\description{
+Check balance of WIO waste and recycling sectors
+}
diff --git a/man/convertSectorsToPhysical.Rd b/man/convertSectorsToPhysical.Rd
new file mode 100644
index 00000000..44e5c5d5
--- /dev/null
+++ b/man/convertSectorsToPhysical.Rd
@@ -0,0 +1,20 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/MUIOFunctions.R
+\name{convertSectorsToPhysical}
+\alias{convertSectorsToPhysical}
+\title{Convert MUIO sectors to physical units}
+\usage{
+convertSectorsToPhysical(model, configpaths = NULL)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{configpaths}{str vector, paths (including file name) of configuration file(s).
+If NULL, built-in config files are used.}
+}
+\value{
+A model with the specified MUIO specs.
+}
+\description{
+Convert MUIO sectors to physical units
+}
diff --git a/man/disaggregateSetup.Rd b/man/disaggregateSetup.Rd
index 55b624b2..94427982 100644
--- a/man/disaggregateSetup.Rd
+++ b/man/disaggregateSetup.Rd
@@ -4,12 +4,14 @@
 \alias{disaggregateSetup}
 \title{Setup the configuration specs based on the input files}
 \usage{
-disaggregateSetup(model, configpaths = NULL)
+disaggregateSetup(model, configpaths = NULL, setupType = "Disaggregation")
 }
 \arguments{
 \item{model}{An EEIO model object with model specs and IO tables loaded}
 
-\item{configpaths}{str vector, paths (including file name) of disagg configuration file(s).
+\item{configpaths}{str vector, paths (including file name) of disagg configuration file(s).}
+
+\item{setupType}{String that indicates whether this function is called to setup Disaggregation or WIO specs
 If NULL, built-in config files are used.}
 }
 \value{
diff --git a/man/disaggregateTotalToDirectAndTier1.Rd b/man/disaggregateTotalToDirectAndTier1.Rd
index 1a726a28..80983dbc 100644
--- a/man/disaggregateTotalToDirectAndTier1.Rd
+++ b/man/disaggregateTotalToDirectAndTier1.Rd
@@ -2,22 +2,27 @@
 % Please edit documentation in R/CalculationFunctions.R
 \name{disaggregateTotalToDirectAndTier1}
 \alias{disaggregateTotalToDirectAndTier1}
-\title{For a given indicator, disaggregate total impacts per purchase (N) into 
-direct impacts (D) and upstream, Tier 1 purchase impacts. Return a long format
-dataframe of exchanges, with sector names mapped to sector codes.}
+\title{For a given impact, provided via indicator or elementary flow label, 
+disaggregate the total impacts per purchase (indicator: N, flow: M) into 
+direct impacts (indicator: D, flow: B) and upstream, Tier 1 purchase impacts. 
+Return a long-format df of exchanges, with sector names mapped to sector codes.}
 \usage{
-disaggregateTotalToDirectAndTier1(model, indicator)
+disaggregateTotalToDirectAndTier1(model, impact, opt_impact = "indicator")
 }
 \arguments{
 \item{model}{A complete EEIO model: a list with USEEIO model components and attributes}
 
-\item{indicator}{str, index of a model indicator, e.g. "Greenhouse Gases".}
+\item{impact}{str, a model indicator (e.g., "Greenhouse Gases") row index of N, 
+or elementary flow (e.g., "Methane/emission/air/kg") index of M}
+
+\item{opt_impact}{str {'indicator', 'elemflow'}, string code to specify impact type}
 }
 \value{
 A data frame of direct and per-tier-1-purchase sector impacts
 }
 \description{
-For a given indicator, disaggregate total impacts per purchase (N) into 
-direct impacts (D) and upstream, Tier 1 purchase impacts. Return a long format
-dataframe of exchanges, with sector names mapped to sector codes.
+For a given impact, provided via indicator or elementary flow label, 
+disaggregate the total impacts per purchase (indicator: N, flow: M) into 
+direct impacts (indicator: D, flow: B) and upstream, Tier 1 purchase impacts. 
+Return a long-format df of exchanges, with sector names mapped to sector codes.
 }
diff --git a/man/downloadNAICS2to6DigitsFile.Rd b/man/downloadNAICS2to6DigitsFile.Rd
new file mode 100644
index 00000000..50c2d801
--- /dev/null
+++ b/man/downloadNAICS2to6DigitsFile.Rd
@@ -0,0 +1,17 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/CrosswalkFunctions.R
+\name{downloadNAICS2to6DigitsFile}
+\alias{downloadNAICS2to6DigitsFile}
+\title{Download NAICS file for 2-6 digit NAICS codes if not present.}
+\usage{
+downloadNAICS2to6DigitsFile(year)
+}
+\arguments{
+\item{year}{int, 2017, 2012, or 2007 accepted.}
+}
+\value{
+FileName str
+}
+\description{
+Download NAICS file for 2-6 digit NAICS codes if not present.
+}
diff --git a/man/flowmapping.Rd b/man/flowmapping.Rd
index 9c22b928..a6f4d13e 100644
--- a/man/flowmapping.Rd
+++ b/man/flowmapping.Rd
@@ -6,7 +6,7 @@
 \title{Functions to map elementary or waste flows in satellite tables drawing on an internal mapping file
 Import flow mapping file.}
 \format{
-An object of class \code{data.frame} with 615 rows and 28 columns.
+An object of class \code{data.frame} with 618 rows and 28 columns.
 }
 \usage{
 flowmapping
diff --git a/man/getFlowbySector.Rd b/man/getFlowbySector.Rd
new file mode 100644
index 00000000..64040796
--- /dev/null
+++ b/man/getFlowbySector.Rd
@@ -0,0 +1,17 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/FlowsaFunctions.R
+\name{getFlowbySector}
+\alias{getFlowbySector}
+\title{Load flowsa's FlowBySector df}
+\usage{
+getFlowbySector(filepath)
+}
+\arguments{
+\item{filepath, }{a filepath to local parquet file}
+}
+\value{
+A data frame for flowsa data in sector by region totals format
+}
+\description{
+Load flowsa's FlowBySector df
+}
diff --git a/man/getMUIOSectors.Rd b/man/getMUIOSectors.Rd
new file mode 100644
index 00000000..750936cf
--- /dev/null
+++ b/man/getMUIOSectors.Rd
@@ -0,0 +1,20 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/MUIOFunctions.R
+\name{getMUIOSectors}
+\alias{getMUIOSectors}
+\title{Obtain specs that indicate which sectors need to}
+\usage{
+getMUIOSectors(model, configpaths = NULL)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{configpaths}{str vector, paths (including file name) of configuration file(s).
+If NULL, built-in config files are used.}
+}
+\value{
+A model with the specified MUIO specs.
+}
+\description{
+Obtain specs that indicate which sectors need to
+}
diff --git a/man/getModelCrosswalk.Rd b/man/getModelCrosswalk.Rd
new file mode 100644
index 00000000..9c629813
--- /dev/null
+++ b/man/getModelCrosswalk.Rd
@@ -0,0 +1,17 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/InitializeModel.R
+\name{getModelCrosswalk}
+\alias{getModelCrosswalk}
+\title{Get model crosswalk based on BaseIOSchema and BaseIOLevel}
+\usage{
+getModelCrosswalk(model)
+}
+\arguments{
+\item{model}{EEIO model with specs assigned}
+}
+\value{
+crosswalk as dataframe
+}
+\description{
+Get model crosswalk based on BaseIOSchema and BaseIOLevel
+}
diff --git a/man/getNAICS2to6Digits.Rd b/man/getNAICS2to6Digits.Rd
index 90470a5d..fd037e96 100644
--- a/man/getNAICS2to6Digits.Rd
+++ b/man/getNAICS2to6Digits.Rd
@@ -7,7 +7,7 @@
 getNAICS2to6Digits(year)
 }
 \arguments{
-\item{year}{int, 2012 or 2007 accepted.}
+\item{year}{int, 2017, 2012 or 2007 accepted.}
 }
 \value{
 data frame with columns NAICS_2, NAICS_3, NAICS_4, NAICS_5, NAICS_6.
diff --git a/man/getNAICS2to6DigitsCodeName.Rd b/man/getNAICS2to6DigitsCodeName.Rd
index 57ffde33..87decc1b 100644
--- a/man/getNAICS2to6DigitsCodeName.Rd
+++ b/man/getNAICS2to6DigitsCodeName.Rd
@@ -7,7 +7,7 @@
 getNAICS2to6DigitsCodeName(year)
 }
 \arguments{
-\item{year}{int. 2012 or 2007 accepted.}
+\item{year}{int. 2017, 2012, or 2007 accepted.}
 }
 \value{
 dataframe with columns NAICS_year_Code and NAICS_year_Name.
diff --git a/man/getSchemaCode.Rd b/man/getSchemaCode.Rd
new file mode 100644
index 00000000..2f6de7d1
--- /dev/null
+++ b/man/getSchemaCode.Rd
@@ -0,0 +1,17 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/UtilityFunctions.R
+\name{getSchemaCode}
+\alias{getSchemaCode}
+\title{Return the schema subscript for accessing useeior objects}
+\usage{
+getSchemaCode(specs)
+}
+\arguments{
+\item{specs}{list of model specs must include BaseIOSchema}
+}
+\value{
+schema, str in form "YYsch" or NULL for 2012
+}
+\description{
+Return the schema subscript for accessing useeior objects
+}
diff --git a/man/getWIOFiles.Rd b/man/getWIOFiles.Rd
new file mode 100644
index 00000000..42380701
--- /dev/null
+++ b/man/getWIOFiles.Rd
@@ -0,0 +1,24 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{getWIOFiles}
+\alias{getWIOFiles}
+\title{Setup the WIO specs based on the input files. 
+This function is essentially a wrapper for disaggregateSetup() function, but included 
+for clarifying the different code flows between the two model types.}
+\usage{
+getWIOFiles(model, configpaths = NULL)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{configpaths}{str vector, paths (including file name) of disagg configuration file(s).
+If NULL, built-in config files are used.}
+}
+\value{
+A model object with the correct WIO specs.
+}
+\description{
+Setup the WIO specs based on the input files. 
+This function is essentially a wrapper for disaggregateSetup() function, but included 
+for clarifying the different code flows between the two model types.
+}
diff --git a/man/getWIOSpecs.Rd b/man/getWIOSpecs.Rd
new file mode 100644
index 00000000..ee6b63d3
--- /dev/null
+++ b/man/getWIOSpecs.Rd
@@ -0,0 +1,20 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{getWIOSpecs}
+\alias{getWIOSpecs}
+\title{Obtain WIO specs from input files}
+\usage{
+getWIOSpecs(model, configpaths = NULL)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{configpaths}{str vector, paths (including file name) of configuration file(s).
+If NULL, built-in config files are used.}
+}
+\value{
+A model with the specified WIO specs.
+}
+\description{
+Obtain WIO specs from input files
+}
diff --git a/man/includeFullUseWIO.Rd b/man/includeFullUseWIO.Rd
new file mode 100644
index 00000000..4162e91e
--- /dev/null
+++ b/man/includeFullUseWIO.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{includeFullUseWIO}
+\alias{includeFullUseWIO}
+\title{Include the WIO elements of the Use table in the correct configuration}
+\usage{
+includeFullUseWIO(model, WIO)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{WIO}{A list with WIO specifications and data}
+}
+\value{
+A model with the UseTransactions matrix modified with WIO specs.
+}
+\description{
+Include the WIO elements of the Use table in the correct configuration
+}
diff --git a/man/includeMakeWIO.Rd b/man/includeMakeWIO.Rd
new file mode 100644
index 00000000..c837db8f
--- /dev/null
+++ b/man/includeMakeWIO.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{includeMakeWIO}
+\alias{includeMakeWIO}
+\title{Include the WIO elements of the Make table in the correct configuration}
+\usage{
+includeMakeWIO(model, WIO)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{WIO}{A list with WIO specifications and data}
+}
+\value{
+A model with the MakeTransactions matrix modified with WIO specs.
+}
+\description{
+Include the WIO elements of the Make table in the correct configuration
+}
diff --git a/man/includeWIOSectorDFs.Rd b/man/includeWIOSectorDFs.Rd
new file mode 100644
index 00000000..e7b74860
--- /dev/null
+++ b/man/includeWIOSectorDFs.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{includeWIOSectorDFs}
+\alias{includeWIOSectorDFs}
+\title{Include the WIO elements in the model$Commodity and model$Industry objects}
+\usage{
+includeWIOSectorDFs(model, WIO)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{WIO}{A list with WIO specifications and data}
+}
+\value{
+A model object which contain the model$Commodity and model$Industry objects with WIO sectors
+}
+\description{
+Include the WIO elements in the model$Commodity and model$Industry objects
+}
diff --git a/man/initializeWIOObjects.Rd b/man/initializeWIOObjects.Rd
new file mode 100644
index 00000000..a1158f92
--- /dev/null
+++ b/man/initializeWIOObjects.Rd
@@ -0,0 +1,17 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{initializeWIOObjects}
+\alias{initializeWIOObjects}
+\title{Initialize all the WIO model objects simultaneously.}
+\usage{
+initializeWIOObjects(model)
+}
+\arguments{
+\item{model}{An EEIO model object with model sepcs and IO tables loaded}
+}
+\value{
+A model object with the WIO lists initialized but empty
+}
+\description{
+Initialize all the WIO model objects simultaneously.
+}
diff --git a/man/loadMasterCrosswalk.Rd b/man/loadMasterCrosswalk.Rd
deleted file mode 100644
index 9e8a241c..00000000
--- a/man/loadMasterCrosswalk.Rd
+++ /dev/null
@@ -1,14 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/CrosswalkFunctions.R
-\name{loadMasterCrosswalk}
-\alias{loadMasterCrosswalk}
-\title{Function to externalize the BEA to NAICS crosswalk}
-\usage{
-loadMasterCrosswalk()
-}
-\value{
-A crosswalk linking 2007 and 2012 NAICS codes to 2012 Sector, Summary, and Detail BEA codes
-}
-\description{
-Function to externalize the BEA to NAICS crosswalk
-}
diff --git a/man/prepareFlowBySectorCollapsed.Rd b/man/prepareFlowBySectorCollapsed.Rd
new file mode 100644
index 00000000..6665c056
--- /dev/null
+++ b/man/prepareFlowBySectorCollapsed.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/FlowsaFunctions.R
+\name{prepareFlowBySectorCollapsed}
+\alias{prepareFlowBySectorCollapsed}
+\title{Adjusts flowbysector data from flowsa}
+\usage{
+prepareFlowBySectorCollapsed(fbsc, satellite = TRUE)
+}
+\arguments{
+\item{fbsc}{A FlowBySector collapsed df from flowsa}
+
+\item{satellite}{bool, set to TRUE when used for env satellite tables}
+}
+\value{
+A data frame of sector by region totals
+}
+\description{
+Adjusts flowbysector data from flowsa
+}
diff --git a/man/prepareFlowBySectorCollapsedforSatellite.Rd b/man/prepareFlowBySectorCollapsedforSatellite.Rd
deleted file mode 100644
index 19df566b..00000000
--- a/man/prepareFlowBySectorCollapsedforSatellite.Rd
+++ /dev/null
@@ -1,21 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/FlowsaFunctions.R
-\name{prepareFlowBySectorCollapsedforSatellite}
-\alias{prepareFlowBySectorCollapsedforSatellite}
-\title{Adjusts flowbysector data from flowsa
-Currently only works for national totals (location="00000") and
-assumes that sector schema is NAICS_2012_Code}
-\usage{
-prepareFlowBySectorCollapsedforSatellite(fbsc)
-}
-\arguments{
-\item{fbsc}{A FlowBySector collapsed df from flowsa}
-}
-\value{
-A data frame of sector by region totals
-}
-\description{
-Adjusts flowbysector data from flowsa
-Currently only works for national totals (location="00000") and
-assumes that sector schema is NAICS_2012_Code
-}
diff --git a/man/prepareLCIAmethodforIndicators.Rd b/man/prepareLCIAmethodforIndicators.Rd
index 4313e7d5..99733521 100644
--- a/man/prepareLCIAmethodforIndicators.Rd
+++ b/man/prepareLCIAmethodforIndicators.Rd
@@ -3,7 +3,7 @@
 \name{prepareLCIAmethodforIndicators}
 \alias{prepareLCIAmethodforIndicators}
 \title{Prepares and reformats LCIAmethod data from LCIAformatter for use
-modeled after prepareFlowBySectorCollapsedforSatellite}
+modeled after prepareFlowBySectorCollapsed}
 \usage{
 prepareLCIAmethodforIndicators(lciamethod)
 }
@@ -15,5 +15,5 @@ A LCIAmethod data frame formatted for indicators
 }
 \description{
 Prepares and reformats LCIAmethod data from LCIAformatter for use
-modeled after prepareFlowBySectorCollapsedforSatellite
+modeled after prepareFlowBySectorCollapsed
 }
diff --git a/man/prepareWIODFfromFBS.Rd b/man/prepareWIODFfromFBS.Rd
new file mode 100644
index 00000000..633b65d9
--- /dev/null
+++ b/man/prepareWIODFfromFBS.Rd
@@ -0,0 +1,21 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{prepareWIODFfromFBS}
+\alias{prepareWIODFfromFBS}
+\title{Prepare make and use input files from FlowBySector file.}
+\usage{
+prepareWIODFfromFBS(fbs, spec, model)
+}
+\arguments{
+\item{fbs}{FlowBySector dataframe.}
+
+\item{spec}{WIO model spec}
+
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+}
+\value{
+model with list of two dataframes: UseTableDF and MakeTableDF
+}
+\description{
+Prepare make and use input files from FlowBySector file.
+}
diff --git a/man/removeModelSectors.Rd b/man/removeModelSectors.Rd
new file mode 100644
index 00000000..2562f99a
--- /dev/null
+++ b/man/removeModelSectors.Rd
@@ -0,0 +1,21 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/UtilityFunctions.R
+\name{removeModelSectors}
+\alias{removeModelSectors}
+\title{Remove sectors from the model objects according to the provided indexes}
+\usage{
+removeModelSectors(model, comIndexes, indIndexes)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{comIndexes}{A list containing the indexes of the commodities in the model}
+
+\item{indIndexes}{A list containing the indexes of the industries in the model}
+}
+\value{
+A model with the specified MUIO sectors in physical units and rearranged sector orders (optional)
+}
+\description{
+Remove sectors from the model objects according to the provided indexes
+}
diff --git a/man/removeSectorsFromWIOCW.Rd b/man/removeSectorsFromWIOCW.Rd
new file mode 100644
index 00000000..19194f1c
--- /dev/null
+++ b/man/removeSectorsFromWIOCW.Rd
@@ -0,0 +1,21 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{removeSectorsFromWIOCW}
+\alias{removeSectorsFromWIOCW}
+\title{Remove sectors labeled by "Waste Treatment Commodities" and "Waste Treatment Industries", 
+which are NOT specified by BEASectorsAsTreatmentSectors, from the spec object}
+\usage{
+removeSectorsFromWIOCW(model, spec)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{spec}{A dataframe with WIO specifications}
+}
+\value{
+spec A dataframe with the specified sectors added to the spec$NAICSSetorCW object
+}
+\description{
+Remove sectors labeled by "Waste Treatment Commodities" and "Waste Treatment Industries", 
+which are NOT specified by BEASectorsAsTreatmentSectors, from the spec object
+}
diff --git a/man/reorderModelSectors.Rd b/man/reorderModelSectors.Rd
new file mode 100644
index 00000000..8cd962ef
--- /dev/null
+++ b/man/reorderModelSectors.Rd
@@ -0,0 +1,21 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/UtilityFunctions.R
+\name{reorderModelSectors}
+\alias{reorderModelSectors}
+\title{Reorder sectors in the model objects according to the provided order.}
+\usage{
+reorderModelSectors(model, comOrder, indOrder)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{comOrder}{A list containing the order of the commodities in the model}
+
+\item{indOrder}{A list containing the order of the industries in the model}
+}
+\value{
+A model with the specified MUIO sectors in physical units and rearranged sector orders (optional)
+}
+\description{
+Reorder sectors in the model objects according to the provided order.
+}
diff --git a/man/reorderPhysicalSectors.Rd b/man/reorderPhysicalSectors.Rd
new file mode 100644
index 00000000..3dfdabb9
--- /dev/null
+++ b/man/reorderPhysicalSectors.Rd
@@ -0,0 +1,31 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/MUIOFunctions.R
+\name{reorderPhysicalSectors}
+\alias{reorderPhysicalSectors}
+\title{Reorder physical sectors such that they are in the top left of the Make and Use MUIO tables, as well as reorder all the relevant model objects.}
+\usage{
+reorderPhysicalSectors(
+  model,
+  physComIndeces,
+  physIndIndeces,
+  econComIndeces,
+  econIndIndeces
+)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{physComIndeces}{Indeces that specify the location of the physical MUIO commodities in the commodity lists}
+
+\item{physIndIndeces}{Indeces that specify the location of the physical MUIO industries in the industry lists}
+
+\item{econComIndeces}{Indeces that specify the location of the economic MUIO commodities (i.e., the "Other" sectors, X in code) in the commodity lists}
+
+\item{econIndIndeces}{Indeces that specify the location of the economic MUIO industries (i.e., the "Other" sectors, X in code) in the industry lists}
+}
+\value{
+A model with the specified MUIO sectors in physical units and rearranged sector orders (optional)
+}
+\description{
+Reorder physical sectors such that they are in the top left of the Make and Use MUIO tables, as well as reorder all the relevant model objects.
+}
diff --git a/man/reorderWIOSectors.Rd b/man/reorderWIOSectors.Rd
new file mode 100644
index 00000000..2884001d
--- /dev/null
+++ b/man/reorderWIOSectors.Rd
@@ -0,0 +1,19 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{reorderWIOSectors}
+\alias{reorderWIOSectors}
+\title{Adjust WIO sectors such that they are in the correct order. Should only be needed in
+the case that there is more than 1 WIOSpec.}
+\usage{
+reorderWIOSectors(model)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+}
+\value{
+A model object with the WIO sectors in the correct order
+}
+\description{
+Adjust WIO sectors such that they are in the correct order. Should only be needed in
+the case that there is more than 1 WIOSpec.
+}
diff --git a/man/subsetWIOSectors.Rd b/man/subsetWIOSectors.Rd
new file mode 100644
index 00000000..c17de7e5
--- /dev/null
+++ b/man/subsetWIOSectors.Rd
@@ -0,0 +1,23 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{subsetWIOSectors}
+\alias{subsetWIOSectors}
+\title{Get subset of sectors corresponding to WasteTreatmentIndustries, WasteTreatmentCommodities,
+WasteGentTreatment, WasteGenMass, RecyclingTreatment, or RecyclingMass}
+\usage{
+subsetWIOSectors(model, WIO, WIOSection)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{WIO}{A list with WIO specifications and data}
+
+\item{WIOSection}{A string that indicates which section of the WIO model the sectors belong to}
+}
+\value{
+A model with the model WIO model objects with the correct subset of sectors and format
+}
+\description{
+Get subset of sectors corresponding to WasteTreatmentIndustries, WasteTreatmentCommodities,
+WasteGentTreatment, WasteGenMass, RecyclingTreatment, or RecyclingMass
+}
diff --git a/man/transformBEASectorToDFInput.Rd b/man/transformBEASectorToDFInput.Rd
new file mode 100644
index 00000000..3f67fe5d
--- /dev/null
+++ b/man/transformBEASectorToDFInput.Rd
@@ -0,0 +1,21 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/WIOFunctions.R
+\name{transformBEASectorToDFInput}
+\alias{transformBEASectorToDFInput}
+\title{Take an existing USEEIO sector and transform it into a dataframe formatted as a WIO-style input file}
+\usage{
+transformBEASectorToDFInput(model, spec, vectorToTransform)
+}
+\arguments{
+\item{model}{An EEIO model object with model specs and IO tables loaded}
+
+\item{spec}{A model object contain the WIO specifications}
+
+\item{vectorToTransform}{A string indicating which table and vector to use, e.g., UseRows, MakeCols, etc.}
+}
+\value{
+A model with the UseTransactions matrix modified with WIO specs.
+}
+\description{
+Take an existing USEEIO sector and transform it into a dataframe formatted as a WIO-style input file
+}
diff --git a/tests/README.md b/tests/README.md
new file mode 100644
index 00000000..049f385b
--- /dev/null
+++ b/tests/README.md
@@ -0,0 +1,4 @@
+# README
+
+Model specs included in this folder are designed for testing and/or demonstrating features of useeior and are not intended for use.
+Official models are located in [inst/extdata/modelspecs](../inst/extdata/modelspecs).
diff --git a/inst/extdata/aggspecs/ElectricityAggregationDetail.yml b/tests/aggspecs/ElectricityAggregationDetail.yml
similarity index 100%
rename from inst/extdata/aggspecs/ElectricityAggregationDetail.yml
rename to tests/aggspecs/ElectricityAggregationDetail.yml
diff --git a/inst/extdata/disaggspecs/ElectricityDisaggregationDetail.yml b/tests/disaggspecs/ElectricityDisaggregationDetail.yml
similarity index 100%
rename from inst/extdata/disaggspecs/ElectricityDisaggregationDetail.yml
rename to tests/disaggspecs/ElectricityDisaggregationDetail.yml
diff --git a/inst/extdata/disaggspecs/ElectricityDisaggregationDetail_Make.csv b/tests/disaggspecs/ElectricityDisaggregationDetail_Make.csv
similarity index 100%
rename from inst/extdata/disaggspecs/ElectricityDisaggregationDetail_Make.csv
rename to tests/disaggspecs/ElectricityDisaggregationDetail_Make.csv
diff --git a/inst/extdata/disaggspecs/ElectricityDisaggregationDetail_Use.csv b/tests/disaggspecs/ElectricityDisaggregationDetail_Use.csv
similarity index 100%
rename from inst/extdata/disaggspecs/ElectricityDisaggregationDetail_Use.csv
rename to tests/disaggspecs/ElectricityDisaggregationDetail_Use.csv
diff --git a/inst/extdata/disaggspecs/ElectricityDisaggregation_Env.csv b/tests/disaggspecs/ElectricityDisaggregation_Env.csv
similarity index 100%
rename from inst/extdata/disaggspecs/ElectricityDisaggregation_Env.csv
rename to tests/disaggspecs/ElectricityDisaggregation_Env.csv
diff --git a/inst/extdata/disaggspecs/ElectricityDisaggregation_Sectors.csv b/tests/disaggspecs/ElectricityDisaggregation_Sectors.csv
similarity index 100%
rename from inst/extdata/disaggspecs/ElectricityDisaggregation_Sectors.csv
rename to tests/disaggspecs/ElectricityDisaggregation_Sectors.csv
diff --git a/inst/extdata/disaggspecs/WasteDisaggregationSummary.yml b/tests/disaggspecs/WasteDisaggregationSummary.yml
similarity index 100%
rename from inst/extdata/disaggspecs/WasteDisaggregationSummary.yml
rename to tests/disaggspecs/WasteDisaggregationSummary.yml
diff --git a/inst/extdata/disaggspecs/WasteDisaggregationSummary_Make.csv b/tests/disaggspecs/WasteDisaggregationSummary_Make.csv
similarity index 100%
rename from inst/extdata/disaggspecs/WasteDisaggregationSummary_Make.csv
rename to tests/disaggspecs/WasteDisaggregationSummary_Make.csv
diff --git a/inst/extdata/disaggspecs/WasteDisaggregationSummary_Use.csv b/tests/disaggspecs/WasteDisaggregationSummary_Use.csv
similarity index 100%
rename from inst/extdata/disaggspecs/WasteDisaggregationSummary_Use.csv
rename to tests/disaggspecs/WasteDisaggregationSummary_Use.csv
diff --git a/inst/extdata/hybridizationspecs/NGCombustion_env.csv b/tests/hybridizationspecs/NGCombustion_env.csv
similarity index 100%
rename from inst/extdata/hybridizationspecs/NGCombustion_env.csv
rename to tests/hybridizationspecs/NGCombustion_env.csv
diff --git a/inst/extdata/hybridizationspecs/NGCombustion_tech.csv b/tests/hybridizationspecs/NGCombustion_tech.csv
similarity index 100%
rename from inst/extdata/hybridizationspecs/NGCombustion_tech.csv
rename to tests/hybridizationspecs/NGCombustion_tech.csv
diff --git a/inst/extdata/hybridizationspecs/NGCombustion.yml b/tests/hybridizationspecs/NG_Combustion.yml
similarity index 100%
rename from inst/extdata/hybridizationspecs/NGCombustion.yml
rename to tests/hybridizationspecs/NG_Combustion.yml
diff --git a/inst/extdata/modelspecs/GAEEIOv1.0-s-WAT-12.yml b/tests/modelspecs/GAEEIOv1.0-s-WAT-12.yml
similarity index 100%
rename from inst/extdata/modelspecs/GAEEIOv1.0-s-WAT-12.yml
rename to tests/modelspecs/GAEEIOv1.0-s-WAT-12.yml
diff --git a/inst/extdata/modelspecs/USEEIOv2.0-GHG-NGCombustion.yml b/tests/modelspecs/USEEIOv2.0-GHG-NGCombustion.yml
similarity index 98%
rename from inst/extdata/modelspecs/USEEIOv2.0-GHG-NGCombustion.yml
rename to tests/modelspecs/USEEIOv2.0-GHG-NGCombustion.yml
index 43aaa670..0eaf4b8b 100644
--- a/inst/extdata/modelspecs/USEEIOv2.0-GHG-NGCombustion.yml
+++ b/tests/modelspecs/USEEIOv2.0-GHG-NGCombustion.yml
@@ -9,7 +9,7 @@ BasePriceType: "PRO" #producer
 BasewithRedefinitions: FALSE
 CommodityorIndustryType: "Commodity"
 ScrapIncluded: FALSE
-HybridizationSpecs: "NGCombustion"
+HybridizationSpecs: "NG_Combustion"
 
 SatelliteTable:
   GHG:
diff --git a/inst/extdata/modelspecs/USEEIOv2.0-i-GHG.yml b/tests/modelspecs/USEEIOv2.0-GHG-NGMUIO.yml
similarity index 85%
rename from inst/extdata/modelspecs/USEEIOv2.0-i-GHG.yml
rename to tests/modelspecs/USEEIOv2.0-GHG-NGMUIO.yml
index 03078881..3e4b8ecb 100644
--- a/inst/extdata/modelspecs/USEEIOv2.0-i-GHG.yml
+++ b/tests/modelspecs/USEEIOv2.0-GHG-NGMUIO.yml
@@ -1,22 +1,25 @@
-Model: "USEEIOv2.0-i-GHG" # 2012 Detail, Industry
+Model: "USEEIOv2.0-GHG-NGMUIO" # Based on USEEIOv2.0-GHG-NGCombustion.yml testfile
 BaseIOSchema: 2012
 BaseIOLevel: "Detail"
 IOYear: 2012 # Year for IO data
 ModelRegionAcronyms: ["US"]
-ModelType: "EEIO"
+ModelType: "MUIO" # Mixed-unit IO model
 IODataSource: "BEA"
 BasePriceType: "PRO" #producer
 BasewithRedefinitions: FALSE
-CommodityorIndustryType: "Industry"
+CommodityorIndustryType: "Commodity"
 ScrapIncluded: FALSE
 DisaggregationSpecs: null
+HybridizationSpecs: null
+WIOSpecs: null
+MUIOSpecs: "NGMUIO"
 
 SatelliteTable:
   GHG:
     FullName: "Greenhouse Gases"
     Abbreviation: "GHG"
     StaticSource: TRUE
-    StaticFile: "useeior/NGHGIAM_GHG_TotalsBySector.csv"
+    StaticFile: "useeior/NGHGIAM_GHG_TotalsBySector_wUUIDs.csv"
     FileLocation: "DataCommons"
     DataYears: [2016]
     Locations: ["US"]
@@ -57,3 +60,5 @@ Indicators:
 DemandVectors:
     DefaultDemand: "DefaultDemandVectors" # Name of default demand vectors yml file
 # Additional demand vectors beyond useeior defaults
+
+
diff --git a/inst/extdata/modelspecs/USEEIOv2.0-GHG.yml b/tests/modelspecs/USEEIOv2.0-GHG.yml
similarity index 100%
rename from inst/extdata/modelspecs/USEEIOv2.0-GHG.yml
rename to tests/modelspecs/USEEIOv2.0-GHG.yml
diff --git a/inst/extdata/modelspecs/USEEIOv2.0-s-GHG.yml b/tests/modelspecs/USEEIOv2.0-s-GHG.yml
similarity index 100%
rename from inst/extdata/modelspecs/USEEIOv2.0-s-GHG.yml
rename to tests/modelspecs/USEEIOv2.0-s-GHG.yml
diff --git a/inst/extdata/modelspecs/USEEIOv2.0-79-GHG.yml b/tests/modelspecs/USEEIOv3.0-GHG.yml
similarity index 72%
rename from inst/extdata/modelspecs/USEEIOv2.0-79-GHG.yml
rename to tests/modelspecs/USEEIOv3.0-GHG.yml
index 57a35cbf..ab921ab9 100644
--- a/inst/extdata/modelspecs/USEEIOv2.0-79-GHG.yml
+++ b/tests/modelspecs/USEEIOv3.0-GHG.yml
@@ -1,7 +1,7 @@
-Model: "USEEIOv2.0-79-GHG"
-BaseIOSchema: 2012
-BaseIOLevel: "Summary"
-IOYear: 2012 # Year for IO data
+Model: "USEEIOv3.0-GHG" # 2017 Detail, Commodity
+BaseIOSchema: 2017
+BaseIOLevel: "Detail"
+IOYear: 2017 # Year for IO data
 ModelRegionAcronyms: ["US"]
 ModelType: "EEIO"
 IODataSource: "BEA"
@@ -9,27 +9,29 @@ BasePriceType: "PRO" #producer
 BasewithRedefinitions: FALSE
 CommodityorIndustryType: "Commodity"
 ScrapIncluded: FALSE
-DisaggregationSpecs: "WasteDisaggregationSummary"
+DisaggregationSpecs: null
 
 SatelliteTable:
   GHG:
     FullName: "Greenhouse Gases"
     Abbreviation: "GHG"
     StaticSource: TRUE
-    StaticFile: "useeior/NGHGIAM_GHG_TotalsBySector.csv"
+    StaticFile: "flowsa/FlowBySector/GHG_national_2020_m2_v2.0.1_1d3a514.parquet"
     FileLocation: "DataCommons"
-    DataYears: [2016]
+    DataYears: [2020]
     Locations: ["US"]
-    SectorListSource: "BEA" # or, NAICS
+    SectorListSource: "NAICS"
     SectorListYear: 2012
-    SectorListLevel: "Detail"
-    OriginalFlowSource: "FEDEFLv1.0.6"
+    SectorListLevel: "6"
+    OriginalFlowSource: "FEDEFLv1.1.0"
+    ScriptFunctionCall: "getFlowbySectorCollapsed" #function to call for script
+    ScriptFunctionParameters: null
     DataSources:
-      USEPA_GHG_2018:
+      USEPA_GHG_2022:
         Title: "GHG Inventory"
         Author: "USEPA"
-        DataYear: 2016
-        URL: "https://www.epa.gov/ghgemissions/inventory-us-greenhouse-gas-emissions-and-sinks-1990-2016"
+        DataYear: 2020
+        URL: "https://www.epa.gov/ghgemissions/inventory-us-greenhouse-gas-emissions-and-sinks-1990-2020"
         Primary: TRUE
 
 Indicators:
diff --git a/tests/muiospecs/NGMUIO.yml b/tests/muiospecs/NGMUIO.yml
new file mode 100644
index 00000000..0d81df9d
--- /dev/null
+++ b/tests/muiospecs/NGMUIO.yml
@@ -0,0 +1,4 @@
+MUIO:
+  221200/US:
+    OriginalSectorCode: "221200/US"
+    SectorFile: NGMUIO_Sectors.csv
diff --git a/tests/muiospecs/NGMUIO_Sectors.csv b/tests/muiospecs/NGMUIO_Sectors.csv
new file mode 100644
index 00000000..724fa59a
--- /dev/null
+++ b/tests/muiospecs/NGMUIO_Sectors.csv
@@ -0,0 +1,2 @@
+SectorType,Tag,NAICS_2012_Code,USEEIO_Code,USEEIO_Name,Category,Subcategory,Description,Price,Unit
+MUIO,NG,221200,221200/US,Natural gas,22: Utilities,2212: Natural Gas Distribution,"BEA Code & Name is '221200:Natural gas distribution'. This industry comprises: (1) establishments primarily engaged in operating gas distribution systems (e.g., mains, meters); (2) establishments known as gas marketers that buy gas from the well and sell it to a distribution system; (3) establishments known as gas brokers or agents that arrange the sale of gas over gas distribution systems operated by others; and (4) establishments primarily engaged in transmitting and distributing gas to final consumers. Price calculated by diving the 221200 commodity total in USEEIOv2.0 by the eia total NG consumption in the US as reported in the eia website (https://www.eia.gov/dnav/ng/hist/n9140us2A.htm): $94172723023 / 24477425000000",0.00384733,cu ft
diff --git a/tests/test_model_build.R b/tests/test_model_build.R
new file mode 100644
index 00000000..c2ac46c4
--- /dev/null
+++ b/tests/test_model_build.R
@@ -0,0 +1,115 @@
+# test_model_build.R
+
+# devtools::load_all(".")
+# setwd("tests")
+library(useeior)
+# library(unittest, quietly = TRUE)
+if (!interactive()) options(warn=2, error = function() { sink(stderr()) ; traceback(3) ; q(status = 1) })
+
+## USEEIOv2.0.1-411 Detail model with waste disaggregation
+m <- "USEEIOv2.0.1-411"
+model <- buildModel(m)
+printValidationResults(model)
+
+## USEEIOv2.0.1-i-411 Detail, industry model with waste disaggregation
+model <- useeior:::initializeModel(m)
+model$specs$Model <- "USEEIOv2.0.1-i-411"
+model$specs$CommodityorIndustryType <- "Industry"
+model <- useeior:::loadIOData(model)
+model <- useeior:::loadandbuildSatelliteTables(model)
+model <- useeior:::loadandbuildIndicators(model)
+model <- useeior:::loadDemandVectors(model)
+model <- useeior:::constructEEIOMatrices(model)
+printValidationResults(model)
+
+## USEEIOv3.0-GHG Detail, commodity model (2017 Schema)
+m <- "USEEIOv3.0-GHG"
+cfg <- paste0("modelspecs/", m, ".yml")
+model <- buildModel(m, configpaths = file.path(cfg))
+printValidationResults(model)
+
+## USEEIOv3.0-s-GHG Summary, commodity model (2017 Schema)
+model <- useeior:::initializeModel(m, configpaths = file.path(cfg))
+model$specs$Model <- "USEEIOv3.0-s-GHG"
+model$specs$BaseIOLevel <- "Summary"
+model$crosswalk <- useeior:::getModelCrosswalk(model) # reassign for summary model
+model <- useeior:::loadIOData(model)
+model <- useeior:::loadandbuildSatelliteTables(model)
+model <- useeior:::loadandbuildIndicators(model)
+model <- useeior:::loadDemandVectors(model)
+model <- useeior:::constructEEIOMatrices(model)
+printValidationResults(model)
+
+## USEEIOv2 - integrated hybrid
+m <- "USEEIOv2.0-GHG-NGCombustion"
+cfg <- c(paste0("modelspecs/", m, ".yml"),
+         "hybridizationspecs/NG_Combustion.yml",
+         "hybridizationspecs/NGCombustion_env.csv",
+         "hybridizationspecs/NGCombustion_tech.csv"
+         )
+model <- buildModel(m, configpaths = file.path(cfg))
+printValidationResults(model)
+
+## USEEIOv2 - mixed unit hybrid model
+m <- "USEEIOv2.0-GHG-NGMUIO"
+cfg <- c(paste0("modelspecs/", m, ".yml"),
+         "muiospecs/NGMUIO.yml",
+         "muiospecs/NGMUIO_Sectors.csv"
+)
+model <- buildModel(m, configpaths = file.path(cfg))
+printValidationResults(model)
+
+## USEEIOv2.0 Detail, commodity model
+m <- "USEEIOv2.0-GHG"
+cfg <- paste0("modelspecs/", m, ".yml")
+model <- buildModel(m, configpaths = file.path(cfg))
+printValidationResults(model)
+
+## USEEIOv2.0 Detail, industry model
+model <- useeior:::initializeModel(m, configpaths = file.path(cfg))
+model$specs$Model <- "USEEIOv2.0-i-GHG"
+model$specs$CommodityorIndustryType <- "Industry"
+model <- useeior:::loadIOData(model, file.path(cfg))
+model <- useeior:::loadandbuildSatelliteTables(model)
+model <- useeior:::loadandbuildIndicators(model)
+model <- useeior:::loadDemandVectors(model)
+model <- useeior:::constructEEIOMatrices(model)
+printValidationResults(model)
+
+## USEEIOv2.0 Summary, commodity model
+m <- "USEEIOv2.0-s-GHG"
+cfg <- c(paste0("modelspecs/", m, ".yml"),
+         "disaggspecs/WasteDisaggregationSummary.yml",
+         "disaggspecs/WasteDisaggregationSummary_Make.csv",
+         "disaggspecs/WasteDisaggregationSummary_Use.csv"
+         )
+model <- buildModel(m, configpaths = file.path(cfg))
+printValidationResults(model)
+
+## USEEIOv2.0 Summary, industry model
+model <- useeior:::initializeModel(m, configpaths = file.path(cfg))
+model$specs$Model <- "USEEIOv2.0-is-GHG"
+model$specs$CommodityorIndustryType <- "Industry"
+model <- useeior:::loadIOData(model, file.path(cfg))
+model <- useeior:::loadandbuildSatelliteTables(model)
+model <- useeior:::loadandbuildIndicators(model)
+model <- useeior:::loadDemandVectors(model)
+model <- useeior:::constructEEIOMatrices(model)
+printValidationResults(model)
+
+## USEEIOv2.0 Summary model with waste disaggregation
+model <- useeior:::initializeModel(m, configpaths = file.path(cfg))
+model$specs$Model <- "USEEIOv2.0-79-GHG"
+model$specs$DisaggregationSpecs <- "WasteDisaggregationSummary"
+model <- useeior:::loadIOData(model, file.path(cfg))
+model <- useeior:::loadandbuildSatelliteTables(model)
+model <- useeior:::loadandbuildIndicators(model)
+model <- useeior:::loadDemandVectors(model)
+model <- useeior:::constructEEIOMatrices(model)
+printValidationResults(model)
+
+## StateEEIOv1.0 Two-region Summary model
+m <- "GAEEIOv1.0-s-WAT-12"
+cfg <- paste0("modelspecs/", m, ".yml")
+model <- buildModel(m, configpaths = file.path(cfg))
+useeior::print2RValidationResults(model)