docs: function (attributes, descriptor, stage, parentScope, rootScope, cidScope, evaluateBindingsInCtor) {
  
                  this.$eventDefinitions = [];
                  this.$internalDescriptors = [];
                  this.$xamlDefaults = {};
                  this.$xamlAttributes = {};
  
                  var current = this,
                      lastDescriptor;
                  while (current) {
                      if (current._$descriptor && lastDescriptor != current._$descriptor) {
                          this.$internalDescriptors.unshift(current._$descriptor);
                          _.defaults(this.$xamlDefaults, this._getAttributesFromDescriptor(current._$descriptor, rootScope, cidScope));
                          lastDescriptor = current._$descriptor;
                      }
                      current = current.base;
                  }
  
                  attributes = attributes || {};
  
                  var internalCid = this.$xamlDefaults.cid;
                  if (internalCid) {
                      // internal cid
                      attributes[internalCid] = this;
                      this.$classAttributes = this.$classAttributes || [];
                      this.$classAttributes.push(internalCid);
                  }
  
                  if (descriptor) {
                      this.$xamlAttributes = this._getAttributesFromDescriptor(descriptor, rootScope, cidScope);
                  }
  
                  this.$children = [];
                  this.$templates = {};
                  this.$configurations = [];
                  this.$children = [];
  
                  _.defaults(attributes, this.$xamlAttributes, this.$xamlDefaults);
                  // added parameters, otherwise it comes to problems in Chrome!
                  this.callBase(attributes, descriptor, stage, parentScope, rootScope, cidScope, evaluateBindingsInCtor);
              }