start of serializer library