docs: function (maybeViewClass) {
        var attrs = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
  
        if (!maybeViewClass) {
          throw new TypeError('createChildViews first argument must exist');
        }
  
        var owner = _containerOwner.getOwner(this);
  
        if (maybeViewClass.isView && maybeViewClass.parentView === this && _containerOwner.getOwner(maybeViewClass) === owner) {
          return maybeViewClass;
        }
  
        var view;
  
        attrs.parentView = this;
        attrs.renderer = this.renderer;
        attrs._viewRegistry = this._viewRegistry;
  
        if (maybeViewClass.isViewFactory) {
          _containerOwner.setOwner(attrs, owner);
  
          view = maybeViewClass.create(attrs);
  
          if (view.viewName) {
            _emberMetalProperty_set.set(this, view.viewName, view);
          }
        } else if ('string' === typeof maybeViewClass) {
          var fullName = 'view:' + maybeViewClass;
          var ViewKlass = owner._lookupFactory(fullName);
  
          _emberMetalDebug.assert('Could not find view: \'' + fullName + '\'', !!ViewKlass);
  
          view = ViewKlass.create(attrs);
        } else {
          view = maybeViewClass;
          _emberMetalDebug.assert('You must pass instance or subclass of View', view.isView);
  
          _containerOwner.setOwner(attrs, owner);
          _emberMetalSet_properties.default(view, attrs);
        }
  
        this.linkChild(view);
  
        return view;
      }