PsiJetFileStubImpl[package=test]
  PACKAGE_DIRECTIVE
    REFERENCE_EXPRESSION[referencedName=test]
  IMPORT_LIST
  CLASS[fqName=test.NestedClasses, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=NestedClasses, superNames=[]]
    MODIFIER_LIST[public final]
    TYPE_PARAMETER_LIST
      TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=TOuter]
    PRIMARY_CONSTRUCTOR
      MODIFIER_LIST[public]
      VALUE_PARAMETER_LIST
    CLASS_BODY
      PROPERTY[fqName=test.NestedClasses.c, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=false, isTopLevel=false, isVar=false, name=c]
        MODIFIER_LIST[public final]
        TYPE_REFERENCE
          USER_TYPE
            USER_TYPE
              REFERENCE_EXPRESSION[referencedName=kotlin]
            REFERENCE_EXPRESSION[referencedName=Int]
      FUN[fqName=test.NestedClasses.f, hasBlockBody=true, hasBody=true, hasTypeParameterListBeforeFunctionName=false, isExtension=false, isTopLevel=false, name=f]
        MODIFIER_LIST[public final]
        VALUE_PARAMETER_LIST
        TYPE_REFERENCE
          USER_TYPE
            USER_TYPE
              REFERENCE_EXPRESSION[referencedName=kotlin]
            REFERENCE_EXPRESSION[referencedName=Unit]
      CLASS[fqName=test.NestedClasses.Inner, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=Inner, superNames=[]]
        MODIFIER_LIST[inner public final]
        TYPE_PARAMETER_LIST
          TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=TI]
            TYPE_REFERENCE
              USER_TYPE
                REFERENCE_EXPRESSION[referencedName=TOuter]
        PRIMARY_CONSTRUCTOR
          MODIFIER_LIST[public]
          VALUE_PARAMETER_LIST
        CLASS_BODY
          FUN[fqName=test.NestedClasses.Inner.f, hasBlockBody=true, hasBody=true, hasTypeParameterListBeforeFunctionName=false, isExtension=false, isTopLevel=false, name=f]
            MODIFIER_LIST[public final]
            VALUE_PARAMETER_LIST
              VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=p1]
                TYPE_REFERENCE
                  USER_TYPE
                    REFERENCE_EXPRESSION[referencedName=TI]
            TYPE_REFERENCE
              USER_TYPE
                USER_TYPE
                  REFERENCE_EXPRESSION[referencedName=kotlin]
                REFERENCE_EXPRESSION[referencedName=Unit]
          CLASS[fqName=test.NestedClasses.Inner.II, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=II, superNames=[]]
            MODIFIER_LIST[inner private final]
            TYPE_PARAMETER_LIST
              TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=TII]
            PRIMARY_CONSTRUCTOR
              MODIFIER_LIST[public]
              VALUE_PARAMETER_LIST
            CLASS_BODY
              FUN[fqName=test.NestedClasses.Inner.II.f, hasBlockBody=true, hasBody=true, hasTypeParameterListBeforeFunctionName=false, isExtension=false, isTopLevel=false, name=f]
                MODIFIER_LIST[public final]
                VALUE_PARAMETER_LIST
                  VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=p1]
                    TYPE_REFERENCE
                      USER_TYPE
                        REFERENCE_EXPRESSION[referencedName=TII]
                  VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=p2]
                    TYPE_REFERENCE
                      USER_TYPE
                        USER_TYPE
                          USER_TYPE
                            USER_TYPE
                              REFERENCE_EXPRESSION[referencedName=test]
                            REFERENCE_EXPRESSION[referencedName=NestedClasses]
                            TYPE_ARGUMENT_LIST
                              TYPE_PROJECTION[projectionKind=NONE]
                                TYPE_REFERENCE
                                  USER_TYPE
                                    REFERENCE_EXPRESSION[referencedName=TOuter]
                          REFERENCE_EXPRESSION[referencedName=Inner]
                          TYPE_ARGUMENT_LIST
                            TYPE_PROJECTION[projectionKind=NONE]
                              TYPE_REFERENCE
                                USER_TYPE
                                  REFERENCE_EXPRESSION[referencedName=TI]
                        REFERENCE_EXPRESSION[referencedName=II]
                        TYPE_ARGUMENT_LIST
                          TYPE_PROJECTION[projectionKind=NONE]
                            TYPE_REFERENCE
                              USER_TYPE
                                USER_TYPE
                                  REFERENCE_EXPRESSION[referencedName=test]
                                REFERENCE_EXPRESSION[referencedName=NestedClasses]
                                TYPE_ARGUMENT_LIST
                                  TYPE_PROJECTION[projectionKind=NONE]
                                    TYPE_REFERENCE
                                      USER_TYPE
                                        REFERENCE_EXPRESSION[referencedName=TOuter]
                  VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=p3]
                    TYPE_REFERENCE
                      USER_TYPE
                        REFERENCE_EXPRESSION[referencedName=TOuter]
                TYPE_REFERENCE
                  USER_TYPE
                    USER_TYPE
                      REFERENCE_EXPRESSION[referencedName=kotlin]
                    REFERENCE_EXPRESSION[referencedName=Unit]
      CLASS[fqName=test.NestedClasses.Nested, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=Nested, superNames=[]]
        MODIFIER_LIST[private final]
        TYPE_PARAMETER_LIST
          TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=TN]
        PRIMARY_CONSTRUCTOR
          MODIFIER_LIST[public]
          VALUE_PARAMETER_LIST
        CLASS_BODY
          PROPERTY[fqName=test.NestedClasses.Nested.c, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=false, isTopLevel=false, isVar=false, name=c]
            MODIFIER_LIST[public final]
            TYPE_REFERENCE
              USER_TYPE
                USER_TYPE
                  REFERENCE_EXPRESSION[referencedName=kotlin]
                REFERENCE_EXPRESSION[referencedName=Int]
          FUN[fqName=test.NestedClasses.Nested.f, hasBlockBody=true, hasBody=true, hasTypeParameterListBeforeFunctionName=false, isExtension=false, isTopLevel=false, name=f]
            MODIFIER_LIST[public final]
            VALUE_PARAMETER_LIST
              VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=p1]
                TYPE_REFERENCE
                  USER_TYPE
                    REFERENCE_EXPRESSION[referencedName=TN]
            TYPE_REFERENCE
              USER_TYPE
                USER_TYPE
                  REFERENCE_EXPRESSION[referencedName=kotlin]
                REFERENCE_EXPRESSION[referencedName=Unit]
          CLASS[fqName=test.NestedClasses.Nested.NI, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=NI, superNames=[]]
            MODIFIER_LIST[inner public final]
            TYPE_PARAMETER_LIST
              TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=TNI]
                TYPE_REFERENCE
                  USER_TYPE
                    REFERENCE_EXPRESSION[referencedName=TN]
            PRIMARY_CONSTRUCTOR
              MODIFIER_LIST[public]
              VALUE_PARAMETER_LIST
            CLASS_BODY
              FUN[fqName=test.NestedClasses.Nested.NI.f, hasBlockBody=true, hasBody=true, hasTypeParameterListBeforeFunctionName=false, isExtension=false, isTopLevel=false, name=f]
                MODIFIER_LIST[public final]
                VALUE_PARAMETER_LIST
                  VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=p1]
                    TYPE_REFERENCE
                      USER_TYPE
                        REFERENCE_EXPRESSION[referencedName=TN]
                  VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=p2]
                    TYPE_REFERENCE
                      USER_TYPE
                        REFERENCE_EXPRESSION[referencedName=TNI]
                TYPE_REFERENCE
                  USER_TYPE
                    USER_TYPE
                      REFERENCE_EXPRESSION[referencedName=kotlin]
                    REFERENCE_EXPRESSION[referencedName=Unit]
          CLASS[fqName=test.NestedClasses.Nested.NN, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=NN, superNames=[]]
            MODIFIER_LIST[public final]
            TYPE_PARAMETER_LIST
              TYPE_PARAMETER[fqName=null, isInVariance=false, isOutVariance=false, name=TNN]
            PRIMARY_CONSTRUCTOR
              MODIFIER_LIST[public]
              VALUE_PARAMETER_LIST
            CLASS_BODY
              PROPERTY[fqName=test.NestedClasses.Nested.NN.c, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=false, isTopLevel=false, isVar=false, name=c]
                MODIFIER_LIST[public final]
                TYPE_REFERENCE
                  USER_TYPE
                    USER_TYPE
                      REFERENCE_EXPRESSION[referencedName=kotlin]
                    REFERENCE_EXPRESSION[referencedName=Int]
              FUN[fqName=test.NestedClasses.Nested.NN.f, hasBlockBody=true, hasBody=true, hasTypeParameterListBeforeFunctionName=false, isExtension=false, isTopLevel=false, name=f]
                MODIFIER_LIST[public final]
                VALUE_PARAMETER_LIST
                  VALUE_PARAMETER[fqName=null, hasDefaultValue=false, hasValOrVar=false, isMutable=false, name=p1]
                    TYPE_REFERENCE
                      USER_TYPE
                        REFERENCE_EXPRESSION[referencedName=TNN]
                TYPE_REFERENCE
                  USER_TYPE
                    USER_TYPE
                      REFERENCE_EXPRESSION[referencedName=kotlin]
                    REFERENCE_EXPRESSION[referencedName=Unit]
