skeleton for socket stuff