 {BaseClass} = require "./BaseClass"
 {Animator} = require "./Animators/Animator"
 {LinearAnimator} = require "./Animators/LinearAnimator"
-{SVG, SVGPath} = require "./SVG"
 Curves = require "./Animators/Curves"
 
 numberRE = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/

					when "size" then derivedKeys = ["width", "height"]
					when "point" then derivedKeys = ["x", "y"]
					else derivedKeys = []
				if SVGPath.isPath(v)
					for derivedKey in derivedKeys
						animatableProperties[derivedKey] = v
				else if _.isObject(v)
					_.defaults(animatableProperties, _.pick(v, derivedKeys))
				else if _.isNumber(v)
					for derivedKey in derivedKeys

		return _.pick(@layer, _.keys(@properties))

	@isAnimatable = (v) ->
		_.isNumber(v) or _.isFunction(v) or isRelativeProperty(v) or Color.isColorObject(v) or Gradient.isGradientObject(v) #or SVGPath.isPath(v)

	# Special cases that animate with different types of objects
	@isAnimatableKey = (k) ->
