@Contract(value = "null, _ -> null", pure = true)
  public static @Nullable <T extends PsiElement> T getPrevSiblingOfType(@Nullable PsiElement sibling, @NotNull Class<T> aClass) {
    if (sibling != null) {
      for (PsiElement prevSibling = sibling.getPrevSibling(); prevSibling != null; prevSibling = prevSibling.getPrevSibling()) {
        if (aClass.isInstance(prevSibling)) {
          return aClass.cast(prevSibling);
        }
      }
    }
    return null;
  }
@Contract(value = "null, _ -> null", pure = true)
  public static @Nullable <T extends PsiElement> T getPrevSiblingOfType(@Nullable PsiElement sibling, @NotNull Class<T> aClass)