|  | 
| template<typename Tup , typename Fun > | 
| constexpr auto | operator() (Tup &&tup, Fun fun) noexcept(noexcept(decltype(CPP_AUTO_FUN_RETURNS_const,)(CPP_AUTO_FUN_RETURNS_const,))) -> decltype(CPP_AUTO_FUN_RETURNS_const,) | 
|  | 
| template<typename Tup0 , typename Tup1 , typename Fun > | 
| const constexpr auto | operator() (Tup0 &&tup0, Tup1 &&tup1, Fun fun) noexcept(noexcept(decltype(CPP_AUTO_FUN_RETURNS_const,)(CPP_AUTO_FUN_RETURNS_const,))) -> decltype(CPP_AUTO_FUN_RETURNS_const,) | 
|  |