 
     move = ( x, y, event ) =>
       if group?
+        [ x, y ] = @_.O.grid.nearest( [ x, y ], A )
         if ! event.altKey
           B = [ x, y ]
         else

      null

    down = ( x, y ) =>
      group = new Kinetic.Group()
      @_.layer.add( group )
      A = [ x, y ]

      null

    up = ( x, y, event ) =>
      [ x, y ] = @_.O.grid.nearest( [ x, y ], A )
      B = [ x, y ]
      group?.destroy()
      group = null
