data transmission methods