winterbe / KT-16086

Dummy project to reproduce issue KT-16086

Home Page:https://youtrack.jetbrains.com/issue/KT-16086

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

KT-16086

Dummy project to reproduce KT-16086.

The IDEA error can be forced by switching the generic bounds of ReactionRegistry#Descriptor between T : Any and T : IEntity.

Recursion detected on input: IEntity under LockBasedStorageManager@7897bafe (<unknown creating class>)
java.lang.AssertionError: Recursion detected on input: IEntity under LockBasedStorageManager@7897bafe (<unknown creating class>)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.JvmPackageScope.getContributedFunctions(JvmPackageScope.kt:65)
	at org.jetbrains.kotlin.resolve.scopes.ChainedMemberScope.getContributedFunctions(ChainedMemberScope.kt:39)
	at org.jetbrains.kotlin.resolve.scopes.AbstractScopeAdapter.getContributedFunctions(AbstractScopeAdapter.kt:37)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.collectCandidateDescriptors(QualifiedExpressionResolver.kt:203)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processSingleImport(QualifiedExpressionResolver.kt:178)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processImportReference(QualifiedExpressionResolver.kt:154)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:88)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.getImportScope(LazyImportScope.kt:165)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$1.invoke(LazyImportScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager.compute(LockBasedStorageManager.java:211)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.selectSingleFromImports(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportScope.getContributedClassifier(LazyImportScope.kt:194)
	at org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt.findClassifier(ScopeUtils.kt:74)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.resolveDescriptorForType(QualifiedExpressionResolver.kt:71)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveDescriptorForType(TypeResolver.kt:616)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolveTypeElement$1.visitUserType(TypeResolver.kt:162)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:905)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:21)
	at org.jetbrains.kotlin.psi.KtUserType.accept(KtUserType.java:42)
	at org.jetbrains.kotlin.psi.KtElementImplStub.accept(KtElementImplStub.java:58)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveTypeElement(TypeResolver.kt:160)
	at org.jetbrains.kotlin.resolve.TypeResolver.doResolvePossiblyBareType(TypeResolver.kt:117)
	at org.jetbrains.kotlin.resolve.TypeResolver.access$doResolvePossiblyBareType(TypeResolver.kt:52)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:91)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:90)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType.getDelegate(TypeResolver.kt:92)
	at org.jetbrains.kotlin.types.DelegatingType.isError(DelegatingType.java:61)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyTypeParameterDescriptor.resolveUpperBounds(LazyTypeParameterDescriptor.java:80)
	at org.jetbrains.kotlin.descriptors.impl.AbstractTypeParameterDescriptor$TypeParameterTypeConstructor.computeSupertypes(AbstractTypeParameterDescriptor.java:161)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor$supertypes$1.invoke(AbstractTypeConstructor.kt:35)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor$supertypes$1.invoke(AbstractTypeConstructor.kt:22)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor.getSupertypes(AbstractTypeConstructor.kt:23)
	at org.jetbrains.kotlin.descriptors.impl.AbstractTypeParameterDescriptor.getUpperBounds(AbstractTypeParameterDescriptor.java:116)
	at org.jetbrains.kotlin.load.java.lazy.types.LazyJavaTypeResolverKt.getErasedUpperBound(LazyJavaTypeResolver.kt:428)
	at org.jetbrains.kotlin.load.java.lazy.types.LazyJavaTypeResolver$LazyJavaClassifierType.computeArguments(LazyJavaTypeResolver.kt:211)
	at org.jetbrains.kotlin.types.AbstractLazyType$arguments$1.invoke(AbstractLazyType.kt:32)
	at org.jetbrains.kotlin.types.AbstractLazyType$arguments$1.invoke(AbstractLazyType.kt:25)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.types.AbstractLazyType.getArguments(AbstractLazyType.kt:33)
	at org.jetbrains.kotlin.types.DelegatingType.getArguments(DelegatingType.java:39)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt$computeIndexedQualifiersForOverride$1$1.invoke(typeQualifiers.kt:104)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt$computeIndexedQualifiersForOverride$1.invoke(typeQualifiers.kt:114)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt.computeIndexedQualifiersForOverride(typeQualifiers.kt:119)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureParts.enhance(signatureEnhancement.kt:65)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureEnhancementKt.enhanceSignature(signatureEnhancement.kt:48)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureEnhancementKt.enhanceSignatures(signatureEnhancement.kt:25)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:91)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassMemberScope.getContributedFunctions(LazyJavaClassMemberScope.kt:669)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.computeDescriptors(LazyJavaScope.kt:313)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$allDescriptors$1.invoke(LazyJavaScope.kt:57)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$allDescriptors$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedDescriptors(LazyJavaScope.kt:292)
	at org.jetbrains.kotlin.resolve.DescriptorUtils.getAllDescriptors(DescriptorUtils.java:566)
	at org.jetbrains.kotlin.load.java.sam.SingleAbstractMethodUtils.getAbstractMembers(SingleAbstractMethodUtils.java:48)
	at org.jetbrains.kotlin.load.java.sam.SingleAbstractMethodUtils.getSingleAbstractMethodOrNull(SingleAbstractMethodUtils.java:104)
	at org.jetbrains.kotlin.load.java.sam.SamConversionResolverImpl.resolveFunctionTypeIfSamInterface(SamConversionResolverImpl.kt:48)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor$functionTypeForSamInterface$1.invoke(LazyJavaClassDescriptor.kt:116)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor$functionTypeForSamInterface$1.invoke(LazyJavaClassDescriptor.kt:48)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor.getFunctionTypeForSamInterface(LazyJavaClassDescriptor.kt:129)
	at org.jetbrains.kotlin.load.java.sam.SamConversionResolverImpl.resolveSamConstructor(SamConversionResolverImpl.kt:33)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaPackageScope.computeNonDeclaredFunctions(LazyJavaPackageScope.kt:152)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:89)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.JvmPackageScope.getContributedFunctions(JvmPackageScope.kt:65)
	at org.jetbrains.kotlin.resolve.scopes.ChainedMemberScope.getContributedFunctions(ChainedMemberScope.kt:39)
	at org.jetbrains.kotlin.resolve.scopes.AbstractScopeAdapter.getContributedFunctions(AbstractScopeAdapter.kt:37)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.collectCandidateDescriptors(QualifiedExpressionResolver.kt:203)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processSingleImport(QualifiedExpressionResolver.kt:178)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processImportReference(QualifiedExpressionResolver.kt:154)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:88)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.getImportScope(LazyImportScope.kt:165)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$1.invoke(LazyImportScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager.compute(LockBasedStorageManager.java:211)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.selectSingleFromImports(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportScope.getContributedClassifier(LazyImportScope.kt:194)
	at org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt.findClassifier(ScopeUtils.kt:74)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.resolveDescriptorForType(QualifiedExpressionResolver.kt:71)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveDescriptorForType(TypeResolver.kt:616)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolveTypeElement$1.visitUserType(TypeResolver.kt:162)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:905)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:21)
	at org.jetbrains.kotlin.psi.KtUserType.accept(KtUserType.java:42)
	at org.jetbrains.kotlin.psi.KtElementImplStub.accept(KtElementImplStub.java:58)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveTypeElement(TypeResolver.kt:160)
	at org.jetbrains.kotlin.resolve.TypeResolver.doResolvePossiblyBareType(TypeResolver.kt:117)
	at org.jetbrains.kotlin.resolve.TypeResolver.access$doResolvePossiblyBareType(TypeResolver.kt:52)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:91)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:90)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType.getDelegate(TypeResolver.kt:92)
	at org.jetbrains.kotlin.types.DelegatingType.isError(DelegatingType.java:61)
	at org.jetbrains.kotlin.descriptors.impl.TypeParameterDescriptorImpl.doAddUpperBound(TypeParameterDescriptorImpl.java:128)
	at org.jetbrains.kotlin.descriptors.impl.TypeParameterDescriptorImpl.addUpperBound(TypeParameterDescriptorImpl.java:124)
	at org.jetbrains.kotlin.resolve.DescriptorResolver.resolveGenericBounds(DescriptorResolver.java:493)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.initializeFunctionDescriptorAndExplicitReturnType(FunctionDescriptorResolver.kt:147)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.resolveFunctionDescriptor(FunctionDescriptorResolver.kt:104)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.resolveFunctionDescriptor(FunctionDescriptorResolver.kt:73)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.doGetFunctions(AbstractLazyMemberScope.kt:79)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.access$doGetFunctions(AbstractLazyMemberScope.kt:41)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope$functionDescriptors$1.invoke(AbstractLazyMemberScope.kt:51)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope$functionDescriptors$1.invoke(AbstractLazyMemberScope.kt:41)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.getContributedFunctions(AbstractLazyMemberScope.kt:70)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.getContributedFunctions(LazyClassMemberScope.kt:126)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.computeDescriptorsFromDeclaredElements(AbstractLazyMemberScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope$descriptorsFromDeclaredElements$1.invoke(LazyClassMemberScope.kt:56)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope$descriptorsFromDeclaredElements$1.invoke(LazyClassMemberScope.kt:48)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.getContributedDescriptors(LazyClassMemberScope.kt:64)
	at org.jetbrains.kotlin.resolve.scopes.InnerClassesScopeWrapper.getContributedDescriptors(InnerClassesScopeWrapper.kt:29)
	at org.jetbrains.kotlin.resolve.scopes.InnerClassesScopeWrapper.getContributedDescriptors(InnerClassesScopeWrapper.kt:24)
	at org.jetbrains.kotlin.resolve.scopes.ResolutionScope$DefaultImpls.getContributedDescriptors$default(ResolutionScope.kt:37)
	at org.jetbrains.kotlin.resolve.scopes.LexicalChainedScope.getContributedDescriptors(LexicalChainedScope.kt:41)
	at org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt.collectDescriptorsFiltered(ScopeUtils.kt:56)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getVariantsForUserType(ReferenceVariantsHelper.kt:221)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getReferenceVariantsNoVisibilityFilter(ReferenceVariantsHelper.kt:143)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getReferenceVariants(ReferenceVariantsHelper.kt:71)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getReferenceVariants(ReferenceVariantsHelper.kt:57)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.collectReferenceVariants(CompletionSession.kt:312)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.collectReferenceVariants$default(CompletionSession.kt:311)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariants$2.invoke(CompletionSession.kt:304)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariants$2.invoke(CompletionSession.kt:75)
	at kotlin.SynchronizedLazyImpl.getValue(Lazy.kt:131)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.getReferenceVariants(CompletionSession.kt)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariantsWithNonInitializedVarExcluded$2.invoke(CompletionSession.kt:308)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariantsWithNonInitializedVarExcluded$2.invoke(CompletionSession.kt:75)
	at kotlin.SynchronizedLazyImpl.getValue(Lazy.kt:131)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.getReferenceVariantsWithNonInitializedVarExcluded(CompletionSession.kt)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession$ALL$1$doComplete$contextVariableTypesForReferenceVariants$1.invoke(BasicCompletionSession.kt:207)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession$ALL$1$doComplete$contextVariableTypesForReferenceVariants$1.invoke(BasicCompletionSession.kt:159)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.withCollectRequiredContextVariableTypes(CompletionSession.kt:433)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession$ALL$1.doComplete(BasicCompletionSession.kt:206)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession.doComplete(BasicCompletionSession.kt:130)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.complete(CompletionSession.kt:238)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.doComplete(KotlinCompletionContributor.kt:299)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.doComplete$default(KotlinCompletionContributor.kt:260)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.performCompletion(KotlinCompletionContributor.kt:253)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.access$performCompletion(KotlinCompletionContributor.kt:47)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor$provider$1.addCompletions(KotlinCompletionContributor.kt:60)
	at com.intellij.codeInsight.completion.CompletionProvider.addCompletionVariants(CompletionProvider.java:36)
	at com.intellij.codeInsight.completion.CompletionContributor.fillCompletionVariants(CompletionContributor.java:151)
	at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:81)
	at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:132)
	at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:125)
	at com.intellij.codeInsight.template.impl.LiveTemplateCompletionContributor$2.addCompletions(LiveTemplateCompletionContributor.java:88)
	at com.intellij.codeInsight.completion.CompletionProvider.addCompletionVariants(CompletionProvider.java:36)
	at com.intellij.codeInsight.completion.CompletionContributor.fillCompletionVariants(CompletionContributor.java:151)
	at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:81)
	at com.intellij.codeInsight.completion.CompletionService.performCompletion(CompletionService.java:110)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator.a(CompletionProgressIndicator.java:773)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator.access$500(CompletionProgressIndicator.java:91)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator$1CalculateItems.run(CompletionProgressIndicator.java:755)
	at com.intellij.codeInsight.completion.AsyncCompletion.b(CompletionThreading.java:87)
	at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:884)
	at com.intellij.codeInsight.completion.AsyncCompletion.a(CompletionThreading.java:84)
	at com.intellij.openapi.progress.impl.CoreProgressManager$3.run(CoreProgressManager.java:179)
	at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:568)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:519)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:164)
	at com.intellij.codeInsight.completion.AsyncCompletion.a(CompletionThreading.java:82)
	at com.intellij.openapi.application.impl.ApplicationImpl$2.run(ApplicationImpl.java:309)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)


