cleaner logic