cleaning and generalizing project