why is this not working? sometimes it works, sometimes it doesn't. what is going on?