You can provide a key function, like `tuple`