added a base serializer