         return lhs.box.isEqual(to: rhs.box)
     }
     
-    public func diffChanges(from other: ChildComponent) -> ChildComponent {
+    public func diffChanges(from other: ChildComponent<View>) -> ChildComponent<View> {
         return ChildComponent(box.diffChanges(from: other.box), other.access)
     }
 }

private struct _ConcreteComponentBox<Base: ComponentType>: _AnyComponentBox {
    let base: Base
    
    var children: [ChildComponent] {
        return base.children
    }
    

        return box.isEmpty
    }
    
    public var children: [ChildComponent<View>] {
        return box.children as! [ChildComponent<View>]
    }
    
    public func configure(item: View) {
        box.configure(item: access(item))
    }
    
