self-marking required fields