serialization with variadic templates