An efficient algorithm for informed embedding of dirty paper trellis codes for watermarking