improve Efficiency