#pragma once template struct strip_signature; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template struct strip_signature { using type = Return(Args...); }; template using strip_signature_t = typename strip_signature::type;