       @inset = i
       @update()
 
-    added: (child) =>
+    added: (child) ->
       # console.log 'added', child
       child.bind(@axis, @update)
       super(child)
 
-    update: (value, sender) =>
+    update: (value, sender) ->
       # console.log('skip', @skip, @locked)
       return if @skip()
       pos = @inset

    matchConstraint = /\${(.+)}/
    applyConstraint: (name, expression) ->
      @constraints ?= {}
      @constraints[name] = (compileScript('return ' + expression)).bind(@)
      # console.log 'adding constraint', name, expression, @
      # console.log 'eval', @constraints[name]()

      scopes = propertyBindings.find(expression)
      # console.log 'found scopes', scopes

      constraintBinding = @constraints[name]
      bindings = constraintBinding.bindings ?= {}

      for scope in scopes
        bindexpression = scope.binding
        scope.compiled = (compileScript('return ' + bindexpression)).bind(@)
        bindings[bindexpression] = scope
        # console.log 'applied', scope.property, bindexpression, 'for', @


            attributes[key] = _.clone(attributes[key])
            # console.log('overwriting', key, attributes[key], value)
            for propname, val of value
              # TODO: deal with method overrides here?
              attributes[key][propname] = val
          else if key is '$handlers' and key of attributes
            # console.log 'concat', attributes[key], value
