message encodeing