code: @Contract(pure = true)
  	@NotNull
  	public static <T> Promise<T> schedule(@NotNull Promise<T> promise, long timestamp) {
  		MaterializedPromise<T> materializedPromise = promise.materialize();
  		return Promise.ofCallback(cb ->
  				getCurrentEventloop().schedule(timestamp, () -> materializedPromise.whenComplete(cb)));
  	}
docs: Schedules completion of the {@code Promise} so that it will
  be completed after the timestamp even if its operations
  were completed earlier.