java.lang.AssertionError: Recursion detected on input: IEntity under LockBasedStorageManager@5e67a837 (<unknown creating class>)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.JvmPackageScope.getContributedFunctions(JvmPackageScope.kt:65)
	at org.jetbrains.kotlin.resolve.scopes.ChainedMemberScope.getContributedFunctions(ChainedMemberScope.kt:39)
	at org.jetbrains.kotlin.resolve.scopes.AbstractScopeAdapter.getContributedFunctions(AbstractScopeAdapter.kt:37)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.collectCandidateDescriptors(QualifiedExpressionResolver.kt:203)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processSingleImport(QualifiedExpressionResolver.kt:178)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processImportReference(QualifiedExpressionResolver.kt:154)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:88)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.getImportScope(LazyImportScope.kt:165)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$1.invoke(LazyImportScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager.compute(LockBasedStorageManager.java:211)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.selectSingleFromImports(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportScope.getContributedClassifier(LazyImportScope.kt:194)
	at org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt.findClassifier(ScopeUtils.kt:74)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.resolveDescriptorForType(QualifiedExpressionResolver.kt:71)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveDescriptorForType(TypeResolver.kt:616)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolveTypeElement$1.visitUserType(TypeResolver.kt:162)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:905)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:21)
	at org.jetbrains.kotlin.psi.KtUserType.accept(KtUserType.java:42)
	at org.jetbrains.kotlin.psi.KtElementImplStub.accept(KtElementImplStub.java:58)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveTypeElement(TypeResolver.kt:160)
	at org.jetbrains.kotlin.resolve.TypeResolver.doResolvePossiblyBareType(TypeResolver.kt:117)
	at org.jetbrains.kotlin.resolve.TypeResolver.access$doResolvePossiblyBareType(TypeResolver.kt:52)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:91)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:90)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType.getDelegate(TypeResolver.kt:92)
	at org.jetbrains.kotlin.types.DelegatingType.isError(DelegatingType.java:61)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyTypeParameterDescriptor.resolveUpperBounds(LazyTypeParameterDescriptor.java:80)
	at org.jetbrains.kotlin.descriptors.impl.AbstractTypeParameterDescriptor$TypeParameterTypeConstructor.computeSupertypes(AbstractTypeParameterDescriptor.java:161)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor$supertypes$1.invoke(AbstractTypeConstructor.kt:35)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor$supertypes$1.invoke(AbstractTypeConstructor.kt:22)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor.getSupertypes(AbstractTypeConstructor.kt:23)
	at org.jetbrains.kotlin.descriptors.impl.AbstractTypeParameterDescriptor.getUpperBounds(AbstractTypeParameterDescriptor.java:116)
	at org.jetbrains.kotlin.load.java.lazy.types.LazyJavaTypeResolverKt.getErasedUpperBound(LazyJavaTypeResolver.kt:428)
	at org.jetbrains.kotlin.load.java.lazy.types.LazyJavaTypeResolver$LazyJavaClassifierType.computeArguments(LazyJavaTypeResolver.kt:211)
	at org.jetbrains.kotlin.types.AbstractLazyType$arguments$1.invoke(AbstractLazyType.kt:32)
	at org.jetbrains.kotlin.types.AbstractLazyType$arguments$1.invoke(AbstractLazyType.kt:25)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.types.AbstractLazyType.getArguments(AbstractLazyType.kt:33)
	at org.jetbrains.kotlin.types.DelegatingType.getArguments(DelegatingType.java:39)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt$computeIndexedQualifiersForOverride$1$1.invoke(typeQualifiers.kt:104)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt$computeIndexedQualifiersForOverride$1.invoke(typeQualifiers.kt:114)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt.computeIndexedQualifiersForOverride(typeQualifiers.kt:119)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureParts.enhance(signatureEnhancement.kt:65)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureEnhancementKt.enhanceSignature(signatureEnhancement.kt:48)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureEnhancementKt.enhanceSignatures(signatureEnhancement.kt:25)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:91)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassMemberScope.getContributedFunctions(LazyJavaClassMemberScope.kt:669)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.computeDescriptors(LazyJavaScope.kt:313)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$allDescriptors$1.invoke(LazyJavaScope.kt:57)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$allDescriptors$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedDescriptors(LazyJavaScope.kt:292)
	at org.jetbrains.kotlin.resolve.DescriptorUtils.getAllDescriptors(DescriptorUtils.java:566)
	at org.jetbrains.kotlin.load.java.sam.SingleAbstractMethodUtils.getAbstractMembers(SingleAbstractMethodUtils.java:48)
	at org.jetbrains.kotlin.load.java.sam.SingleAbstractMethodUtils.getSingleAbstractMethodOrNull(SingleAbstractMethodUtils.java:104)
	at org.jetbrains.kotlin.load.java.sam.SamConversionResolverImpl.resolveFunctionTypeIfSamInterface(SamConversionResolverImpl.kt:48)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor$functionTypeForSamInterface$1.invoke(LazyJavaClassDescriptor.kt:116)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor$functionTypeForSamInterface$1.invoke(LazyJavaClassDescriptor.kt:48)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor.getFunctionTypeForSamInterface(LazyJavaClassDescriptor.kt:129)
	at org.jetbrains.kotlin.load.java.sam.SamConversionResolverImpl.resolveSamConstructor(SamConversionResolverImpl.kt:33)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaPackageScope.computeNonDeclaredFunctions(LazyJavaPackageScope.kt:152)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:89)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.JvmPackageScope.getContributedFunctions(JvmPackageScope.kt:65)
	at org.jetbrains.kotlin.resolve.scopes.ChainedMemberScope.getContributedFunctions(ChainedMemberScope.kt:39)
	at org.jetbrains.kotlin.resolve.scopes.AbstractScopeAdapter.getContributedFunctions(AbstractScopeAdapter.kt:37)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.collectCandidateDescriptors(QualifiedExpressionResolver.kt:203)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processSingleImport(QualifiedExpressionResolver.kt:178)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processImportReference(QualifiedExpressionResolver.kt:154)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:88)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.getImportScope(LazyImportScope.kt:165)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$1.invoke(LazyImportScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager.compute(LockBasedStorageManager.java:211)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.selectSingleFromImports(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportScope.getContributedClassifier(LazyImportScope.kt:194)
	at org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt.findClassifier(ScopeUtils.kt:74)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.resolveDescriptorForType(QualifiedExpressionResolver.kt:71)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveDescriptorForType(TypeResolver.kt:616)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolveTypeElement$1.visitUserType(TypeResolver.kt:162)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:905)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:21)
	at org.jetbrains.kotlin.psi.KtUserType.accept(KtUserType.java:42)
	at org.jetbrains.kotlin.psi.KtElementImplStub.accept(KtElementImplStub.java:58)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveTypeElement(TypeResolver.kt:160)
	at org.jetbrains.kotlin.resolve.TypeResolver.doResolvePossiblyBareType(TypeResolver.kt:117)
	at org.jetbrains.kotlin.resolve.TypeResolver.access$doResolvePossiblyBareType(TypeResolver.kt:52)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:91)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:90)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType.getDelegate(TypeResolver.kt:92)
	at org.jetbrains.kotlin.types.DelegatingType.isError(DelegatingType.java:61)
	at org.jetbrains.kotlin.descriptors.impl.TypeParameterDescriptorImpl.doAddUpperBound(TypeParameterDescriptorImpl.java:128)
	at org.jetbrains.kotlin.descriptors.impl.TypeParameterDescriptorImpl.addUpperBound(TypeParameterDescriptorImpl.java:124)
	at org.jetbrains.kotlin.resolve.DescriptorResolver.resolveGenericBounds(DescriptorResolver.java:493)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.initializeFunctionDescriptorAndExplicitReturnType(FunctionDescriptorResolver.kt:147)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.resolveFunctionDescriptor(FunctionDescriptorResolver.kt:104)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.resolveFunctionDescriptor(FunctionDescriptorResolver.kt:73)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.doGetFunctions(AbstractLazyMemberScope.kt:79)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.access$doGetFunctions(AbstractLazyMemberScope.kt:41)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope$functionDescriptors$1.invoke(AbstractLazyMemberScope.kt:51)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope$functionDescriptors$1.invoke(AbstractLazyMemberScope.kt:41)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.getContributedFunctions(AbstractLazyMemberScope.kt:70)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.getContributedFunctions(LazyClassMemberScope.kt:126)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.computeDescriptorsFromDeclaredElements(AbstractLazyMemberScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope$descriptorsFromDeclaredElements$1.invoke(LazyClassMemberScope.kt:56)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope$descriptorsFromDeclaredElements$1.invoke(LazyClassMemberScope.kt:48)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.getContributedDescriptors(LazyClassMemberScope.kt:64)
	at org.jetbrains.kotlin.resolve.scopes.InnerClassesScopeWrapper.getContributedDescriptors(InnerClassesScopeWrapper.kt:29)
	at org.jetbrains.kotlin.resolve.scopes.InnerClassesScopeWrapper.getContributedDescriptors(InnerClassesScopeWrapper.kt:24)
	at org.jetbrains.kotlin.resolve.scopes.ResolutionScope$DefaultImpls.getContributedDescriptors$default(ResolutionScope.kt:37)
	at org.jetbrains.kotlin.resolve.scopes.LexicalChainedScope.getContributedDescriptors(LexicalChainedScope.kt:41)
	at org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt.collectDescriptorsFiltered(ScopeUtils.kt:56)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getVariantsForUserType(ReferenceVariantsHelper.kt:221)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getReferenceVariantsNoVisibilityFilter(ReferenceVariantsHelper.kt:143)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getReferenceVariants(ReferenceVariantsHelper.kt:71)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getReferenceVariants(ReferenceVariantsHelper.kt:57)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.collectReferenceVariants(CompletionSession.kt:312)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.collectReferenceVariants$default(CompletionSession.kt:311)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariants$2.invoke(CompletionSession.kt:304)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariants$2.invoke(CompletionSession.kt:75)
	at kotlin.SynchronizedLazyImpl.getValue(Lazy.kt:131)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.getReferenceVariants(CompletionSession.kt)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariantsWithNonInitializedVarExcluded$2.invoke(CompletionSession.kt:308)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariantsWithNonInitializedVarExcluded$2.invoke(CompletionSession.kt:75)
	at kotlin.SynchronizedLazyImpl.getValue(Lazy.kt:131)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.getReferenceVariantsWithNonInitializedVarExcluded(CompletionSession.kt)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession$ALL$1$doComplete$contextVariableTypesForReferenceVariants$1.invoke(BasicCompletionSession.kt:207)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession$ALL$1$doComplete$contextVariableTypesForReferenceVariants$1.invoke(BasicCompletionSession.kt:159)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.withCollectRequiredContextVariableTypes(CompletionSession.kt:433)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession$ALL$1.doComplete(BasicCompletionSession.kt:206)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession.doComplete(BasicCompletionSession.kt:130)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.complete(CompletionSession.kt:238)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.doComplete(KotlinCompletionContributor.kt:299)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.doComplete$default(KotlinCompletionContributor.kt:260)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.performCompletion(KotlinCompletionContributor.kt:253)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.access$performCompletion(KotlinCompletionContributor.kt:47)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor$provider$1.addCompletions(KotlinCompletionContributor.kt:60)
	at com.intellij.codeInsight.completion.CompletionProvider.addCompletionVariants(CompletionProvider.java:36)
	at com.intellij.codeInsight.completion.CompletionContributor.fillCompletionVariants(CompletionContributor.java:151)
	at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:81)
	at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:132)
	at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:125)
	at com.intellij.codeInsight.template.impl.LiveTemplateCompletionContributor$2.addCompletions(LiveTemplateCompletionContributor.java:88)
	at com.intellij.codeInsight.completion.CompletionProvider.addCompletionVariants(CompletionProvider.java:36)
	at com.intellij.codeInsight.completion.CompletionContributor.fillCompletionVariants(CompletionContributor.java:151)
	at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:81)
	at com.intellij.codeInsight.completion.CompletionService.performCompletion(CompletionService.java:110)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator.a(CompletionProgressIndicator.java:773)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator.access$500(CompletionProgressIndicator.java:91)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator$1CalculateItems.run(CompletionProgressIndicator.java:755)
	at com.intellij.codeInsight.completion.AsyncCompletion.b(CompletionThreading.java:87)
	at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:884)
	at com.intellij.codeInsight.completion.AsyncCompletion.a(CompletionThreading.java:84)
	at com.intellij.openapi.progress.impl.CoreProgressManager$3.run(CoreProgressManager.java:179)
	at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:568)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:519)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:164)
	at com.intellij.codeInsight.completion.AsyncCompletion.a(CompletionThreading.java:82)
	at com.intellij.openapi.application.impl.ApplicationImpl$2.run(ApplicationImpl.java:309)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)


