def. clean!