thinking through client or server side