class Unchecked {

  public static <T, R> Function<T, R> function(CheckedFunction<T, R> function) {
    return (t) -> {
      try {
        return function.apply(t);
      } catch (Throwable ex) {
        throw propagate(ex);
      }
    };
  }

  private  Unchecked();

}