done except for weird position bug - data is still right with the bug though