Before C++20, which added support for CTAD for aggregate types, we must also teach the compiler how to deduce the template arguments for Overload.
Declared in <absl/functional/overload.h>
template<typename... T>
Overload<T...>(T...) -> Overload<T...>;