@Override
  public PsiClassType @NotNull [] getReferencedTypes() {
    PsiClassType[] types = myCachedTypes;
    if (types == null) {
      int size = myRefs.size();
      types = size == 0 ? PsiClassType.EMPTY_ARRAY : new PsiClassType[size];
      for (int i = 0; i < size; i++) {
        types[i] = myFactory.createType(myRefs.get(i));
      }
      myCachedTypes = types;
    }

    return types;
  }
@Override
  public PsiClassType @NotNull [] getReferencedTypes()