java.lang.AssertionError: Recursion detected on input: IEntity under LockBasedStorageManager@23121cf6 (<unknown creating class>)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.JvmPackageScope.getContributedFunctions(JvmPackageScope.kt:65)
	at org.jetbrains.kotlin.resolve.scopes.ChainedMemberScope.getContributedFunctions(ChainedMemberScope.kt:39)
	at org.jetbrains.kotlin.resolve.scopes.AbstractScopeAdapter.getContributedFunctions(AbstractScopeAdapter.kt:37)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.collectCandidateDescriptors(QualifiedExpressionResolver.kt:203)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processSingleImport(QualifiedExpressionResolver.kt:178)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processImportReference(QualifiedExpressionResolver.kt:154)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:88)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.getImportScope(LazyImportScope.kt:165)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$1.invoke(LazyImportScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager.compute(LockBasedStorageManager.java:211)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.selectSingleFromImports(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportScope.getContributedClassifier(LazyImportScope.kt:194)
	at org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt.findClassifier(ScopeUtils.kt:74)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.resolveDescriptorForType(QualifiedExpressionResolver.kt:71)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveDescriptorForType(TypeResolver.kt:616)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolveTypeElement$1.visitUserType(TypeResolver.kt:162)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:905)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:21)
	at org.jetbrains.kotlin.psi.KtUserType.accept(KtUserType.java:42)
	at org.jetbrains.kotlin.psi.KtElementImplStub.accept(KtElementImplStub.java:58)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveTypeElement(TypeResolver.kt:160)
	at org.jetbrains.kotlin.resolve.TypeResolver.doResolvePossiblyBareType(TypeResolver.kt:117)
	at org.jetbrains.kotlin.resolve.TypeResolver.access$doResolvePossiblyBareType(TypeResolver.kt:52)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:91)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:90)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType.getDelegate(TypeResolver.kt:92)
	at org.jetbrains.kotlin.types.DelegatingType.isError(DelegatingType.java:61)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyTypeParameterDescriptor.resolveUpperBounds(LazyTypeParameterDescriptor.java:80)
	at org.jetbrains.kotlin.descriptors.impl.AbstractTypeParameterDescriptor$TypeParameterTypeConstructor.computeSupertypes(AbstractTypeParameterDescriptor.java:161)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor$supertypes$1.invoke(AbstractTypeConstructor.kt:35)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor$supertypes$1.invoke(AbstractTypeConstructor.kt:22)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor.getSupertypes(AbstractTypeConstructor.kt:23)
	at org.jetbrains.kotlin.descriptors.impl.AbstractTypeParameterDescriptor.getUpperBounds(AbstractTypeParameterDescriptor.java:116)
	at org.jetbrains.kotlin.load.java.lazy.types.LazyJavaTypeResolverKt.getErasedUpperBound(LazyJavaTypeResolver.kt:428)
	at org.jetbrains.kotlin.load.java.lazy.types.LazyJavaTypeResolver$LazyJavaClassifierType.computeArguments(LazyJavaTypeResolver.kt:211)
	at org.jetbrains.kotlin.types.AbstractLazyType$arguments$1.invoke(AbstractLazyType.kt:32)
	at org.jetbrains.kotlin.types.AbstractLazyType$arguments$1.invoke(AbstractLazyType.kt:25)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.types.AbstractLazyType.getArguments(AbstractLazyType.kt:33)
	at org.jetbrains.kotlin.types.DelegatingType.getArguments(DelegatingType.java:39)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt$computeIndexedQualifiersForOverride$1$1.invoke(typeQualifiers.kt:104)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt$computeIndexedQualifiersForOverride$1.invoke(typeQualifiers.kt:114)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt.computeIndexedQualifiersForOverride(typeQualifiers.kt:119)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureParts.enhance(signatureEnhancement.kt:65)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureEnhancementKt.enhanceSignature(signatureEnhancement.kt:48)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureEnhancementKt.enhanceSignatures(signatureEnhancement.kt:25)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:91)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassMemberScope.getContributedFunctions(LazyJavaClassMemberScope.kt:669)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.computeDescriptors(LazyJavaScope.kt:313)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$allDescriptors$1.invoke(LazyJavaScope.kt:57)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$allDescriptors$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedDescriptors(LazyJavaScope.kt:292)
	at org.jetbrains.kotlin.resolve.DescriptorUtils.getAllDescriptors(DescriptorUtils.java:566)
	at org.jetbrains.kotlin.load.java.sam.SingleAbstractMethodUtils.getAbstractMembers(SingleAbstractMethodUtils.java:48)
	at org.jetbrains.kotlin.load.java.sam.SingleAbstractMethodUtils.getSingleAbstractMethodOrNull(SingleAbstractMethodUtils.java:104)
	at org.jetbrains.kotlin.load.java.sam.SamConversionResolverImpl.resolveFunctionTypeIfSamInterface(SamConversionResolverImpl.kt:48)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor$functionTypeForSamInterface$1.invoke(LazyJavaClassDescriptor.kt:116)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor$functionTypeForSamInterface$1.invoke(LazyJavaClassDescriptor.kt:48)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor.getFunctionTypeForSamInterface(LazyJavaClassDescriptor.kt:129)
	at org.jetbrains.kotlin.load.java.sam.SamConversionResolverImpl.resolveSamConstructor(SamConversionResolverImpl.kt:33)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaPackageScope.computeNonDeclaredFunctions(LazyJavaPackageScope.kt:152)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:89)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.JvmPackageScope.getContributedFunctions(JvmPackageScope.kt:65)
	at org.jetbrains.kotlin.resolve.scopes.ChainedMemberScope.getContributedFunctions(ChainedMemberScope.kt:39)
	at org.jetbrains.kotlin.resolve.scopes.AbstractScopeAdapter.getContributedFunctions(AbstractScopeAdapter.kt:37)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.collectCandidateDescriptors(QualifiedExpressionResolver.kt:203)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processSingleImport(QualifiedExpressionResolver.kt:178)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processImportReference(QualifiedExpressionResolver.kt:154)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:88)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.getImportScope(LazyImportScope.kt:165)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$1.invoke(LazyImportScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager.compute(LockBasedStorageManager.java:211)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.selectSingleFromImports(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportScope.getContributedClassifier(LazyImportScope.kt:194)
	at org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt.findClassifier(ScopeUtils.kt:74)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.resolveDescriptorForType(QualifiedExpressionResolver.kt:71)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveDescriptorForType(TypeResolver.kt:616)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolveTypeElement$1.visitUserType(TypeResolver.kt:162)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:905)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:21)
	at org.jetbrains.kotlin.psi.KtUserType.accept(KtUserType.java:42)
	at org.jetbrains.kotlin.psi.KtElementImplStub.accept(KtElementImplStub.java:58)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveTypeElement(TypeResolver.kt:160)
	at org.jetbrains.kotlin.resolve.TypeResolver.doResolvePossiblyBareType(TypeResolver.kt:117)
	at org.jetbrains.kotlin.resolve.TypeResolver.access$doResolvePossiblyBareType(TypeResolver.kt:52)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:91)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:90)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType.getDelegate(TypeResolver.kt:92)
	at org.jetbrains.kotlin.types.DelegatingType.isError(DelegatingType.java:61)
	at org.jetbrains.kotlin.descriptors.impl.TypeParameterDescriptorImpl.doAddUpperBound(TypeParameterDescriptorImpl.java:128)
	at org.jetbrains.kotlin.descriptors.impl.TypeParameterDescriptorImpl.addUpperBound(TypeParameterDescriptorImpl.java:124)
	at org.jetbrains.kotlin.resolve.DescriptorResolver.resolveGenericBounds(DescriptorResolver.java:493)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.initializeFunctionDescriptorAndExplicitReturnType(FunctionDescriptorResolver.kt:147)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.resolveFunctionDescriptor(FunctionDescriptorResolver.kt:104)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.resolveFunctionDescriptor(FunctionDescriptorResolver.kt:73)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.doGetFunctions(AbstractLazyMemberScope.kt:79)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.access$doGetFunctions(AbstractLazyMemberScope.kt:41)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope$functionDescriptors$1.invoke(AbstractLazyMemberScope.kt:51)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope$functionDescriptors$1.invoke(AbstractLazyMemberScope.kt:41)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.getContributedFunctions(AbstractLazyMemberScope.kt:70)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.getContributedFunctions(LazyClassMemberScope.kt:126)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.computeDescriptorsFromDeclaredElements(AbstractLazyMemberScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope$descriptorsFromDeclaredElements$1.invoke(LazyClassMemberScope.kt:56)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope$descriptorsFromDeclaredElements$1.invoke(LazyClassMemberScope.kt:48)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.getContributedDescriptors(LazyClassMemberScope.kt:64)
	at org.jetbrains.kotlin.resolve.scopes.InnerClassesScopeWrapper.getContributedDescriptors(InnerClassesScopeWrapper.kt:29)
	at org.jetbrains.kotlin.resolve.scopes.InnerClassesScopeWrapper.getContributedDescriptors(InnerClassesScopeWrapper.kt:24)
	at org.jetbrains.kotlin.resolve.scopes.ResolutionScope$DefaultImpls.getContributedDescriptors$default(ResolutionScope.kt:37)
	at org.jetbrains.kotlin.resolve.scopes.LexicalChainedScope.getContributedDescriptors(LexicalChainedScope.kt:41)
	at org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt.collectDescriptorsFiltered(ScopeUtils.kt:56)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getVariantsForUserType(ReferenceVariantsHelper.kt:221)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getReferenceVariantsNoVisibilityFilter(ReferenceVariantsHelper.kt:143)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getReferenceVariants(ReferenceVariantsHelper.kt:71)
	at org.jetbrains.kotlin.idea.codeInsight.ReferenceVariantsHelper.getReferenceVariants(ReferenceVariantsHelper.kt:57)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.collectReferenceVariants(CompletionSession.kt:312)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.collectReferenceVariants$default(CompletionSession.kt:311)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariants$2.invoke(CompletionSession.kt:304)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariants$2.invoke(CompletionSession.kt:75)
	at kotlin.SynchronizedLazyImpl.getValue(Lazy.kt:131)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.getReferenceVariants(CompletionSession.kt)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariantsWithNonInitializedVarExcluded$2.invoke(CompletionSession.kt:308)
	at org.jetbrains.kotlin.idea.completion.CompletionSession$referenceVariantsWithNonInitializedVarExcluded$2.invoke(CompletionSession.kt:75)
	at kotlin.SynchronizedLazyImpl.getValue(Lazy.kt:131)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.getReferenceVariantsWithNonInitializedVarExcluded(CompletionSession.kt)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession$ALL$1$doComplete$contextVariableTypesForReferenceVariants$1.invoke(BasicCompletionSession.kt:207)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession$ALL$1$doComplete$contextVariableTypesForReferenceVariants$1.invoke(BasicCompletionSession.kt:159)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.withCollectRequiredContextVariableTypes(CompletionSession.kt:433)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession$ALL$1.doComplete(BasicCompletionSession.kt:206)
	at org.jetbrains.kotlin.idea.completion.BasicCompletionSession.doComplete(BasicCompletionSession.kt:130)
	at org.jetbrains.kotlin.idea.completion.CompletionSession.complete(CompletionSession.kt:238)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.doComplete(KotlinCompletionContributor.kt:299)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.doComplete$default(KotlinCompletionContributor.kt:260)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.performCompletion(KotlinCompletionContributor.kt:253)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor.access$performCompletion(KotlinCompletionContributor.kt:47)
	at org.jetbrains.kotlin.idea.completion.KotlinCompletionContributor$provider$1.addCompletions(KotlinCompletionContributor.kt:60)
	at com.intellij.codeInsight.completion.CompletionProvider.addCompletionVariants(CompletionProvider.java:36)
	at com.intellij.codeInsight.completion.CompletionContributor.fillCompletionVariants(CompletionContributor.java:151)
	at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:81)
	at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:132)
	at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:125)
	at com.intellij.codeInsight.template.impl.LiveTemplateCompletionContributor$2.addCompletions(LiveTemplateCompletionContributor.java:88)
	at com.intellij.codeInsight.completion.CompletionProvider.addCompletionVariants(CompletionProvider.java:36)
	at com.intellij.codeInsight.completion.CompletionContributor.fillCompletionVariants(CompletionContributor.java:151)
	at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:81)
	at com.intellij.codeInsight.completion.CompletionService.performCompletion(CompletionService.java:110)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator.a(CompletionProgressIndicator.java:773)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator.access$500(CompletionProgressIndicator.java:91)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator$1CalculateItems.run(CompletionProgressIndicator.java:755)
	at com.intellij.codeInsight.completion.AsyncCompletion.b(CompletionThreading.java:87)
	at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:884)
	at com.intellij.codeInsight.completion.AsyncCompletion.a(CompletionThreading.java:84)
	at com.intellij.openapi.progress.impl.CoreProgressManager$3.run(CoreProgressManager.java:179)
	at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:568)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:519)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:164)
	at com.intellij.codeInsight.completion.AsyncCompletion.a(CompletionThreading.java:82)
	at com.intellij.openapi.application.impl.ApplicationImpl$2.run(ApplicationImpl.java:309)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)


