diff --git a/src/pairs/ir/apply.py b/src/pairs/ir/apply.py
index 1501fe2a85508cc46fdf04148daf1c60ebb581c2..5271b1161d621ee3675f0d6313bd9e4855c94acf 100644
--- a/src/pairs/ir/apply.py
+++ b/src/pairs/ir/apply.py
@@ -54,7 +54,7 @@ class Apply(Lowerable):
         return self._build_expression_with_index(expr, index)[0]
 
     # TODO: This method should comprise all operators and dynamic data types, it would also be
-    # better to provide a better way to implement it such as a Mutator or Visitor
+    # better to provide a way to implement it with a Mutator or Visitor
     def _build_expression_with_index(self, expr, index):
         if isinstance(expr, (ScalarOp, VectorOp)):
             new_lhs, changed_lhs = self._build_expression_with_index(expr.lhs, index)
diff --git a/src/pairs/ir/device.py b/src/pairs/ir/device.py
index 5082acf339636fb9cea405bb1172288492636e3a..c52613dbb0a66e00a902e6c1b970f7e2c296157a 100644
--- a/src/pairs/ir/device.py
+++ b/src/pairs/ir/device.py
@@ -72,7 +72,7 @@ class CopyProperty(ASTNode):
 
 
 class CopyContactProperty(ASTNode):
-    def __init__(self, sim, prop, ctx, write):
+    def __init__(self, sim, prop, ctx, action):
         super().__init__(sim)
         self._contact_prop = prop
         self._ctx = ctx
@@ -89,7 +89,7 @@ class CopyContactProperty(ASTNode):
         return self._action
 
     def children(self):
-        return [self._prop]
+        return [self._contact_prop]
 
 
 class CopyVar(ASTNode):
diff --git a/src/pairs/ir/kernel.py b/src/pairs/ir/kernel.py
index e5e19c9d6cec2389a6ad76f7d1e606d28dd12f29..04def29cf9153a8ec7f5048f79579bd062186dd0 100644
--- a/src/pairs/ir/kernel.py
+++ b/src/pairs/ir/kernel.py
@@ -116,7 +116,7 @@ class Kernel(ASTNode):
         new_op = 'w' if write else 'r'
 
         for contact_prop in contact_prop_list:
-            assert isinstance(cp, ContactProperty), \
+            assert isinstance(contact_prop, ContactProperty), \
                 "Kernel.add_contact_property(): Element is not of type ContactProperty."
 
             action = Actions.NoAction if contact_prop not in self._contact_properties else \
diff --git a/src/pairs/ir/properties.py b/src/pairs/ir/properties.py
index f841199ea91822434fe29415e799b3811682d978..f10f9424b82f721b3564f6fdc9899f94aca4bc7e 100644
--- a/src/pairs/ir/properties.py
+++ b/src/pairs/ir/properties.py
@@ -258,7 +258,7 @@ class ContactProperty(ASTNode):
     def copy_size(self):
         return ScalarOp.inline(self.sim.nlocal *
                                self.sim.neighbor_capacity *
-                               Types.number_of_elements(self.sim, self.prop_type) *
+                               Types.number_of_elements(self.sim, self.contact_prop_type) *
                                Sizeof(self.sim, self.type()))
 
     def sizes(self):