refine object builder