docs: function() {
      var lib, name, names, _i, _len;
      lib = arguments[0], names = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
      for (_i = 0, _len = names.length; _i < _len; _i++) {
        name = names[_i];
        if (lib[name] == null) {
          return;
        }
        if (this[name] == null) {
          this[name] = {};
        }
        if (!isObject(this[name])) {
          return;
        }
        mixin(this[name], lib[name]);
      }
      return this;
    }