Make use of the current_assignemts field

Hmm, this bit of code is a duplicate of the above.  Could you centralize this into a function so we only have the logic in one location?