had to redo some changes