this code should be working as far as I can tell and yet is is still breaking