keyFromValues for composite keys