@Override
  public final @Nullable <T extends Annotation> T getAnnotation(Class<T> annotationClass) {
    return getAnnotation(0, annotationClass);
  }
@Override
  public final @Nullable <T extends Annotation> T getAnnotation(Class<T> annotationClass)