actually reading how this is supposed to work