implement server-side mechanisms