correctly sending arbitrary data. thx eric