Final_version_improve_23