add ws and vws functions