static <V> TargetValue<V> create(@NotNull V localValue, @NotNull Promise<V> targetValue){
    return new PromiseBasedTargetValue<>(localValue, targetValue);
  }
static <V> TargetValue<V> create(@NotNull V localValue, @NotNull Promise<V> targetValue)