It would definitely be more readable, but I don't think this code is excessively obscure to be worried about it. I also think you're overestimating the cost of allocation a little, since the common case is a `HashMap<u64, u64>`, and rehashing a bunch of elements during a clone could take a significant amount of time compared to 3 (in the future, 1) allocation(s).