Going to have to do this step by step to figure out what part doesn't work properly