added custom implementation for serializer