valueMap refactor