ugh - this is tricky. I'm punting the problem to deal with later