don't do assign + compare, it's confusing