got a solution, but almost have a better one finished as well