export const orElse = <E, S>(
  fn: (error: E) => Task<E, S>,
  task: Task<E, S>,
): Task<E, S> =>
  new Task<E, S>((reject, resolve) =>