make builder and reader fields private