refactor with & operator