I spent almost 2 hours on this