moved utils over to client side for code sharing