'use strict';

Object.defineProperty(exports, "__esModule", {
  value: true
});

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

exports.default = function (pluginContext) {
  var _otherNumber, _otherNumberList, _responsibleDepartmen2, _briefDescriptions, _comments, _titleTranslationSubG, _titleTranslationSubG2, _titleGroup, _titleGroupList, _objectNameGroup, _objectNameList, _objectStatusList, _forms, _styles, _colors, _materialGroup, _materialGroupList, _objectComponentGroup, _objectComponentGroup2, _technicalAttributeGr, _technicalAttributeGr2, _dimensionSubGroup, _dimensionSubGroupLis, _measuredPartGroup, _measuredPartGroupLis, _contentLanguages, _contentActivities, _contentConcepts, _contentPositions, _contentObjectGroup, _contentObjectGroupLi, _contentPeoples, _contentPersons, _contentPlaces, _contentScripts, _contentOrganizations, _contentEventNameGrou, _contentEventNameGrou2, _contentOtherGroup, _contentOtherGroupLis, _textualInscriptionGr, _textualInscriptionGr2, _nonTextualInscriptio, _nonTextualInscriptio2, _objectProductionDate2, _techniqueGroup, _techniqueGroupList, _objectProductionPlac3, _objectProductionPlac4, _objectProductionReas2, _objectProductionPeop3, _objectProductionPeop4, _objectProductionPers3, _objectProductionPers4, _objectProductionOrga3, _objectProductionOrga4, _assocActivityGroup, _assocActivityGroupLi, _assocObjectGroup, _assocObjectGroupList, _assocConceptGroup, _assocConceptGroupLis, _assocCulturalContext4, _assocCulturalContext5, _assocOrganizationGro, _assocOrganizationGro2, _assocPeopleGroup, _assocPeopleGroupList, _assocPersonGroup, _assocPersonGroupList, _assocPlaceGroup, _assocPlaceGroupList, _assocEventOrganizati2, _assocEventPeoples, _assocEventPersons, _assocEventPlaces, _assocDateGroup, _assocDateGroupList, _usageGroup, _usageGroupList, _owners, _ownershipDateGroupLi, _ownersReferences, _viewersReferences, _referenceGroup, _referenceGroupList, _fieldCollectionMetho2, _fieldCollectionSourc2, _fieldCollectors, _fieldColEventNames, _ns2Collectionobject, _document;

  var _pluginContext$inputC = pluginContext.inputComponents,
      AuthorityControlledInput = _pluginContext$inputC.AuthorityControlledInput,
      CompoundInput = _pluginContext$inputC.CompoundInput,
      DateInput = _pluginContext$inputC.DateInput,
      IDGeneratorInput = _pluginContext$inputC.IDGeneratorInput,
      OptionListControlledInput = _pluginContext$inputC.OptionListControlledInput,
      StructuredDateInput = _pluginContext$inputC.StructuredDateInput,
      TextInput = _pluginContext$inputC.TextInput,
      VocabularyControlledInput = _pluginContext$inputC.VocabularyControlledInput;
  var config = pluginContext.configHelpers.configKey;


  return {
    document: (_document = {}, _defineProperty(_document, config, {
      view: {
        type: CompoundInput,
        props: {
          defaultChildSubpath: 'ns2:collectionobjects_common'
        }
      }
    }), _defineProperty(_document, 'ns2:collectionobjects_common', (_ns2Collectionobject = {}, _defineProperty(_ns2Collectionobject, config, {
      service: {
        ns: 'http://collectionspace.org/services/collectionobject'
      }
    }), _defineProperty(_ns2Collectionobject, 'objectNumber', _defineProperty({}, config, {
      cloneable: false,
      view: {
        type: IDGeneratorInput,
        props: {
          idGeneratorName: 'accession,intake,loanin'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'numberOfObjects', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'otherNumberList', (_otherNumberList = {}, _defineProperty(_otherNumberList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_otherNumberList, 'otherNumber', (_otherNumber = {}, _defineProperty(_otherNumber, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_otherNumber, 'numberType', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'numberTypes'
        }
      }
    })), _defineProperty(_otherNumber, 'numberValue', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _otherNumber)), _otherNumberList)), _defineProperty(_ns2Collectionobject, 'responsibleDepartments', (_responsibleDepartmen2 = {}, _defineProperty(_responsibleDepartmen2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_responsibleDepartmen2, 'responsibleDepartment', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'departments',
          repeating: true
        }
      }
    })), _responsibleDepartmen2)), _defineProperty(_ns2Collectionobject, 'collection', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'collections'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'recordStatus', _defineProperty({}, config, {
      defaultValue: 'new',
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'recordStatuses'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'briefDescriptions', (_briefDescriptions = {}, _defineProperty(_briefDescriptions, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_briefDescriptions, 'briefDescription', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true,
          repeating: true
        }
      }
    })), _briefDescriptions)), _defineProperty(_ns2Collectionobject, 'distinguishingFeatures', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'comments', (_comments = {}, _defineProperty(_comments, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_comments, 'comment', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true,
          repeating: true
        }
      }
    })), _comments)), _defineProperty(_ns2Collectionobject, 'computedCurrentLocation', _defineProperty({}, config, {
      cloneable: false,
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'titleGroupList', (_titleGroupList = {}, _defineProperty(_titleGroupList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_titleGroupList, 'titleGroup', (_titleGroup = {}, _defineProperty(_titleGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          repeating: true
        }
      }
    }), _defineProperty(_titleGroup, 'title', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_titleGroup, 'titleLanguage', _defineProperty({}, config, {
      view: {
        type: VocabularyControlledInput,
        props: {
          vocabularyName: 'languages'
        }
      }
    })), _defineProperty(_titleGroup, 'titleTranslationSubGroupList', (_titleTranslationSubG2 = {}, _defineProperty(_titleTranslationSubG2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_titleTranslationSubG2, 'titleTranslationSubGroup', (_titleTranslationSubG = {}, _defineProperty(_titleTranslationSubG, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_titleTranslationSubG, 'titleTranslation', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_titleTranslationSubG, 'titleTranslationLanguage', _defineProperty({}, config, {
      view: {
        type: VocabularyControlledInput,
        props: {
          vocabularyName: 'languages'
        }
      }
    })), _titleTranslationSubG)), _titleTranslationSubG2)), _defineProperty(_titleGroup, 'titleType', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'titleTypes'
        }
      }
    })), _titleGroup)), _titleGroupList)), _defineProperty(_ns2Collectionobject, 'objectNameList', (_objectNameList = {}, _defineProperty(_objectNameList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_objectNameList, 'objectNameGroup', (_objectNameGroup = {}, _defineProperty(_objectNameGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_objectNameGroup, 'objectName', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_objectNameGroup, 'objectNameCurrency', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'nameCurrencies'
        }
      }
    })), _defineProperty(_objectNameGroup, 'objectNameLevel', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'nameLevels'
        }
      }
    })), _defineProperty(_objectNameGroup, 'objectNameSystem', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'nameSystems'
        }
      }
    })), _defineProperty(_objectNameGroup, 'objectNameType', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'nameTypes'
        }
      }
    })), _defineProperty(_objectNameGroup, 'objectNameLanguage', _defineProperty({}, config, {
      view: {
        type: VocabularyControlledInput,
        props: {
          vocabularyName: 'languages'
        }
      }
    })), _defineProperty(_objectNameGroup, 'objectNameNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _objectNameGroup)), _objectNameList)), _defineProperty(_ns2Collectionobject, 'copyNumber', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'objectStatusList', (_objectStatusList = {}, _defineProperty(_objectStatusList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_objectStatusList, 'objectStatus', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'objectStatuses',
          repeating: true
        }
      }
    })), _objectStatusList)), _defineProperty(_ns2Collectionobject, 'sex', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'sexes'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'phase', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'phases'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'forms', (_forms = {}, _defineProperty(_forms, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_forms, 'form', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'forms',
          repeating: true
        }
      }
    })), _forms)), _defineProperty(_ns2Collectionobject, 'editionNumber', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'age', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'ageQualifier', _defineProperty({}, config, {
      view: {
        type: VocabularyControlledInput,
        props: {
          vocabularyName: 'agequalifier'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'ageUnit', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'ageUnits'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'styles', (_styles = {}, _defineProperty(_styles, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_styles, 'style', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          repeating: true
        }
      }
    })), _styles)), _defineProperty(_ns2Collectionobject, 'colors', (_colors = {}, _defineProperty(_colors, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_colors, 'color', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          repeating: true
        }
      }
    })), _colors)), _defineProperty(_ns2Collectionobject, 'materialGroupList', (_materialGroupList = {}, _defineProperty(_materialGroupList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_materialGroupList, 'materialGroup', (_materialGroup = {}, _defineProperty(_materialGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_materialGroup, 'material', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_materialGroup, 'materialComponent', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_materialGroup, 'materialComponentNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_materialGroup, 'materialName', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_materialGroup, 'materialSource', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _materialGroup)), _materialGroupList)), _defineProperty(_ns2Collectionobject, 'physicalDescription', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'objectComponentGroupList', (_objectComponentGroup2 = {}, _defineProperty(_objectComponentGroup2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_objectComponentGroup2, 'objectComponentGroup', (_objectComponentGroup = {}, _defineProperty(_objectComponentGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_objectComponentGroup, 'objectComponentName', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'objectComponentNames'
        }
      }
    })), _defineProperty(_objectComponentGroup, 'objectComponentInformation', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _objectComponentGroup)), _objectComponentGroup2)), _defineProperty(_ns2Collectionobject, 'technicalAttributeGroupList', (_technicalAttributeGr2 = {}, _defineProperty(_technicalAttributeGr2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_technicalAttributeGr2, 'technicalAttributeGroup', (_technicalAttributeGr = {}, _defineProperty(_technicalAttributeGr, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_technicalAttributeGr, 'technicalAttribute', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'technicalAttributes'
        }
      }
    })), _defineProperty(_technicalAttributeGr, 'technicalAttributeMeasurement', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'technicalAttributeMeasurements'
        }
      }
    })), _defineProperty(_technicalAttributeGr, 'technicalAttributeMeasurementUnit', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'technicalAttributeMeasurementUnits'
        }
      }
    })), _technicalAttributeGr)), _technicalAttributeGr2)), _defineProperty(_ns2Collectionobject, 'measuredPartGroupList', (_measuredPartGroupLis = {}, _defineProperty(_measuredPartGroupLis, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_measuredPartGroupLis, 'measuredPartGroup', (_measuredPartGroup = {}, _defineProperty(_measuredPartGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          repeating: true
        }
      }
    }), _defineProperty(_measuredPartGroup, 'measuredPart', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'measuredParts'
        }
      }
    })), _defineProperty(_measuredPartGroup, 'dimensionSummary', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_measuredPartGroup, 'dimensionSubGroupList', (_dimensionSubGroupLis = {}, _defineProperty(_dimensionSubGroupLis, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_dimensionSubGroupLis, 'dimensionSubGroup', (_dimensionSubGroup = {}, _defineProperty(_dimensionSubGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_dimensionSubGroup, 'dimension', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'dimensions'
        }
      }
    })), _defineProperty(_dimensionSubGroup, 'measuredBy', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'person/local,person/shared,organization/local,organization/shared'
        }
      }
    })), _defineProperty(_dimensionSubGroup, 'measurementMethod', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'measurementMethods'
        }
      }
    })), _defineProperty(_dimensionSubGroup, 'value', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_dimensionSubGroup, 'measurementUnit', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'measurementUnits'
        }
      }
    })), _defineProperty(_dimensionSubGroup, 'valueQualifier', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_dimensionSubGroup, 'valueDate', _defineProperty({}, config, {
      view: {
        type: DateInput
      }
    })), _dimensionSubGroup)), _dimensionSubGroupLis)), _measuredPartGroup)), _measuredPartGroupLis)), _defineProperty(_ns2Collectionobject, 'contentDescription', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'contentLanguages', (_contentLanguages = {}, _defineProperty(_contentLanguages, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentLanguages, 'contentLanguage', _defineProperty({}, config, {
      view: {
        type: VocabularyControlledInput,
        props: {
          vocabularyName: 'languages',
          repeating: true
        }
      }
    })), _contentLanguages)), _defineProperty(_ns2Collectionobject, 'contentActivities', (_contentActivities = {}, _defineProperty(_contentActivities, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentActivities, 'contentActivity', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          repeating: true
        }
      }
    })), _contentActivities)), _defineProperty(_ns2Collectionobject, 'contentConcepts', (_contentConcepts = {}, _defineProperty(_contentConcepts, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentConcepts, 'contentConcept', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'concept/associated,concept/material,concept/material_shared',
          repeating: true
        }
      }
    })), _contentConcepts)), _defineProperty(_ns2Collectionobject, 'contentDateGroup', _defineProperty({}, config, {
      view: {
        type: StructuredDateInput
      }
    })), _defineProperty(_ns2Collectionobject, 'contentPositions', (_contentPositions = {}, _defineProperty(_contentPositions, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentPositions, 'contentPosition', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'positions',
          repeating: true
        }
      }
    })), _contentPositions)), _defineProperty(_ns2Collectionobject, 'contentObjectGroupList', (_contentObjectGroupLi = {}, _defineProperty(_contentObjectGroupLi, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentObjectGroupLi, 'contentObjectGroup', (_contentObjectGroup = {}, _defineProperty(_contentObjectGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_contentObjectGroup, 'contentObject', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_contentObjectGroup, 'contentObjectType', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'contentObjectTypes'
        }
      }
    })), _contentObjectGroup)), _contentObjectGroupLi)), _defineProperty(_ns2Collectionobject, 'contentPeoples', (_contentPeoples = {}, _defineProperty(_contentPeoples, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentPeoples, 'contentPeople', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          repeating: true
        }
      }
    })), _contentPeoples)), _defineProperty(_ns2Collectionobject, 'contentPersons', (_contentPersons = {}, _defineProperty(_contentPersons, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentPersons, 'contentPerson', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'person/local,person/shared,person/ulan',
          repeating: true
        }
      }
    })), _contentPersons)), _defineProperty(_ns2Collectionobject, 'contentPlaces', (_contentPlaces = {}, _defineProperty(_contentPlaces, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentPlaces, 'contentPlace', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          repeating: true
        }
      }
    })), _contentPlaces)), _defineProperty(_ns2Collectionobject, 'contentScripts', (_contentScripts = {}, _defineProperty(_contentScripts, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentScripts, 'contentScript', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'scripts',
          repeating: true
        }
      }
    })), _contentScripts)), _defineProperty(_ns2Collectionobject, 'contentOrganizations', (_contentOrganizations = {}, _defineProperty(_contentOrganizations, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentOrganizations, 'contentOrganization', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'organization/local,organization/shared,organization/ulan',
          repeating: true
        }
      }
    })), _contentOrganizations)), _defineProperty(_ns2Collectionobject, 'contentEventNameGroupList', (_contentEventNameGrou2 = {}, _defineProperty(_contentEventNameGrou2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentEventNameGrou2, 'contentEventNameGroup', (_contentEventNameGrou = {}, _defineProperty(_contentEventNameGrou, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_contentEventNameGrou, 'contentEventName', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_contentEventNameGrou, 'contentEventNameType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _contentEventNameGrou)), _contentEventNameGrou2)), _defineProperty(_ns2Collectionobject, 'contentOtherGroupList', (_contentOtherGroupLis = {}, _defineProperty(_contentOtherGroupLis, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_contentOtherGroupLis, 'contentOtherGroup', (_contentOtherGroup = {}, _defineProperty(_contentOtherGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_contentOtherGroup, 'contentOther', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_contentOtherGroup, 'contentOtherType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _contentOtherGroup)), _contentOtherGroupLis)), _defineProperty(_ns2Collectionobject, 'contentNote', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'textualInscriptionGroupList', (_textualInscriptionGr2 = {}, _defineProperty(_textualInscriptionGr2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_textualInscriptionGr2, 'textualInscriptionGroup', (_textualInscriptionGr = {}, _defineProperty(_textualInscriptionGr, config, {
      view: {
        type: CompoundInput,
        props: {
          repeating: true
        }
      }
    }), _defineProperty(_textualInscriptionGr, 'inscriptionContent', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_textualInscriptionGr, 'inscriptionContentInscriber', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'person/local,organization/local,organization/shared'
        }
      }
    })), _defineProperty(_textualInscriptionGr, 'inscriptionContentLanguage', _defineProperty({}, config, {
      view: {
        type: VocabularyControlledInput,
        props: {
          vocabularyName: 'languages'
        }
      }
    })), _defineProperty(_textualInscriptionGr, 'inscriptionContentDateGroup', _defineProperty({}, config, {
      view: {
        type: StructuredDateInput
      }
    })), _defineProperty(_textualInscriptionGr, 'inscriptionContentPosition', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'positions'
        }
      }
    })), _defineProperty(_textualInscriptionGr, 'inscriptionContentScript', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'scripts'
        }
      }
    })), _defineProperty(_textualInscriptionGr, 'inscriptionContentType', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'inscriptionTypes'
        }
      }
    })), _defineProperty(_textualInscriptionGr, 'inscriptionContentMethod', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_textualInscriptionGr, 'inscriptionContentInterpretation', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_textualInscriptionGr, 'inscriptionContentTranslation', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_textualInscriptionGr, 'inscriptionContentTransliteration', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _textualInscriptionGr)), _textualInscriptionGr2)), _defineProperty(_ns2Collectionobject, 'nonTextualInscriptionGroupList', (_nonTextualInscriptio2 = {}, _defineProperty(_nonTextualInscriptio2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_nonTextualInscriptio2, 'nonTextualInscriptionGroup', (_nonTextualInscriptio = {}, _defineProperty(_nonTextualInscriptio, config, {
      view: {
        type: CompoundInput,
        props: {
          repeating: true
        }
      }
    }), _defineProperty(_nonTextualInscriptio, 'inscriptionDescription', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_nonTextualInscriptio, 'inscriptionDescriptionInscriber', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'person/local,person/shared,organization/local,organization/shared'
        }
      }
    })), _defineProperty(_nonTextualInscriptio, 'inscriptionDescriptionDateGroup', _defineProperty({}, config, {
      view: {
        type: StructuredDateInput
      }
    })), _defineProperty(_nonTextualInscriptio, 'inscriptionDescriptionPosition', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'positions'
        }
      }
    })), _defineProperty(_nonTextualInscriptio, 'inscriptionDescriptionType', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'inscriptionTypes'
        }
      }
    })), _defineProperty(_nonTextualInscriptio, 'inscriptionDescriptionMethod', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_nonTextualInscriptio, 'inscriptionDescriptionInterpretation', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _nonTextualInscriptio)), _nonTextualInscriptio2)), _defineProperty(_ns2Collectionobject, 'objectProductionDateGroupList', (_objectProductionDate2 = {}, _defineProperty(_objectProductionDate2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_objectProductionDate2, 'objectProductionDateGroup', _defineProperty({}, config, {
      view: {
        type: StructuredDateInput,
        props: {
          repeating: true
        }
      }
    })), _objectProductionDate2)), _defineProperty(_ns2Collectionobject, 'techniqueGroupList', (_techniqueGroupList = {}, _defineProperty(_techniqueGroupList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_techniqueGroupList, 'techniqueGroup', (_techniqueGroup = {}, _defineProperty(_techniqueGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_techniqueGroup, 'technique', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_techniqueGroup, 'techniqueType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _techniqueGroup)), _techniqueGroupList)), _defineProperty(_ns2Collectionobject, 'objectProductionPlaceGroupList', (_objectProductionPlac4 = {}, _defineProperty(_objectProductionPlac4, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_objectProductionPlac4, 'objectProductionPlaceGroup', (_objectProductionPlac3 = {}, _defineProperty(_objectProductionPlac3, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_objectProductionPlac3, 'objectProductionPlace', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_objectProductionPlac3, 'objectProductionPlaceRole', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _objectProductionPlac3)), _objectProductionPlac4)), _defineProperty(_ns2Collectionobject, 'objectProductionReasons', (_objectProductionReas2 = {}, _defineProperty(_objectProductionReas2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_objectProductionReas2, 'objectProductionReason', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true,
          repeating: true
        }
      }
    })), _objectProductionReas2)), _defineProperty(_ns2Collectionobject, 'objectProductionPeopleGroupList', (_objectProductionPeop4 = {}, _defineProperty(_objectProductionPeop4, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_objectProductionPeop4, 'objectProductionPeopleGroup', (_objectProductionPeop3 = {}, _defineProperty(_objectProductionPeop3, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_objectProductionPeop3, 'objectProductionPeople', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_objectProductionPeop3, 'objectProductionPeopleRole', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _objectProductionPeop3)), _objectProductionPeop4)), _defineProperty(_ns2Collectionobject, 'objectProductionPersonGroupList', (_objectProductionPers4 = {}, _defineProperty(_objectProductionPers4, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_objectProductionPers4, 'objectProductionPersonGroup', (_objectProductionPers3 = {}, _defineProperty(_objectProductionPers3, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_objectProductionPers3, 'objectProductionPerson', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'person/local,person/shared'
        }
      }
    })), _defineProperty(_objectProductionPers3, 'objectProductionPersonRole', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _objectProductionPers3)), _objectProductionPers4)), _defineProperty(_ns2Collectionobject, 'objectProductionOrganizationGroupList', (_objectProductionOrga4 = {}, _defineProperty(_objectProductionOrga4, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_objectProductionOrga4, 'objectProductionOrganizationGroup', (_objectProductionOrga3 = {}, _defineProperty(_objectProductionOrga3, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_objectProductionOrga3, 'objectProductionOrganization', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'organization/local,organization/shared'
        }
      }
    })), _defineProperty(_objectProductionOrga3, 'objectProductionOrganizationRole', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _objectProductionOrga3)), _objectProductionOrga4)), _defineProperty(_ns2Collectionobject, 'objectProductionNote', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'assocActivityGroupList', (_assocActivityGroupLi = {}, _defineProperty(_assocActivityGroupLi, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocActivityGroupLi, 'assocActivityGroup', (_assocActivityGroup = {}, _defineProperty(_assocActivityGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_assocActivityGroup, 'assocActivity', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocActivityGroup, 'assocActivityType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocActivityGroup, 'assocActivityNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _assocActivityGroup)), _assocActivityGroupLi)), _defineProperty(_ns2Collectionobject, 'assocObjectGroupList', (_assocObjectGroupList = {}, _defineProperty(_assocObjectGroupList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocObjectGroupList, 'assocObjectGroup', (_assocObjectGroup = {}, _defineProperty(_assocObjectGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_assocObjectGroup, 'assocObject', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocObjectGroup, 'assocObjectType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocObjectGroup, 'assocObjectNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _assocObjectGroup)), _assocObjectGroupList)), _defineProperty(_ns2Collectionobject, 'assocConceptGroupList', (_assocConceptGroupLis = {}, _defineProperty(_assocConceptGroupLis, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocConceptGroupLis, 'assocConceptGroup', (_assocConceptGroup = {}, _defineProperty(_assocConceptGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_assocConceptGroup, 'assocConcept', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'concept/associated'
        }
      }
    })), _defineProperty(_assocConceptGroup, 'assocConceptType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocConceptGroup, 'assocConceptNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _assocConceptGroup)), _assocConceptGroupLis)), _defineProperty(_ns2Collectionobject, 'assocCulturalContextGroupList', (_assocCulturalContext5 = {}, _defineProperty(_assocCulturalContext5, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocCulturalContext5, 'assocCulturalContextGroup', (_assocCulturalContext4 = {}, _defineProperty(_assocCulturalContext4, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_assocCulturalContext4, 'assocCulturalContext', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocCulturalContext4, 'assocCulturalContextType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocCulturalContext4, 'assocCulturalContextNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _assocCulturalContext4)), _assocCulturalContext5)), _defineProperty(_ns2Collectionobject, 'assocOrganizationGroupList', (_assocOrganizationGro2 = {}, _defineProperty(_assocOrganizationGro2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocOrganizationGro2, 'assocOrganizationGroup', (_assocOrganizationGro = {}, _defineProperty(_assocOrganizationGro, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_assocOrganizationGro, 'assocOrganization', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'organization/local,organization/shared'
        }
      }
    })), _defineProperty(_assocOrganizationGro, 'assocOrganizationType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocOrganizationGro, 'assocOrganizationNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _assocOrganizationGro)), _assocOrganizationGro2)), _defineProperty(_ns2Collectionobject, 'assocPeopleGroupList', (_assocPeopleGroupList = {}, _defineProperty(_assocPeopleGroupList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocPeopleGroupList, 'assocPeopleGroup', (_assocPeopleGroup = {}, _defineProperty(_assocPeopleGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_assocPeopleGroup, 'assocPeople', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocPeopleGroup, 'assocPeopleType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocPeopleGroup, 'assocPeopleNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _assocPeopleGroup)), _assocPeopleGroupList)), _defineProperty(_ns2Collectionobject, 'assocPersonGroupList', (_assocPersonGroupList = {}, _defineProperty(_assocPersonGroupList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocPersonGroupList, 'assocPersonGroup', (_assocPersonGroup = {}, _defineProperty(_assocPersonGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_assocPersonGroup, 'assocPerson', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'person/local,person/shared'
        }
      }
    })), _defineProperty(_assocPersonGroup, 'assocPersonType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocPersonGroup, 'assocPersonNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _assocPersonGroup)), _assocPersonGroupList)), _defineProperty(_ns2Collectionobject, 'assocPlaceGroupList', (_assocPlaceGroupList = {}, _defineProperty(_assocPlaceGroupList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocPlaceGroupList, 'assocPlaceGroup', (_assocPlaceGroup = {}, _defineProperty(_assocPlaceGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_assocPlaceGroup, 'assocPlace', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocPlaceGroup, 'assocPlaceType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocPlaceGroup, 'assocPlaceNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _assocPlaceGroup)), _assocPlaceGroupList)), _defineProperty(_ns2Collectionobject, 'assocEventName', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'assocEventNameType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'assocEventOrganizations', (_assocEventOrganizati2 = {}, _defineProperty(_assocEventOrganizati2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocEventOrganizati2, 'assocEventOrganization', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'organization/local,organization/shared',
          repeating: true
        }
      }
    })), _assocEventOrganizati2)), _defineProperty(_ns2Collectionobject, 'assocEventPeoples', (_assocEventPeoples = {}, _defineProperty(_assocEventPeoples, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocEventPeoples, 'assocEventPeople', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          repeating: true
        }
      }
    })), _assocEventPeoples)), _defineProperty(_ns2Collectionobject, 'assocEventPersons', (_assocEventPersons = {}, _defineProperty(_assocEventPersons, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocEventPersons, 'assocEventPerson', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'person/local,person/shared',
          repeating: true
        }
      }
    })), _assocEventPersons)), _defineProperty(_ns2Collectionobject, 'assocEventPlaces', (_assocEventPlaces = {}, _defineProperty(_assocEventPlaces, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocEventPlaces, 'assocEventPlace', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          repeating: true
        }
      }
    })), _assocEventPlaces)), _defineProperty(_ns2Collectionobject, 'assocEventNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'assocDateGroupList', (_assocDateGroupList = {}, _defineProperty(_assocDateGroupList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_assocDateGroupList, 'assocDateGroup', (_assocDateGroup = {}, _defineProperty(_assocDateGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_assocDateGroup, 'assocStructuredDateGroup', _defineProperty({}, config, {
      view: {
        type: StructuredDateInput
      }
    })), _defineProperty(_assocDateGroup, 'assocDateType', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_assocDateGroup, 'assocDateNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _assocDateGroup)), _assocDateGroupList)), _defineProperty(_ns2Collectionobject, 'objectHistoryNote', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'usageGroupList', (_usageGroupList = {}, _defineProperty(_usageGroupList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_usageGroupList, 'usageGroup', (_usageGroup = {}, _defineProperty(_usageGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_usageGroup, 'usage', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_usageGroup, 'usageNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _usageGroup)), _usageGroupList)), _defineProperty(_ns2Collectionobject, 'owners', (_owners = {}, _defineProperty(_owners, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_owners, 'owner', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'person/local,person/shared,organization/local,organization/shared',
          repeating: true
        }
      }
    })), _owners)), _defineProperty(_ns2Collectionobject, 'ownershipDateGroupList', (_ownershipDateGroupLi = {}, _defineProperty(_ownershipDateGroupLi, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_ownershipDateGroupLi, 'ownershipDateGroup', _defineProperty({}, config, {
      view: {
        type: StructuredDateInput,
        props: {
          repeating: true
        }
      }
    })), _ownershipDateGroupLi)), _defineProperty(_ns2Collectionobject, 'ownershipAccess', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'ownershipAccessLevels'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'ownershipCategory', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'ownershipCategories'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'ownershipPlace', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'ownershipExchangeMethod', _defineProperty({}, config, {
      view: {
        type: OptionListControlledInput,
        props: {
          optionListName: 'ownershipExchangeMethods'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'ownershipExchangeNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'ownershipExchangePriceCurrency', _defineProperty({}, config, {
      view: {
        type: VocabularyControlledInput,
        props: {
          vocabularyName: 'currency'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'ownershipExchangePriceValue', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'ownersPersonalExperience', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'ownersPersonalResponse', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'ownersReferences', (_ownersReferences = {}, _defineProperty(_ownersReferences, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_ownersReferences, 'ownersReference', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          repeating: true
        }
      }
    })), _ownersReferences)), _defineProperty(_ns2Collectionobject, 'ownersContributionNote', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'viewersRole', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'viewersPersonalExperience', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'viewersPersonalResponse', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'viewersReferences', (_viewersReferences = {}, _defineProperty(_viewersReferences, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_viewersReferences, 'viewersReference', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          repeating: true
        }
      }
    })), _viewersReferences)), _defineProperty(_ns2Collectionobject, 'viewersContributionNote', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'referenceGroupList', (_referenceGroupList = {}, _defineProperty(_referenceGroupList, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_referenceGroupList, 'referenceGroup', (_referenceGroup = {}, _defineProperty(_referenceGroup, config, {
      view: {
        type: CompoundInput,
        props: {
          tabular: true,
          repeating: true
        }
      }
    }), _defineProperty(_referenceGroup, 'reference', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'citation/local,citation/shared,citation/worldcat'
        }
      }
    })), _defineProperty(_referenceGroup, 'referenceNote', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _referenceGroup)), _referenceGroupList)), _defineProperty(_ns2Collectionobject, 'fieldCollectionDateGroup', _defineProperty({}, config, {
      view: {
        type: StructuredDateInput
      }
    })), _defineProperty(_ns2Collectionobject, 'fieldCollectionMethods', (_fieldCollectionMetho2 = {}, _defineProperty(_fieldCollectionMetho2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_fieldCollectionMetho2, 'fieldCollectionMethod', _defineProperty({}, config, {
      view: {
        type: VocabularyControlledInput,
        props: {
          vocabularyName: 'collectionmethod',
          repeating: true
        }
      }
    })), _fieldCollectionMetho2)), _defineProperty(_ns2Collectionobject, 'fieldCollectionNote', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          multiline: true
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'fieldCollectionNumber', _defineProperty({}, config, {
      view: {
        type: TextInput
      }
    })), _defineProperty(_ns2Collectionobject, 'fieldCollectionPlace', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'place/local,place/shared,place/tgn'
        }
      }
    })), _defineProperty(_ns2Collectionobject, 'fieldCollectionSources', (_fieldCollectionSourc2 = {}, _defineProperty(_fieldCollectionSourc2, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_fieldCollectionSourc2, 'fieldCollectionSource', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'person/local,person/shared',
          repeating: true
        }
      }
    })), _fieldCollectionSourc2)), _defineProperty(_ns2Collectionobject, 'fieldCollectors', (_fieldCollectors = {}, _defineProperty(_fieldCollectors, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_fieldCollectors, 'fieldCollector', _defineProperty({}, config, {
      view: {
        type: AuthorityControlledInput,
        props: {
          authority: 'person/local,person/shared,organization/local,organization/shared',
          repeating: true
        }
      }
    })), _fieldCollectors)), _defineProperty(_ns2Collectionobject, 'fieldColEventNames', (_fieldColEventNames = {}, _defineProperty(_fieldColEventNames, config, {
      view: {
        type: CompoundInput
      }
    }), _defineProperty(_fieldColEventNames, 'fieldColEventName', _defineProperty({}, config, {
      view: {
        type: TextInput,
        props: {
          repeating: true
        }
      }
    })), _fieldColEventNames)), _ns2Collectionobject)), _document)
  };
};