anchor.diff:            else
               ValueTuple<_,_>(false, kvp)
           | _ -> ValueTuple<_,_>(false, kvp) // LookupDirection.EQ
  +    tupleResult
  +
  +  member this.TryFindUnchecked(key:'K, direction:Lookup, [<Out>] result: byref<KeyValuePair<'K, 'V>>) = 
  +    let tupleResult = this.TryFindTuple(key, direction)
  +    result <- tupleResult.Value2
  +    tupleResult.Value1
  +
  +  member this.TryFind(key:'K, direction:Lookup, [<Out>] result: byref<KeyValuePair<'K, 'V>>) = 
  +    let res() = this.TryFindTuple(key, direction)
       let tupleResult = readLockIf &this.nextVersion &this.version this.isSynchronized res
       result <- tupleResult.Value2
       tupleResult.Value1
  
positive.code:             | Lookup.GT | Lookup.GE ->
                let hash = existingHash key
                let subKey = key
                let hasPivot, pivot = this.TryFind(key, direction)
                if hasPivot then
                  if comparer.Compare(key, hash) = 0 && direction = Lookup.GE then
                    outerMap.RemoveMany(hash, Lookup.GE) // remove in one go
  
negative.code:     }
  
  
    member private this.TryFindTuple(key:'K, direction:Lookup) = 
      let tupleResult =
        let mutable kvp = Unchecked.defaultof<KeyValuePair<'K, 'V>>
          
        let hash = existingHash key
  