refactored the tightening up