@Contract(pure = true)
  @Override
  public @NotNull Symbol asSymbol(@NotNull PsiElement element) {
    // consider all PsiElements obtained from references (or other APIs) as Symbols,
    // because that's what usually was meant
    return new Psi2Symbol(element);
  }
@Contract(pure = true)
  @Override
  public @NotNull Symbol asSymbol(@NotNull PsiElement element)