add `required`