@NotNull
  @Contract(pure = true)
  public <T> T selectNotNull(@NotNull Couple<T> region) {
    return isLeft() ? region.first : region.second;
  }
@NotNull
  @Contract(pure = true)
  public <T> T selectNotNull(@NotNull Couple<T> region)