add sleve saving
fix bugs