figure out why it doesn't work all the time