updated the way data are sent and received