   ignoredAttributes = {parent: true, id: true, name: true, extends: true, type: true}
   class View extends Node
     constructor: (el, attributes = {}) ->
+      @subviews = []
       attributes.$types = {x: 'number', y: 'number', width: 'number', height: 'number'}
       if (el instanceof HTMLElement and el.$view)
         console.warn 'already bound view', el.$view, el

      # console.log 'matched constraint', name, @, expression
      return

    setAttribute: (name, value) ->
      if @[name] != value
        constraint = value.match?(matchConstraint)


      # store references subviews
      if parent instanceof View
        parent.subviews.push(@)
        parent.trigger('subviews', @) if parent.events?['subviews']
        parent = parent.sprite
