public KeyValuePair<RecordKey, RecordData> FindPrev(IComparable<RecordKey> keytest, bool equal_ok)
{
var nested_keytest = new RecordKeyComparator().appendKeyPart(this.subset_name).appendKeyPart(keytest);
var rec = next_stage.FindPrev(nested_keytest, equal_ok);
if (this.subset_name.CompareTo(rec.Key.key_parts[0]) != 0) {
throw new KeyNotFoundException("SubsetStage.FindPrev: no more records");
}
RecordKeyType_RecordKey orig_key = (RecordKeyType_RecordKey)rec.Key.key_parts[1];
// strip off the prefix
return new KeyValuePair<RecordKey, RecordData>(orig_key.GetRecordKey(), rec.Value);
}