diff --git a/planetstack/model_policies/model_policy_Network.py b/planetstack/model_policies/model_policy_Network.py
index f48b25a..88c9f1d 100644
--- a/planetstack/model_policies/model_policy_Network.py
+++ b/planetstack/model_policies/model_policy_Network.py
@@ -1,11 +1,11 @@
 from core.models import *
 
 def handle(network):
-	from core.models import SliceDeployments,NetworkDeployments
+	from core.models import SliceDeployment,NetworkDeployments
 	from collections import defaultdict
 	# network deployments are not visible to users. We must ensure
 	# networks are deployed at all deploymets available to their slices.
-	slice_deployments = SliceDeployments.objects.all()
+	slice_deployments = SliceDeployment.objects.all()
 	slice_deploy_lookup = defaultdict(list)
 	for slice_deployment in slice_deployments:
 		slice_deploy_lookup[slice_deployment.slice].append(slice_deployment.deployment)
diff --git a/planetstack/model_policies/model_policy_Slice.py b/planetstack/model_policies/model_policy_Slice.py
index cf73aa0..7523e3e 100644
--- a/planetstack/model_policies/model_policy_Slice.py
+++ b/planetstack/model_policies/model_policy_Slice.py
@@ -1,13 +1,13 @@
 
 def handle(slice):
-	from core.models import SiteDeployments,SliceDeployments,Deployment,Network,NetworkSlice,NetworkTemplate
+	from core.models import SiteDeployment,SliceDeployment,Deployment,Network,NetworkSlice,NetworkTemplate
 	from collections import defaultdict
-	site_deployments = SiteDeployments.objects.all()
+	site_deployments = SiteDeployment.objects.all()
 	site_deploy_lookup = defaultdict(list)
 	for site_deployment in site_deployments:
 		site_deploy_lookup[site_deployment.site].append(site_deployment.deployment)
 	
-	slice_deployments = SliceDeployments.objects.all()
+	slice_deployments = SliceDeployment.objects.all()
 	slice_deploy_lookup = defaultdict(list)
 	for slice_deployment in slice_deployments:
 		slice_deploy_lookup[slice_deployment.slice].append(slice_deployment.deployment)
@@ -19,7 +19,7 @@
 	for expected_deployment in expected_deployments:
 		if slice not in slice_deploy_lookup or \
 		   expected_deployment not in slice_deploy_lookup[slice]:
-			sd = SliceDeployments(slice=slice, deployment=expected_deployment)
+			sd = SliceDeployment(slice=slice, deployment=expected_deployment)
 			sd.save()
 
 	# make sure slice has at least 1 public and 1 private networkd
