I appreciate the thoughts,  I'm going to try to do scenario 2 although it's definitely trickier and I didn't see a straightforward way.  I could sidestep the problem in ````AreOrderedBy```` by filtering out null values, but that just pushes the problem to later in the process instead of solving it.  I'll need to think more holistically about how to approach it.