cleaner inheritance