refactor colorWithHexString