[ {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/AsyncListenersReplication.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/TransientEntityStore.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/TransientEntity.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/SimplePropertyValidationException.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/UserConstraintValidationException.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/ConstraintsValidationException.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/DataIntegrityViolationException.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/DatabaseStateIsReadonlyException.kt",
  "extension" : "kt",
  "linesOfCode" : 3,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/CardinalityViolationException.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/UniqueIndexIntegrityException.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/CantRemoveEntityException.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/EntityFieldHandler.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/OrphanChildException.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/EntityRemovedException.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/UniqueIndexViolationException.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/exceptions/NullPropertyException.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/LinkChangeType.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/EntityStoreRefactorings.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/TransientStoreSessionListener.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/TransientEntityChange.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/TransientStoreSession.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/DNQListener.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/EntityCreator.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/ListenerInvocationTransport.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/EntityChangeType.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/TransientChangesTracker.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/LinkChange.kt",
  "extension" : "kt",
  "linesOfCode" : 53,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/IEntityListener.kt",
  "extension" : "kt",
  "linesOfCode" : 3,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/ITransientChangesMultiplexer.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-open-api/src/main/kotlin/jetbrains/exodus/database/ListenerInvocations.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::dnq-open-api" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/XdWrapperNotFoundException.kt",
  "extension" : "kt",
  "linesOfCode" : 3,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/XdModel.kt",
  "extension" : "kt",
  "linesOfCode" : 167,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/query/FakeTransientEntities.kt",
  "extension" : "kt",
  "linesOfCode" : 342,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/query/NodeBaseOperations.kt",
  "extension" : "kt",
  "linesOfCode" : 163,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/query/XdMutableQuery.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/query/XdFilteringQuery.kt",
  "extension" : "kt",
  "linesOfCode" : 192,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/query/XdQuery.kt",
  "extension" : "kt",
  "linesOfCode" : 365,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/XdNaturalWrapper.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdMutableSetProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 80,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdSetProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/PrimitiveTypeUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 79,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdPropertyRequirement.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdTextProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdBlobProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdNullableTextProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdWrappedProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/custom/type/XdCustomTypeBindingRegistry.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/custom/type/XdCustomTypeProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/custom/type/XdCustomTypeBinding.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdConstrainedProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/PropertyConstraints.kt",
  "extension" : "kt",
  "linesOfCode" : 540,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdNullableProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/Factories.kt",
  "extension" : "kt",
  "linesOfCode" : 73,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdNullableBlobProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/simple/XdMutableConstrainedProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/XdEnumEntity.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/store/XdQueryEngine.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/store/EntityLifecycleImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 57,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/store/container/ThreadLocalStoreContainer.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/store/container/StaticStoreContainer.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/store/container/EntityStoreHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/store/container/StoreContainer.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdManyToManyLink.kt",
  "extension" : "kt",
  "linesOfCode" : 66,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdToManyLink.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdManyToOneOptionalLink.kt",
  "extension" : "kt",
  "linesOfCode" : 49,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdOneToManyLink.kt",
  "extension" : "kt",
  "linesOfCode" : 63,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdParentToManyChildrenLink.kt",
  "extension" : "kt",
  "linesOfCode" : 60,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdOneToOneRequiredLink.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdManyChildrenToParentLink.kt",
  "extension" : "kt",
  "linesOfCode" : 40,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdParentToOneOptionalChildLink.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdLink.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdOneToOneOptionalLink.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdParentToOneRequiredChildLink.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdManyChildrenToMultiParentLink.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/Links.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdOneChildToParentLink.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/OnDeletePolicy.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdOneChildToMultiParentLink.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdToOneRequiredLink.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdToOneOptionalLink.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/link/XdManyToOneRequiredLink.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/XdModelPlugin.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/NamedXdEntity.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/XdEnumEntityType.kt",
  "extension" : "kt",
  "linesOfCode" : 63,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/XdNaturalEntityType.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/Transaction.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/XdExtensions.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/XdEntity.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/RequiredPropertyUndefinedException.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/creator/XdFindOrNew.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/LinkDelegates.kt",
  "extension" : "kt",
  "linesOfCode" : 180,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/PropertyDelegates.kt",
  "extension" : "kt",
  "linesOfCode" : 129,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/XdEntityType.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/listener/ClassBasedXdListenersSerialization.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/listener/XdChangesTrackerMultiplexer.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/listener/XdEntityListener.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/singleton/XdSingletonEntityType.kt",
  "extension" : "kt",
  "linesOfCode" : 16,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/singleton/Caches.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/singleton/XdSingletonEntitiesCache.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/management/DnqStatistics.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/management/DnqStatisticsMBean.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/util/XdPropertyCachedProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 23,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/util/TransientEntityUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 87,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/util/FakeEntity.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/util/Types.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/util/DNQMetaDataUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 264,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/util/XdHierarchyNode.kt",
  "extension" : "kt",
  "linesOfCode" : 136,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/util/ReflectionUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 166,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/util/Ids.kt",
  "extension" : "kt",
  "linesOfCode" : 12,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq/src/main/kotlin/kotlinx/dnq/sequence/XdSequenceProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::dnq" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "license/copyright.ftl",
  "extension" : "ftl",
  "linesOfCode" : 10,
  "components" : [ "primary::license" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/association/DirectedAssociationSemantics.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/association/PrimitiveAssociationSemantics.kt",
  "extension" : "kt",
  "linesOfCode" : 314,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/association/AssociationSemantics.kt",
  "extension" : "kt",
  "linesOfCode" : 77,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/association/UndirectedAssociationSemantics.kt",
  "extension" : "kt",
  "linesOfCode" : 59,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/association/OrderedAssociationSemantics.kt",
  "extension" : "kt",
  "linesOfCode" : 35,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/association/AggregationAssociationSemantics.kt",
  "extension" : "kt",
  "linesOfCode" : 52,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/ConstraintsUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 465,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TransientEntityImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 313,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/AddedOrRemovedLinksFromSetTransientEntityIterable.kt",
  "extension" : "kt",
  "linesOfCode" : 97,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/EntityMetaDataUtils.kt",
  "extension" : "kt",
  "linesOfCode" : 28,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TransientSortEngineImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TransientSessionImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 1093,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TransientEntityIterator.kt",
  "extension" : "kt",
  "linesOfCode" : 24,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TransientEntityIterable.kt",
  "extension" : "kt",
  "linesOfCode" : 81,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/PersistentEntityIteratorWrapper.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/PersistentEntityIterableWrapper.kt",
  "extension" : "kt",
  "linesOfCode" : 87,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TransientChangesTrackerImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 199,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/PerTypeIncomingLinkViolation.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/PropertyConstraint.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TransientEntityStoreImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 234,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/ReadOnlyTransientSession.kt",
  "extension" : "kt",
  "linesOfCode" : 71,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TransientEntityUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 26,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/EntityOperations.kt",
  "extension" : "kt",
  "linesOfCode" : 80,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/ReadonlyTransientEntityImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 134,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TransientEntityStoreExt.kt",
  "extension" : "kt",
  "linesOfCode" : 85,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/MessageBuilder.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TransientStoreUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 99,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/ReadOnlyTransientChangesTrackerImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 63,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/PerEntityIncomingLinkViolation.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/PersistentEntityIteratorWithPropIdWrapper.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/ValidationUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 78,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/UniversalEmptyEntityIterable.kt",
  "extension" : "kt",
  "linesOfCode" : 30,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/SessionQueryMixin.kt",
  "extension" : "kt",
  "linesOfCode" : 153,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/IncomingLinkViolation.kt",
  "extension" : "kt",
  "linesOfCode" : 38,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/EntityLifecycle.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/EntityIterableWrapper.kt",
  "extension" : "kt",
  "linesOfCode" : 3,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TxnDiffChangesTracker.kt",
  "extension" : "kt",
  "linesOfCode" : 84,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/jetbrains/exodus/entitystore/Where.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/jetbrains/exodus/entitystore/listeners/ListenerInvocationsImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/jetbrains/exodus/entitystore/listeners/TransientListenersSerialization.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/jetbrains/exodus/entitystore/Internal.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/jetbrains/exodus/entitystore/constraints/PropertyConstraints.kt",
  "extension" : "kt",
  "linesOfCode" : 144,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "dnq-transient-store/src/main/kotlin/jetbrains/exodus/entitystore/TransientChangesMultiplexer.kt",
  "extension" : "kt",
  "linesOfCode" : 184,
  "components" : [ "primary::dnq-transient-store" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "java-8-time/src/main/kotlin/kotlinx/dnq/java/time/ZonedDateTimeProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::java-8-time" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "java-8-time/src/main/kotlin/kotlinx/dnq/java/time/OffsetDateTimeProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::java-8-time" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "java-8-time/src/main/kotlin/kotlinx/dnq/java/time/ZoneOffsetProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 32,
  "components" : [ "primary::java-8-time" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "java-8-time/src/main/kotlin/kotlinx/dnq/java/time/TimeConstraints.kt",
  "extension" : "kt",
  "linesOfCode" : 50,
  "components" : [ "primary::java-8-time" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "java-8-time/src/main/kotlin/kotlinx/dnq/java/time/LocalDateTimeProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::java-8-time" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "java-8-time/src/main/kotlin/kotlinx/dnq/java/time/InstantProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 29,
  "components" : [ "primary::java-8-time" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "java-8-time/src/main/kotlin/kotlinx/dnq/java/time/LocalTimeProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::java-8-time" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "java-8-time/src/main/kotlin/kotlinx/dnq/java/time/OffsetTimeProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 27,
  "components" : [ "primary::java-8-time" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "java-8-time/src/main/kotlin/kotlinx/dnq/java/time/LocalDateProperty.kt",
  "extension" : "kt",
  "linesOfCode" : 31,
  "components" : [ "primary::java-8-time" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "benchmark/src/jmh/kotlin/kotlinx/dnq/benchmark/XdPerformanceUtil.kt",
  "extension" : "kt",
  "linesOfCode" : 78,
  "components" : [ "primary::benchmark" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "benchmark/src/jmh/java/kotlinx/dnq/benchmark/XdBenchmark.java",
  "extension" : "java",
  "linesOfCode" : 27,
  "components" : [ "primary::benchmark" ],
  "concerns" : [ "::Unclassified" ]
} ]