@ApiStatus.NonExtendable
  default @Nullable <T> T getData(@NotNull DataKey<T> key) {
    //noinspection unchecked
    return (T)getData(key.getName());
  }
@ApiStatus.NonExtendable
  default @Nullable <T> T getData(@NotNull DataKey<T> key)