Backport Hash (at least to where it's used)