there's a better way to do this, I think