@Override
    public <O> Try<O> map(FunctionThatThrows<T, O> fn) {
      return Try.apply(() -> fn.apply(get));
    }
If this is a success, then maps the value through {@code fn}, returning the new value in a {@link Success} if
successful, or {@link Failure} if the mapping function threw an exception.
planetiler-core/src/main/java/com/onthegomap/planetiler/util/Try.java