There has to be a more elegant protocol for a situation like this, right?