move serialization to outer ring layer