 
     tick: () =>
         if alchemy.conf.collisionDetection
-            q = d3.geom.quadtree @d3NodeInternals
             for node in _.values alchemy._nodes
-                q.visit @collide(node)
+                @q.visit @collide(node)
 
         # alchemy.node
         alchemy.vis

    collide: (node) =>
        node = node._d3
        conf = alchemy.conf
        r = 2 * (node.r + node['stroke-width']) + conf.nodeOverlap
        nx1 = node.x - r
        nx2 = node.x + r
        ny1 = node.y - r

                    node.y -= y *= l
                    quad.point.x += x
                    quad.point.y += y
            # console.log(x1,nx2,x2,nx1,y1,ny2,y2,ny1)
            x1 > nx2 or
            x2 < nx1 or
            y1 > ny2 or
