                         r_graph[last_idx] = nil
                         last_idx = next
                     } else {
-                        continue outer
+                        return []
                     }
                 } else {
                     if let (next, s0, s1) = l_graph[last_idx] {

        var l_graph = l_graph
        var r_graph = r_graph
        
        outer: while let (first_from, (first_to, first_s0, first_s1)) = l_graph.first {
            
            var segments: [ShapeRegion.Solid.Segment] = self.splitPath(first_s0, first_s1)
            var last_idx = first_to

                        l_graph[last_idx] = nil
                        last_idx = next
                    } else {
                        return []
                    }
                }
                flag = !flag
