mdofy some bug and improve the user experience