 	/// be performed at the end of the runloop. Instead it immediately 
 	/// re-renders.
 	final public func forceRender() {
-		render()
+		renderSelf()
 	}
 	
 	/// Called when the component will be realized and before the component is


		let observer = CFRunLoopObserverCreateWithHandler(kCFAllocatorDefault, CFRunLoopActivity.BeforeWaiting.rawValue, 0, 0) { _, activity in
			self.renderQueued = false
			self.render()
		}
		CFRunLoopAddObserver(CFRunLoopGetMain(), observer, kCFRunLoopCommonModes)
	}

		}
	}

	final private func renderSelf() {
		if let rootElement = rootElement {
			applyDiff(self, realizedSelf: nil)
		}
