started to add receive functions