     return render().build(with: self)
   }
 
+  private func makeInstance() -> Node {
+    willBuild()
+    if pendingStateMutations.count > 0 {
+      state = processStateMutations()
+      processStateMutationCallbacks()
+    }
+
+    return renderElement().build(withOwner: self, context: nil)
+  }
+
   open func render() -> Template {
     fatalError("Must be implemented by subclasses")
   }

  public var element: ElementData<PropertiesType>
  public var builtView: ViewType?
  public var context: Context?
  public lazy var state: StateType = {
    return self.getInitialState()
  }()

  public var properties: PropertiesType


    self.properties = self.element.properties
    self.owner = owner
    self.context = context
  }

  public func render(_ location: URL) -> Template {
