This is somewhat problematic, I think.  Matt, did I make a mistake in my generic algorithm, or is there a way we can work around this (or, should we work around this?)