diff --git a/mrdna/segmentmodel.py b/mrdna/segmentmodel.py
index 36fa2c7324fa6771c32bffd0917e2e29d2f09dc6..80436df0192b94cff995566b429bcc8da72be6bf 100644
--- a/mrdna/segmentmodel.py
+++ b/mrdna/segmentmodel.py
@@ -1175,10 +1175,8 @@ class SingleStrandedSegment(Segment):
 
     def add_crossover(self, nt, other, other_nt, strands_fwd=(True,False), nt_on_5prime=True, type_='sscrossover'):
         """ Add a crossover between two helices """
-        ## Validate other, nt, other_nt
-        ##   TODO
-       
-        ## TODO: fix direction
+        ## TODO Validate other, nt, other_nt
+
         if nt in (0,1,self.num_nt) and other_nt in (0,1,other.num_nt):
             if nt_on_5prime == True:
                 other_end = other.start5 if strands_fwd[1] else other.end5
@@ -1193,7 +1191,7 @@ class SingleStrandedSegment(Segment):
         # ## Ensure connections occur at ends, otherwise the structure doesn't make sense
         # # assert(np.isclose(c1,0) or np.isclose(c1,1))
         # assert(np.isclose(nt,0) or np.isclose(nt,self.num_nt-1))
-        if nt == 0 and (nt_on_5prime or self.num_nt > 1):
+        if nt == 0 and (self.num_nt > 1 or not nt_on_5prime):
             c1 = 0
         elif nt == self.num_nt-1:
             c1 = 1