diff --git a/workspace/R/utils.R b/workspace/R/utils.R
index 8c0d6da739b84cce76d787a0bdc7d7345856ea63..e7727d973be4676a3fa4ade12c5d182f739e5be5 100644
--- a/workspace/R/utils.R
+++ b/workspace/R/utils.R
@@ -27,8 +27,8 @@ fix_headwaters <- function(nhd_rds, out_gpkg, new_atts = NULL,
   ble <- sf::st_zm(sf::st_as_sf(ble))
   nhd <- sf::st_zm(nhd)
   
-  sf::st_geometry(nhd)[!sf::st_is_empty(sf::st_geometry(ble)) & (nhd$StartFlag == 1 | nhd$Divergence == 2)] <- 
-    sf::st_geometry(ble)[!sf::st_is_empty(sf::st_geometry(ble)) & (nhd$StartFlag == 1 | nhd$Divergence == 2)]
+  sf::st_geometry(nhd)[!sf::st_is_empty(sf::st_geometry(ble)) & (nhd$StartFlag == 1)] <- 
+    sf::st_geometry(ble)[!sf::st_is_empty(sf::st_geometry(ble)) & (nhd$StartFlag == 1)]
   
   if(!is.null(new_atts)) {
     new_atts <- data.table::fread(new_atts, 
@@ -109,6 +109,12 @@ fix_headwaters <- function(nhd_rds, out_gpkg, new_atts = NULL,
   
   nhd <- select(nhd, -override_tocomid)
   
+  # remove remnant attributes
+  nhd <- select(nhd, -FromNode, -ToNode, -StartFlag -StreamCalc, -Divergence, -DnMinorHyd)
+  
+  warning("naive duplication!")
+    nhd <- nhd[!duplicated(nhd$COMID), ]
+  
   sf::write_sf(nhd, out_gpkg, "reference_flowlines")
   
   }