KtNamedClassOrObjectSymbol:
  annotationsList: []
  classIdIfNonLocal: A
  classKind: CLASS
  companionObject: null
  contextReceivers: []
  isData: false
  isExternal: false
  isFun: false
  isInline: false
  isInner: false
  modality: OPEN
  name: A
  origin: SOURCE
  superTypes: [
    KtUsualClassType:
      annotationsList: []
      ownTypeArguments: []
      type: kotlin/Any
  ]
  symbolKind: TOP_LEVEL
  typeParameters: []
  visibility: Public
  getContainingModule: KtSourceModule "Sources of main"
  annotationApplicableTargets: null
  deprecationStatus: null

KtTypeParameterSymbol:
  annotationsList: []
  isReified: false
  name: J
  origin: SOURCE
  typeParameters: []
  upperBounds: [
    KtUsualClassType:
      annotationsList: []
      ownTypeArguments: []
      type: A
  ]
  variance: INVARIANT
  getContainingModule: KtSourceModule "Sources of main"
  deprecationStatus: null

KtFunctionSymbol:
  annotationsList: []
  callableIdIfNonLocal: /foo
  contextReceivers: []
  contractEffects: []
  hasStableParameterNames: true
  isBuiltinFunctionInvoke: false
  isExtension: false
  isExternal: false
  isInfix: false
  isInline: false
  isOperator: false
  isOverride: false
  isStatic: false
  isSuspend: false
  modality: FINAL
  name: foo
  origin: SOURCE
  receiverParameter: null
  returnType: KtTypeParameterType:
    annotationsList: []
    type: J
  symbolKind: TOP_LEVEL
  typeParameters: [
    KtTypeParameterSymbol(J)
  ]
  valueParameters: [
    KtValueParameterSymbol:
      annotationsList: []
      callableIdIfNonLocal: null
      contextReceivers: []
      generatedPrimaryConstructorProperty: null
      hasDefaultValue: false
      isCrossinline: false
      isExtension: false
      isImplicitLambdaParameter: false
      isNoinline: false
      isVararg: false
      name: j
      origin: SOURCE
      receiverParameter: null
      returnType: KtTypeParameterType:
        annotationsList: []
        type: J
      symbolKind: LOCAL
      typeParameters: []
      getContainingModule: KtSourceModule "Sources of main"
      deprecationStatus: null
  ]
  visibility: Public
  getContainingModule: KtSourceModule "Sources of main"
  deprecationStatus: null

KtTypeParameterSymbol:
  annotationsList: []
  isReified: false
  name: T
  origin: SOURCE
  typeParameters: []
  upperBounds: []
  variance: INVARIANT
  getContainingModule: KtSourceModule "Sources of main"
  deprecationStatus: null

KtFunctionSymbol:
  annotationsList: []
  callableIdIfNonLocal: /foo
  contextReceivers: []
  contractEffects: []
  hasStableParameterNames: true
  isBuiltinFunctionInvoke: false
  isExtension: false
  isExternal: false
  isInfix: false
  isInline: false
  isOperator: false
  isOverride: false
  isStatic: false
  isSuspend: false
  modality: FINAL
  name: foo
  origin: SOURCE
  receiverParameter: null
  returnType: KtTypeParameterType:
    annotationsList: []
    type: T
  symbolKind: TOP_LEVEL
  typeParameters: [
    KtTypeParameterSymbol(T)
  ]
  valueParameters: [
    KtValueParameterSymbol:
      annotationsList: []
      callableIdIfNonLocal: null
      contextReceivers: []
      generatedPrimaryConstructorProperty: null
      hasDefaultValue: false
      isCrossinline: false
      isExtension: false
      isImplicitLambdaParameter: false
      isNoinline: false
      isVararg: false
      name: j
      origin: SOURCE
      receiverParameter: null
      returnType: KtTypeParameterType:
        annotationsList: []
        type: T
      symbolKind: LOCAL
      typeParameters: []
      getContainingModule: KtSourceModule "Sources of main"
      deprecationStatus: null
  ]
  visibility: Public
  getContainingModule: KtSourceModule "Sources of main"
  deprecationStatus: null