This might spoil the party, but why not splitting the reference in contractors and non-contractors and using two lookup stages. Split the details too and feed the unmatched contractors to the second lookup. You can even combine the matched details afterwards since no delay is introduced. Or am *I* missing something?
Christian
