       On either desktop or touch devices, if you are tracking move events, the pointer's location won't have changed between the last mouseMove event and the pointerUp event.
 ###
 
-Atomic = require 'art-atomic'
-Foundation = require 'art-foundation'
-Events = require 'art-events'
-Pointer = require './Pointer'
-PointerEvent = require './PointerEvent'
-KeyEvent = require './KeyEvent'
-
-{EventEpoch} = Events
-{eventEpoch} = EventEpoch
-{point, rect, matrix} = Atomic
-{inspect, clone, shallowClone, peek, first, min, max, eq, arrayWithoutValue, stableSort, log, isObject} = Foundation
-
-module.exports = class PointerEventManager extends Foundation.BaseObject
+module.exports = class PointerEventManager extends BaseClass
 
   constructor: (options={})->
     super

  # pointerUp - user activity cased this
  pointerUp: (id, timeStampInPerformanceSeconds) ->
    eventEpoch.logEvent "pointerUp", id
    unless pointer = @activePointers[id]
      return console.error "pointerUp(#{id}): no active pointer for that id"


    @currentFocusedPath

  focus: (pointer, element) ->
    @updateFocusedPath pointer, element || @pointerElementPath pointer

  updateMousePath: ->
    pointer = @mouse
