template<class F, class. Args>
constexpr invoke_result_t<F, Args..> invoke(F&& f, Args&&. args)
noexcept(is_nothrow_invocable_v<F, Args..>);
template<class R, class F, class. Args>
constexpr R invoke_r(F&& f, Args&&. args)
noexcept(is_nothrow_invocable_r_v<R, F, Args..>);