much better, could still use some tweaking though