Version control nerds: what is the best way to convert from Mercurial to Git in 2018?

Ideally I’d like to translate Mercurial named branches to Git branches, and stash the Mercurial changeset hash somewhere in metadata of every converted Git commit.