Added realtime client-side validation.