finish generalizing