func add4Inside<F: Mappable>(_ fNum: F.Context<Int>) -> F.Context<Int> {
  F.map(fNum) { $0 + 4 }
}

func main() {
  let nums: [Int] = [1,2,3,4]
  let opt: Int? = 4
  let task: Task<Int, Error> = Task { 4 }
  let result: Result<Int, Error> = .success(10)

  add4Inside(nums) //> [5,6,7,8]
  add4Inside(opt) //> Optional(8)
  add4Inside(task) //> Task(8)
  add4Inside(result) //> Result.Success(14)
}