     var views = [UIView]()
     var viewsToDisplay = [UIView]() {
         didSet {
-            buildTreeForNodeCount(viewsToDisplay.count)
-            updateViews()
+            if viewsToDisplay.count > 0 {
+                buildTreeForNodeCount(viewsToDisplay.count)
+                updateViews()
+            }
         }
     }
     

        stackView.distribution = .FillEqually
        return stackView
    }

}
            //if subview is not supposed to be subview, remove
            for subView in nodeView.arrangedSubviews {
                if !childViews.contains(subView) {
                    subView.removeFromSuperview()
                }
            }
