more client-side polish