user serialization reworked