make generalization sound
refactor FTV and Fresh