pre-coding decisions