         }
 
         static func acquire(view: UIView) -> Node {
-            var node = mPool.acquire()
+            var node: Node? = mPool.acquire()
             if node == nil {
                 node = Node(view: view)
+            } else {
+                node!.view = view
             }
             return node!
         }


    private func getRelatedViewParams(rules: [BindViewWithRule], relation: RelativeRule) ->
            RelativeLayoutParams? {
        var view: UIView = getRelatedView(rules: rules, relation: relation)!

        if view != nil {
            let params: RelativeLayoutParams = view.getLayoutParams() as! RelativeLayoutParams
            return params
        }


    }

    fileprivate class Node {
        var view: UIView!

        var dependents: NSMapTable = NSMapTable<Node, DependencyGraph>()

