custom serializer functions include serializer if one is available