java.lang.AssertionError: Recursion detected on input: IEntity under LockBasedStorageManager@30d3a9a4 (<unknown creating class>)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.JvmPackageScope.getContributedFunctions(JvmPackageScope.kt:65)
	at org.jetbrains.kotlin.resolve.scopes.ChainedMemberScope.getContributedFunctions(ChainedMemberScope.kt:39)
	at org.jetbrains.kotlin.resolve.scopes.AbstractScopeAdapter.getContributedFunctions(AbstractScopeAdapter.kt:37)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.collectCandidateDescriptors(QualifiedExpressionResolver.kt:203)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processSingleImport(QualifiedExpressionResolver.kt:178)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processImportReference(QualifiedExpressionResolver.kt:154)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:88)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.getImportScope(LazyImportScope.kt:165)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$1.invoke(LazyImportScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager.compute(LockBasedStorageManager.java:211)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.selectSingleFromImports(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportScope.getContributedClassifier(LazyImportScope.kt:194)
	at org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt.findClassifier(ScopeUtils.kt:74)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.resolveDescriptorForType(QualifiedExpressionResolver.kt:71)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveDescriptorForType(TypeResolver.kt:616)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolveTypeElement$1.visitUserType(TypeResolver.kt:162)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:905)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:21)
	at org.jetbrains.kotlin.psi.KtUserType.accept(KtUserType.java:42)
	at org.jetbrains.kotlin.psi.KtElementImplStub.accept(KtElementImplStub.java:58)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveTypeElement(TypeResolver.kt:160)
	at org.jetbrains.kotlin.resolve.TypeResolver.doResolvePossiblyBareType(TypeResolver.kt:117)
	at org.jetbrains.kotlin.resolve.TypeResolver.access$doResolvePossiblyBareType(TypeResolver.kt:52)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:91)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:90)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType.getDelegate(TypeResolver.kt:92)
	at org.jetbrains.kotlin.types.DelegatingType.isError(DelegatingType.java:61)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyTypeParameterDescriptor.resolveUpperBounds(LazyTypeParameterDescriptor.java:80)
	at org.jetbrains.kotlin.descriptors.impl.AbstractTypeParameterDescriptor$TypeParameterTypeConstructor.computeSupertypes(AbstractTypeParameterDescriptor.java:161)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor$supertypes$1.invoke(AbstractTypeConstructor.kt:35)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor$supertypes$1.invoke(AbstractTypeConstructor.kt:22)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.types.AbstractTypeConstructor.getSupertypes(AbstractTypeConstructor.kt:23)
	at org.jetbrains.kotlin.descriptors.impl.AbstractTypeParameterDescriptor.getUpperBounds(AbstractTypeParameterDescriptor.java:116)
	at org.jetbrains.kotlin.load.java.lazy.types.LazyJavaTypeResolverKt.getErasedUpperBound(LazyJavaTypeResolver.kt:428)
	at org.jetbrains.kotlin.load.java.lazy.types.LazyJavaTypeResolver$LazyJavaClassifierType.computeArguments(LazyJavaTypeResolver.kt:211)
	at org.jetbrains.kotlin.types.AbstractLazyType$arguments$1.invoke(AbstractLazyType.kt:32)
	at org.jetbrains.kotlin.types.AbstractLazyType$arguments$1.invoke(AbstractLazyType.kt:25)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.types.AbstractLazyType.getArguments(AbstractLazyType.kt:33)
	at org.jetbrains.kotlin.types.DelegatingType.getArguments(DelegatingType.java:39)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt$computeIndexedQualifiersForOverride$1$1.invoke(typeQualifiers.kt:104)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt$computeIndexedQualifiersForOverride$1.invoke(typeQualifiers.kt:114)
	at org.jetbrains.kotlin.load.java.typeEnhancement.TypeQualifiersKt.computeIndexedQualifiersForOverride(typeQualifiers.kt:119)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureParts.enhance(signatureEnhancement.kt:65)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureEnhancementKt.enhanceSignature(signatureEnhancement.kt:48)
	at org.jetbrains.kotlin.load.java.typeEnhancement.SignatureEnhancementKt.enhanceSignatures(signatureEnhancement.kt:25)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:91)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassMemberScope.getContributedFunctions(LazyJavaClassMemberScope.kt:669)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.computeDescriptors(LazyJavaScope.kt:313)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$allDescriptors$1.invoke(LazyJavaScope.kt:57)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$allDescriptors$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedDescriptors(LazyJavaScope.kt:292)
	at org.jetbrains.kotlin.resolve.DescriptorUtils.getAllDescriptors(DescriptorUtils.java:566)
	at org.jetbrains.kotlin.load.java.sam.SingleAbstractMethodUtils.getAbstractMembers(SingleAbstractMethodUtils.java:48)
	at org.jetbrains.kotlin.load.java.sam.SingleAbstractMethodUtils.getSingleAbstractMethodOrNull(SingleAbstractMethodUtils.java:104)
	at org.jetbrains.kotlin.load.java.sam.SamConversionResolverImpl.resolveFunctionTypeIfSamInterface(SamConversionResolverImpl.kt:48)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor$functionTypeForSamInterface$1.invoke(LazyJavaClassDescriptor.kt:116)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor$functionTypeForSamInterface$1.invoke(LazyJavaClassDescriptor.kt:48)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaClassDescriptor.getFunctionTypeForSamInterface(LazyJavaClassDescriptor.kt:129)
	at org.jetbrains.kotlin.load.java.sam.SamConversionResolverImpl.resolveSamConstructor(SamConversionResolverImpl.kt:33)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaPackageScope.computeNonDeclaredFunctions(LazyJavaPackageScope.kt:152)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:89)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope$functions$1.invoke(LazyJavaScope.kt:51)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaScope.getContributedFunctions(LazyJavaScope.kt:216)
	at org.jetbrains.kotlin.load.java.lazy.descriptors.JvmPackageScope.getContributedFunctions(JvmPackageScope.kt:65)
	at org.jetbrains.kotlin.resolve.scopes.ChainedMemberScope.getContributedFunctions(ChainedMemberScope.kt:39)
	at org.jetbrains.kotlin.resolve.scopes.AbstractScopeAdapter.getContributedFunctions(AbstractScopeAdapter.kt:37)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.collectCandidateDescriptors(QualifiedExpressionResolver.kt:203)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processSingleImport(QualifiedExpressionResolver.kt:178)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.processImportReference(QualifiedExpressionResolver.kt:154)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:88)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$importedScopesProvider$1.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.getImportScope(LazyImportScope.kt:165)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$1.invoke(LazyImportScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$selectSingleFromImports$2.invoke(LazyImportScope.kt:75)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager.compute(LockBasedStorageManager.java:211)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.selectSingleFromImports(LazyImportScope.kt:146)
	at org.jetbrains.kotlin.resolve.lazy.LazyImportScope.getContributedClassifier(LazyImportScope.kt:194)
	at org.jetbrains.kotlin.resolve.scopes.utils.ScopeUtilsKt.findClassifier(ScopeUtils.kt:74)
	at org.jetbrains.kotlin.resolve.QualifiedExpressionResolver.resolveDescriptorForType(QualifiedExpressionResolver.kt:71)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveDescriptorForType(TypeResolver.kt:616)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolveTypeElement$1.visitUserType(TypeResolver.kt:162)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:905)
	at org.jetbrains.kotlin.psi.KtVisitorVoid.visitUserType(KtVisitorVoid.java:21)
	at org.jetbrains.kotlin.psi.KtUserType.accept(KtUserType.java:42)
	at org.jetbrains.kotlin.psi.KtElementImplStub.accept(KtElementImplStub.java:58)
	at org.jetbrains.kotlin.resolve.TypeResolver.resolveTypeElement(TypeResolver.kt:160)
	at org.jetbrains.kotlin.resolve.TypeResolver.doResolvePossiblyBareType(TypeResolver.kt:117)
	at org.jetbrains.kotlin.resolve.TypeResolver.access$doResolvePossiblyBareType(TypeResolver.kt:52)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:91)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType$_delegate$1.invoke(TypeResolver.kt:90)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.TypeResolver$resolvePossiblyBareType$LazyKotlinType.getDelegate(TypeResolver.kt:92)
	at org.jetbrains.kotlin.types.DelegatingType.isError(DelegatingType.java:61)
	at org.jetbrains.kotlin.descriptors.impl.TypeParameterDescriptorImpl.doAddUpperBound(TypeParameterDescriptorImpl.java:128)
	at org.jetbrains.kotlin.descriptors.impl.TypeParameterDescriptorImpl.addUpperBound(TypeParameterDescriptorImpl.java:124)
	at org.jetbrains.kotlin.resolve.DescriptorResolver.resolveGenericBounds(DescriptorResolver.java:493)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.initializeFunctionDescriptorAndExplicitReturnType(FunctionDescriptorResolver.kt:147)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.resolveFunctionDescriptor(FunctionDescriptorResolver.kt:104)
	at org.jetbrains.kotlin.resolve.FunctionDescriptorResolver.resolveFunctionDescriptor(FunctionDescriptorResolver.kt:73)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.doGetFunctions(AbstractLazyMemberScope.kt:79)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.access$doGetFunctions(AbstractLazyMemberScope.kt:41)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope$functionDescriptors$1.invoke(AbstractLazyMemberScope.kt:51)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope$functionDescriptors$1.invoke(AbstractLazyMemberScope.kt:41)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:394)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:458)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.getContributedFunctions(AbstractLazyMemberScope.kt:70)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.getContributedFunctions(LazyClassMemberScope.kt:126)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.computeDescriptorsFromDeclaredElements(AbstractLazyMemberScope.kt:140)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope$descriptorsFromDeclaredElements$1.invoke(LazyClassMemberScope.kt:56)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope$descriptorsFromDeclaredElements$1.invoke(LazyClassMemberScope.kt:48)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedNotNullLazyValue.invoke(LockBasedStorageManager.java:362)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.getContributedDescriptors(LazyClassMemberScope.kt:64)
	at org.jetbrains.kotlin.resolve.DescriptorUtils.getAllDescriptors(DescriptorUtils.java:566)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor.resolveMemberHeaders(LazyClassDescriptor.java:559)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor.doForceResolveAllContents(LazyClassDescriptor.java:529)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor.access$200(LazyClassDescriptor.java:73)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor$8.invoke(LazyClassDescriptor.java:237)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor$8.invoke(LazyClassDescriptor.java:234)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:321)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor.forceResolveAllContents(LazyClassDescriptor.java:525)
	at org.jetbrains.kotlin.resolve.lazy.ForceResolveUtil.doForceResolveAllContents(ForceResolveUtil.java:71)
	at org.jetbrains.kotlin.resolve.lazy.ForceResolveUtil.forceResolveAllContents(ForceResolveUtil.java:37)
	at org.jetbrains.kotlin.idea.caches.resolve.IDELightClassGenerationSupport.getContextForNonLocalClassOrObject(IDELightClassGenerationSupport.kt:89)
	at org.jetbrains.kotlin.idea.caches.resolve.IDELightClassGenerationSupport.getContextForClassOrObject(IDELightClassGenerationSupport.kt:71)
	at org.jetbrains.kotlin.asJava.builder.LightClassDataProviderForClassOrObject.getContext(LightClassDataProvider.kt:176)
	at org.jetbrains.kotlin.asJava.builder.LightClassDataProvider.computeLightClassData(LightClassDataProvider.kt:81)
	at org.jetbrains.kotlin.asJava.builder.LightClassDataProvider.compute(LightClassDataProvider.kt:71)
	at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:49)
	at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:222)
	at com.intellij.psi.impl.PsiCachedValue.getValueWithLock(PsiCachedValue.java:65)
	at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:38)
	at org.jetbrains.kotlin.asJava.classes.KtLightClassForSourceDeclaration$Companion.getLightClassData(KtLightClassForSourceDeclaration.kt:387)
	at org.jetbrains.kotlin.asJava.classes.KtLightClassForSourceDeclaration.getLightClassData(KtLightClassForSourceDeclaration.kt:113)
	at org.jetbrains.kotlin.asJava.classes.KtLightClassForSourceDeclaration.getJavaFileStub(KtLightClassForSourceDeclaration.kt:106)
	at org.jetbrains.kotlin.asJava.classes.KtLightClassForSourceDeclaration.access$getJavaFileStub(KtLightClassForSourceDeclaration.kt:63)
	at org.jetbrains.kotlin.asJava.classes.KtLightClassForSourceDeclaration$clsDelegate$2.invoke(KtLightClassForSourceDeclaration.kt:84)
	at org.jetbrains.kotlin.asJava.classes.KtLightClassForSourceDeclaration$clsDelegate$2.invoke(KtLightClassForSourceDeclaration.kt:63)
	at kotlin.SafePublicationLazyImpl.getValue(Lazy.kt:189)
	at org.jetbrains.kotlin.asJava.classes.KtLightClassForSourceDeclaration.getClsDelegate(KtLightClassForSourceDeclaration.kt)
	at org.jetbrains.kotlin.asJava.classes.KtLightClassForSourceDeclaration.getClsDelegate(KtLightClassForSourceDeclaration.kt:63)
	at org.jetbrains.kotlin.asJava.classes.KtLightClassBase.getDelegate(KtLightClassBase.java:57)
	at org.jetbrains.kotlin.asJava.classes.KtLightClassBase.getOwnMethods(KtLightClassBase.java:136)
	at com.intellij.psi.impl.source.ClassInnerStuffCache.getAllMethods(ClassInnerStuffCache.java:173)
	at com.intellij.psi.impl.source.ClassInnerStuffCache.access$300(ClassInnerStuffCache.java:39)
	at com.intellij.psi.impl.source.ClassInnerStuffCache$3.compute(ClassInnerStuffCache.java:79)
	at com.intellij.psi.util.CachedValuesManager$1.compute(CachedValuesManager.java:137)
	at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:49)
	at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:222)
	at com.intellij.psi.impl.PsiCachedValue.getValueWithLock(PsiCachedValue.java:65)
	at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:38)
	at com.intellij.util.CachedValuesManagerImpl.getCachedValue(CachedValuesManagerImpl.java:84)
	at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:133)
	at com.intellij.psi.impl.source.ClassInnerStuffCache.getMethods(ClassInnerStuffCache.java:75)
	at com.intellij.psi.impl.source.ClassInnerStuffCache.getMethodsMap(ClassInnerStuffCache.java:202)
	at com.intellij.psi.impl.source.ClassInnerStuffCache.access$600(ClassInnerStuffCache.java:39)
	at com.intellij.psi.impl.source.ClassInnerStuffCache$6.compute(ClassInnerStuffCache.java:118)
	at com.intellij.psi.util.CachedValuesManager$1.compute(CachedValuesManager.java:137)
	at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:49)
	at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:222)
	at com.intellij.psi.impl.PsiCachedValue.getValueWithLock(PsiCachedValue.java:65)
	at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:38)
	at com.intellij.util.CachedValuesManagerImpl.getCachedValue(CachedValuesManagerImpl.java:84)
	at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:133)
	at com.intellij.psi.impl.source.ClassInnerStuffCache.findMethodsByName(ClassInnerStuffCache.java:114)
	at org.jetbrains.kotlin.asJava.classes.KtLightClassBase.findMethodsByName(KtLightClassBase.java:110)
	at com.intellij.execution.junit.JUnitUtil.findSuiteMethod(JUnitUtil.java:354)
	at com.intellij.execution.junit.JUnit3Framework.isTestClass(JUnit3Framework.java:82)
	at com.intellij.testIntegration.JavaTestFramework.isTestClass(JavaTestFramework.java:63)
	at com.intellij.codeInsight.TestFrameworks.computeFramework(TestFrameworks.java:71)
	at com.intellij.codeInsight.TestFrameworks.access$000(TestFrameworks.java:32)
	at com.intellij.codeInsight.TestFrameworks$1.compute(TestFrameworks.java:63)
	at com.intellij.psi.util.CachedValuesManager$1.compute(CachedValuesManager.java:137)
	at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:49)
	at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:222)
	at com.intellij.psi.impl.PsiCachedValue.getValueWithLock(PsiCachedValue.java:65)
	at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:38)
	at com.intellij.util.CachedValuesManagerImpl.getCachedValue(CachedValuesManagerImpl.java:84)
	at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:133)
	at com.intellij.codeInsight.TestFrameworks.detectFramework(TestFrameworks.java:59)
	at org.jetbrains.kotlin.idea.highlighter.KotlinTestRunLineMarkerContributor.getInfo(KotlinTestRunLineMarkerContributor.kt:66)
	at com.intellij.execution.lineMarker.RunLineMarkerProvider.getLineMarkerInfo(RunLineMarkerProvider.java:50)
	at com.intellij.codeInsight.daemon.impl.LineMarkersPass.a(LineMarkersPass.java:186)
	at com.intellij.codeInsight.daemon.impl.LineMarkersPass.a(LineMarkersPass.java:111)
	at com.intellij.codeInsight.daemon.impl.Divider.divideInsideAndOutsideInOneRoot(Divider.java:96)
	at com.intellij.codeInsight.daemon.impl.LineMarkersPass.doCollectInformation(LineMarkersPass.java:106)
	at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:70)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.c(PassExecutorService.java:433)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1061)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.b(PassExecutorService.java:426)
	at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:568)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:519)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.a(PassExecutorService.java:425)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:405)
	at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:155)
	at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
	at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
	at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
	at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)



About

Dummy project to reproduce issue KT-16086

https://youtrack.jetbrains.com/issue/KT-16086


Languages

Language:Kotlin 77.6%Language:Java 22.4%