Did a lot of work lets hope this doesnt get deleted