despite being finished after release i tried to solve this as idependently as possible