avoided generalization and added LinkedListSerializer