     ixs[0].object.userData.cyjs?
 
   handleDown: (ixs) ->
+    @mh.updateMouse(event)
+    @start.copy(@mh.pos)
     e = ixs[0].object.userData
     console.log "! surface select -- " + e.constructor.name
     @mh.ve.surface.clearSelection()

    @mh.ve.container.onmousemove = (eve) => @handleMove(eve)
  
  handleUp: (ixs) ->
    @mh.ve.addie.update([@mh.placingObject])

    @mh.ve.container.onmousemove = null
    @mh.ve.container.onmousedown = (eve) => @mh.baseDown(eve)

      for x in xs
        x.id.name = x.props.name
        x.id.sys = x.props.sys
        for y in ls
          y.setEndpointData()
        msg = { Elements: [] }
        for _, lu of lnk_updates
          msg.Elements.push(lu)
        $.post "/addie/"+dsg+"/design/update", JSON.stringify(msg), (data) =>
          for x in ls
            x.id.name = x.props.name
            x.id.sys = x.props.sys

  ###

  load: () =>
    ($.get "/addie/"+dsg+"/design/read", (data, status, jqXHR) =>
