changed some things i noticed, still needs rework