mooooore rewriiiiite
fix shit