added skeleton send and recv functions