From the documentation of get_lt():
Atomically get a key and value out of the map that is associated with the key that is lexicographically less than the provided key.
Do you mean that the key one gets with that method could be any key that is less than the provided key?
Or is it the lexicographically highest key less than the provided key?
Edit: I have another question: why do key and value require Clone. I suspect it is because of a conflict of holding a reference to something that might be updated concurrently. Right?