added some refinements