 
 extension UIViewController: ContextNodeContainer {
 
-    public var childContextObjects: [Any] {
+    open var childContextObjects: [Any] {
         return self.childViewControllers.map({ $0 })
     }
 }
 
 extension UIView: ContextNodeContainer {
 
-    public var childContextObjects: [Any] {
+    open var childContextObjects: [Any] {
         return self.subviews.map({ $0 })
     }
 }


extension UIView: ContextPreloadable {

    public func contextPreload() {
        guard let contextNode = self as? ContextNode, contextNode.contextToken == nil else { return }
        guard let inflatable = self as? UINibViewInflatable else { return }
        let view = inflatable.inflateView()


extension UIViewController: ContextPreloadable {

    open func contextPreload() {
        guard let contextNode = self as? ContextNode, contextNode.contextToken == nil else { return }
        self.loadViewIfNeeded()
    }
